Перейти к содержимому
Все стратегии

Стратегии

Дневная кросс-секционная аномалия низкой волатильности: длинная позиция по -2 активам с самой низкой волатильностью и короткая позиция по -2 активам с самой высокой волатильностью среди 6 крупнейших бессрочных контрактов Binance

Итог: Отменено

BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily

Сводка по итогам

Это была третья стратегия в серии поперечных стратегий: аномалия низкой волатильности / Betting-Against-Beta, реализованная как доллар-нейтральный портфель с длинными позициями по -2 активам с самой низкой и короткими по -2 активам с самой высокой волатильностью из 6 крупнейших активов Binance. Предполагалось, что она не будет коррелировать с предыдущими стратегиями, ранжированными по доходности и ставкам финансирования. После трёх итераций по устранению проблем верификации (в частности, проблема прокси слоя -2,……Показать большеСвернуть

Это была третья стратегия в серии поперечных стратегий: аномалия низкой волатильности / Betting-Against-Beta, реализованная как доллар-нейтральный портфель с длинными позициями по -2 активам с самой низкой и короткими по -2 активам с самой высокой волатильностью из 6 крупнейших активов Binance. Предполагалось, что она не будет коррелировать с предыдущими стратегиями, ранжированными по доходности и ставкам финансирования. После трёх итераций по устранению проблем верификации (в частности, проблема прокси слоя -2, исправленная переносом помощника расчёта волатильности на уровень модуля) стратегия дала работающий и действительно рыночно-нейтральный бэктест, но потеряла 78.7% при просадке 95.97%: длинная позиция по активам с низкой волатильностью и короткая по активам с высокой фактически означают ставку на короткую бету и короткий моментум, которая приносит прибыль только в медвежьих режимах. Аналитик отказался от неё при проверке бэктеста, сочтя провал структурным, а не поддающимся настройке: три параметра меняют масштаб и частоту сделок, но не могут изменить отрицательный знак фактора на растущем цикле; скачки +94%/-65% в конце выборки объяснялись лишь арифметикой процентов на сократившемся счёте. Стратегия не дошла до оптимизации, решения аналитика после оптимизации, проверки риска, бумажной торговли или реальной торговли.

Гипотеза

Доллар-нейтральная кросс-секционная стратегия на аномалии для фиксированного набора из 6 основных бессрочных контрактов Binance USD-M (BTC, ETH, SOL, BNB, AVAX, LINK — чистота данных подтверждена для всех). Она использует наиболее изученную в финансах кросс-секционную аномалию риска: LOW-VOLATILITY ANOMALY. Каждые 24 часов стратегия ранжирует 6 активы по реализованной волатильности за последние 30 дней, открывает длинные позиции по LONG 2 активам с LOWEST волатильностью и короткие по SHORT 2 активам с HIGHEST……Показать большеСвернуть

Доллар-нейтральная кросс-секционная стратегия на аномалии для фиксированного набора из 6 основных бессрочных контрактов Binance USD-M (BTC, ETH, SOL, BNB, AVAX, LINK — чистота данных подтверждена для всех). Она использует наиболее изученную в финансах кросс-секционную аномалию риска: LOW-VOLATILITY ANOMALY. Каждые 24 часов стратегия ранжирует 6 активы по реализованной волатильности за последние 30 дней, открывает длинные позиции по LONG 2 активам с LOWEST волатильностью и короткие по SHORT 2 активам с HIGHEST волатильностью; доли в каждом плече равны, экспозиция доллар-нейтральная. Удерживает позиции 24 часов, затем ранжирует активы заново. Средние 2 активов исключаются. Это третья стратегия в серии кросс-секционных исследований (после CrossSectionalMeanReversion3Major с использованием финансирования HL и DailyCrossSectional7DReturnReversal на основе доходности Binance) — тот же набор основных активов, ось сигнала COMPLETELY DIFFERENT. Ранжирование по волатильности структурно ортогонально ранжированию по доходности и финансированию, поэтому стратегия будет открывать позиции UNCORRELATED с предыдущими двумя кросс-секционными стратегиями, обеспечивая реальную диверсификацию портфеля, а не дублирование механизма. Аномалия низкой волатильности описана в работах Black (1972), Frazzini-Pedersen (2014) «Betting Against Beta», Baker-Bradley-Wurgler (2011) «Benchmarks as Limits to Arbitrage» и посвящённой криптовалютам работе Liu-Tsyvinski-Wu (2022) «Common Risk Factors in Cryptocurrency». Механизм: криптоактивы с высокой волатильностью привлекают спекулятивный поток «лотерейных билетов», который систематически уступает их реализованной волатильности (розничный FOMO и периодические каскады ликвидаций); активы с низкой волатильностью привлекают институциональный капитал и капитал с долгим горизонтом, который обеспечивает структурную поддержку спроса и стабильную доходность с поправкой на риск. Стратегия напрямую отвечает неоднократной рекомендации аналитика: «отдавать приоритет кросс-секционным механизмам в текущем режиме». Она закрывает FIVE недостаточно представленных категорий: направление лонг-шорт (14.0% → к 45%), охват нескольких инструментов (7.2% → расширить), кросс-секционный класс (подтверждённый эффективный механизм), диверсификация портфеля относительно направленных стратегий и использование только BINANCE-USD-M (чистые данные). Размер позиции: 12% капитала на плечо × 2 + 12% × 2 = 48% валовой экспозиции, доллар-нейтрально. Риск на сделку: около 1%, исходя из волатильности разброса дневной волатильности.

ITER-3 устраняет первопричину ошибки слоя -2 («_vol_from_closes() принимает 2 позиционных аргументов, но передано 3»): _StrategyProxy слоя -2 повторно привязывает каждую вызываемую функцию INSTANCE через types.MethodType и добавляет `self`, что меняет число аргументов помощника. Перенос `_vol_from_closes` в функцию уровня MODULE-LEVEL выводит её из атрибутов экземпляра, поэтому прокси больше её не привязывает, и `self` не добавляется — вызов одинаков и в настоящем движке, и в прокси. Это минимально возможное……Показать большеСвернуть

ITER-3 устраняет первопричину ошибки слоя -2 («_vol_from_closes() принимает 2 позиционных аргументов, но передано 3»): _StrategyProxy слоя -2 повторно привязывает каждую вызываемую функцию INSTANCE через types.MethodType и добавляет `self`, что меняет число аргументов помощника. Перенос `_vol_from_closes` в функцию уровня MODULE-LEVEL выводит её из атрибутов экземпляра, поэтому прокси больше её не привязывает, и `self` не добавляется — вызов одинаков и в настоящем движке, и в прокси. Это минимально возможное изменение: изменились только расположение помощника и два места его вызова (_compute_realized_vol, _latest_vol_and_price); вся логика сигналов, цикл событий для нескольких инструментов и ранжирование при ребалансировании сохранены побайтно. Локальная проверка: статическая проверка слоя -1 пройдена без ошибок; все 6 синтетических сценария слоя -2 выполнены через настоящий _StrategyProxy без исключений, с получением 469/469 уникальных, конечных сигналов, меняющихся от бара к бару (без застывших сигналов и NaN/inf). Стратегия реализует хорошо задокументированную поперечную аномалию низкой волатильности / Betting-Against-Beta и ортогональна предыдущим поперечным стратегиям, ранжированным по доходности и ставкам финансирования, что обеспечивает реальную диверсификацию портфеля.

Преимущества нет, настроить стратегию нельзя, поэтому оптимизация была бы пустой тратой времени. Аномалия низкой волатильности криптовалют, реализованная как длинная позиция по активам с низкой волатильностью и короткая по активам с высокой на 6 крупнейших активах, по сути является ставкой на короткую бету и короткий моментум: прибыль она приносит только в медвежьих режимах (2022 годовой +128%), а в бычьих несёт катастрофические убытки (2021 -80%, 2024 -78%). Итог: total_return -78.7%, max_drawdown 95.97%,……Показать большеСвернуть

Преимущества нет, настроить стратегию нельзя, поэтому оптимизация была бы пустой тратой времени. Аномалия низкой волатильности криптовалют, реализованная как длинная позиция по активам с низкой волатильностью и короткая по активам с высокой на 6 крупнейших активах, по сути является ставкой на короткую бету и короткий моментум: прибыль она приносит только в медвежьих режимах (2022 годовой +128%), а в бычьих несёт катастрофические убытки (2021 -80%, 2024 -78%). Итог: total_return -78.7%, max_drawdown 95.97%, profit_factor 0.577, отрицательные коэффициенты Шарпа/Сортино, математическое ожидание и информационный коэффициент за весь период. 3 настраиваемых параметра (vol_lookback_days, rebalance_days, leg_capital_pct) меняют масштаб и частоту сделок, но не могут изменить отрицательный знак фактора. Скользящий анализ вне выборки не спасёт стратегию: он лишь подгонит её под медвежье окно 2022, после чего она провалится на новых данных. Неправдоподобные дневные скачки в конце выборки (+94%, -65%, эксцесс 304) — это результат арифметики процентной доходности счёта, сокращённого в 96% раз, а не исправимая ошибка расчёта размера позиции; это не задача для разработчика в духе «повторить итерацию». FAILURE PATTERN: доллар-нейтральная аномалия низкой волатильности криптовалют (длинная позиция по активам из нижней -2 группы / короткая по активам из верхней -2 группы по реализованной волатильности) — замаскированная ставка на короткую позицию по активам с высокой волатильностью и короткий моментум; её знак отрицателен на растущем цикле крипторынка. Прибыльность только в медвежьем режиме не сохраняется на полном периоде и недостижима настройкой параметров.

Реализация

Доллар-нейтральная кросс-секционная аномалия низкой волатильности на 6 бессрочных контрактах Binance USD-M (BTC, ETH, SOL, BNB, AVAX, LINK), дневные бары. Каждые rebalance_days (по умолчанию 1) ранжирует 6 активы по реализованной волатильности в годовом исчислении за последние 30 дней, открывает длинные позиции по LONG 2 активам с наименьшей волатильностью и короткие по SHORT 2 активам с наибольшей волатильностью (равные доли, средние 2 исключены). Номинал каждого плеча — 12% капитала, то есть около 48% валовой и около 0% чистой экспозиции. Только OHLCV, без дополнительных данных. Сделки направляются через _rebalance() в on_bar/on_extra_bar; calculate_signal возвращает непрерывное диагностическое значение на основе цен закрытия.

Результаты верификации

Проверка не пройдена (слой 2 — синтетические сценарии): Использованные параметры: ['min_notional', 'rebalance_days', 'leg_capital_pct', 'vol_lookback_days'] Проверь, что __init__ задаёт все атрибуты через self.parameters.get(). - steady_uptrend: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000) - steady_downtrend: TypeError:……Показать большеСвернуть

Проверка не пройдена (слой 2 — синтетические сценарии): Использованные параметры: ['min_notional', 'rebalance_days', 'leg_capital_pct', 'vol_lookback_days'] Проверь, что __init__ задаёт все атрибуты через self.parameters.get(). - steady_uptrend: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000) - steady_downtrend: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000) - flat_ranging: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000) - volatility_spike: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000) - zero_volume: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000) - price_gap: TypeError: BinanceCrossSectionalLowVolAnomalyLong2Short2SixMajorsDaily._vol_from_closes() принимает 2 позиционных аргументов, но передано 3 (время бара: 1735693260000)

Обзор бэктеста

Шарп
-0,12
Общая доходность
-78,69%
Максимальная просадка
95,97%
Всего сделок
306
Доля прибыльных
52,9%
Профит-фактор
0,58

Стратегия механически работает: 306 сделок за 2082 дней, исполнение доллар-нейтральных длинных и коротких позиций, чистый набор из 6 крупнейших активов Binance, только OHLCV (нет уязвимости из-за дополнительных данных)

Действительно низкая корреляция с бенчмарком (-0.06, бета -0.09) подтверждает, что стратегия, как и задумано, ортогональна направленным стратегиям

Катастрофический чистый результат: total_return -78.7%, max_drawdown 95.97%, profit_factor 0.577, отрицательный коэффициент Шарпа/Сортино (-0.12), отрицательное математическое ожидание (-299/сделку), IR -0.34

Структурная проблема знака: длинная позиция по активам с низкой волатильностью и короткая по активам с высокой на крупнейших криптоактивах — ставка на короткую бету и короткий моментум. Стратегия выигрывает только в медвежьих режимах (2022 +128%) и сильно теряет в бычьих (2021 -80%, 2024 -78%); за весь растущий цикл результат отрицательный.

Провал нельзя исправить настройкой: 3 параметра (vol_lookback, rebalance_days, leg_capital_pct) не могут изменить направление аномалии, поэтому оптимизация лишь подогнала бы модель под медвежье окно 2022

Экстремальная дневная доходность (+94%, -65%) и эксцесс 304 — следствие почти нулевого счёта после просадки 96%, а не восстанавливаемое преимущество

Анализ

Пока не оптимизируй NOT — портфель не поддерживает доллар-нейтральность, заданную гипотезой (48% валовой экспозиции, около 1% риска на сделку). Данные: exposure_pct=400% (8x целевого значения 48%), дневная доходность достигает +94.3%/-65.3%/-61.6%, а return_kurtosis=304. (1) Проверь, что при каждом ребалансировании четыре сегмента в сумме дают примерно доллар-нейтральную позицию, а валовая экспозиция держится около 48%: записывай фактические валовые/чистые номиналы на каждом баре и проверяй их. (2) Отложенная……Показать большеСвернуть

Пока не оптимизируй NOT — портфель не поддерживает доллар-нейтральность, заданную гипотезой (48% валовой экспозиции, около 1% риска на сделку). Данные: exposure_pct=400% (8x целевого значения 48%), дневная доходность достигает +94.3%/-65.3%/-61.6%, а return_kurtosis=304. (1) Проверь, что при каждом ребалансировании четыре сегмента в сумме дают примерно доллар-нейтральную позицию, а валовая экспозиция держится около 48%: записывай фактические валовые/чистые номиналы на каждом баре и проверяй их. (2) Отложенная логика смены стороны («смена завершается при следующем ребалансировании» и проверки «пропустить текущую короткую/длинную позицию») может оставить актив без хеджирования или старую позицию открытой на дополнительные бары. Убедись, что нежелательные позиции действительно закрываются AND исполнением до/при том же ребалансировании, а исполнения _submit_exit_position учтены до расчёта размеров новых сегментов. (3) avg_holding_period 27d против rebalance_days=1 означает, что позиции не ротируются; проверь, что выходы исполняются при каждом ребалансировании, а не только когда актив покидает нижнюю-2/верхнюю-2 группу. (4) Огромный эксцесс и скачки за один день указывают, что точность количества по инструменту или расчёт номинала могут быть неверно масштабированы для одного сегмента (например, SOL/AVAX/LINK). Проверь, что номинал каждого сегмента примерно равен leg_capital_pct*капиталу. Запусти повторно и подтверди, что чистая экспозиция около 0, а дневные скачки не превышают примерно 15%, прежде чем отправлять снова. Примечание: если подтверждена нейтральность портфеля, но он всё равно сильно теряет, вероятная реальная проблема — сама предпосылка (короткая позиция по самой волатильной криптовалюте означает короткую позицию по активам с самой высокой бетой, которые лидируют на бычьем рынке); передай её на revise_hypothesis.

Сводка по итогам

Даже хорошо задокументированный фактор, такой как аномалия низкой волатильности, может давать отрицательный результат при реализации «длинная позиция по активам с низкой волатильностью / короткая — с высокой» на постоянно растущем рынке криптовалют. Прибыльность только в медвежьем режиме зависит от режима рынка и не является настраиваемым преимуществом: никакой параметр не может изменить направленный знак фактора.

Проверка бэктеста вернула решение «отказаться» до любой оптимизации: длинная позиция по активам с низкой волатильностью и короткая по активам с высокой на крупнейших криптоактивах — замаскированная ставка на короткую бету и короткий моментум с отрицательным знаком на протяжении всего растущего цикла. 3 параметров не могут изменить этот знак, поэтому скользящий анализ вне выборки лишь подогнал бы модель под медвежье окно 2022.

Нейтральная к доллару стратегия поперечной аномалии низкой волатильности (Betting-Against-Beta) на 6 крупных бессрочных контрактах Binance USD-M (BTC, ETH, SOL, BNB, AVAX, LINK): активы ежедневно ранжируются по реализованной волатильности за последние 30 дней; открывается длинная позиция по 2 активам с наименьшей волатильностью и короткая — по 2 активам с наибольшей, с равными весами и валовой экспозицией около 48%.

За 306 сделок примерно за 2,082 дней стратегия работала механически и действительно была ортогональна направленным стратегиям (бета -0.09, корреляция с бенчмарком -0.06), но чистый результат был катастрофическим: общая доходность -78.7%, максимальная просадка 95.97%, фактор прибыли 0.577, отрицательные коэффициенты Шарпа/Сортино (-0.12), отрицательное математическое ожидание (-299/сделку) и IR -0.34. Преимущество проявлялось только в медвежьем режиме 2022 (+128%), тогда как в бычьих режимах стратегия несла убытки (2021 -80%, 2024 -78%).

Stratmill — это инструмент для исследований и бумажной торговли, а не финансовая консультация или брокер. Результаты бэктестов и бумажной торговли являются гипотетическими. Торговля сопряжена с риском убытков.