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

Стратегии

Поперечный реверс остаточной доходности с нормировкой на волатильность, равный риск в лонг/шорт (широкая корзина альткоинов, Binance USD-M, только OHLCV, ранжирование по z-показателю, ребалансировка каждые 2 дней)

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

CrossSectionalVolNormalizedResidualReversalLS

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

Стратегия должна была устранить доминирование активов с высокой волатильностью в сыром реверсе: ранжировать широкую корзину из 12 альткоинов Binance USD-M по остаточным z-показателям с нормировкой на волатильность и взвешивать плечи с равным риском. Чтобы обойти проблемы покрытия данных, погубившие предыдущие идеи, использовались только OHLCV. Механика сработала по плану: 3,062 частых и сбалансированных сделок, подлинная рыночная нейтральность, без артефактов редких сигналов или покрытия. Но преимущество оказалось явно отрицательным: итоговая доходность -95.2%, максимальная просадка 95.8%, коэффициент Шарпа -0.43, убытки во всех шести режимных годах и потери как в длинном, так и в коротком плече. На этапе проверки бэктеста аналитик отказался от стратегии как от механизма с инвертированным знаком и отрицательным преимуществом, которое не исправить настройкой ретроспективы. Он отметил, что дальше стоит изучить переход к краткосрочному поперечному моментуму и исправить неработающий предел валовой экспозиции 1.0x.

Гипотеза

MARKET-NEUTRAL поперечно-секционная стратегия SHORT-TERM REVERSAL на диверсифицированной корзине примерно из 12 ликвидных бессрочных контрактов Binance USD-M, защищённая от характерного сбоя простого разворота. Вместо ранжирования по простой прошлой доходности (когда один актив с высокой волатильностью механически оказывается вверху или внизу рейтинга и доминирует в портфеле) стратегия ранжирует по доходности VOL-NORMALIZED — прошлой доходности каждого актива, делённой на его собственную реализованную……Показать большеСвернуть

MARKET-NEUTRAL поперечно-секционная стратегия SHORT-TERM REVERSAL на диверсифицированной корзине примерно из 12 ликвидных бессрочных контрактов Binance USD-M, защищённая от характерного сбоя простого разворота. Вместо ранжирования по простой прошлой доходности (когда один актив с высокой волатильностью механически оказывается вверху или внизу рейтинга и доминирует в портфеле) стратегия ранжирует по доходности VOL-NORMALIZED — прошлой доходности каждого актива, делённой на его собственную реализованную волатильность (z-оценка / «остаток» для каждого актива), — и формирует позиции EQUAL-RISK (с обратным взвешиванием по волатильности), чтобы каждая позиция вносила одинаковый риск, а сигнал отражал подлинную относительную OVER-EXTENSION, а не сырую бету. Покупаются активы с самыми отрицательными z-оценками (перепроданные относительно собственной волатильности), продаются активы с самыми положительными z-оценками (перекупленные относительно собственной волатильности); долларовая экспозиция и бета нейтральны. CRITICAL DESIGN CHOICES основаны на накопленных неудачах этой сессии: (1) PURE OHLCV — используются вспомогательные данные NO, стратегия намеренно полностью обходит барьер ограниченного покрытия данных, который только что погубил стратегию всплеска OI (open_interest содержит в каталоге историю всего примерно за 30 дней), стратегию потока тейкеров (пробел длиной 3.5 лет) и угрожает каждой идее с фильтром по OI/потоку тейкеров; для OHLCV есть полные многолетние данные по каждому активу корзины, поэтому в окнах walk-forward-анализа OOS никогда не возникает нехватки данных. (2) NON-моментум, NON-пробой — направленный моментум и пробой признаны неработающими в текущем режиме на протяжении более 14 отказов; здесь используется REVERSAL — механизм для бокового рынка, который аналитик рекомендовал неоднократно. (3) Это не сделка на спреде между парами NOT RATIO — закрытое семейство стратегий на отношении MR между активами не работает, поскольку отношение 2 нестационарно; широкое поперечно-секционное ранжирование 12 разнородных активов — принципиально иная, диверсифицированная статистическая структура (нет единственного нестационарного спреда, способного привести к краху). (4) Это подлинное улучшение корзины разворота на основе сырой доходности: нормирование рейтинга по волатильности и равновзвешивание по риску документированно решают проблему доминирования активов с высокой волатильностью в простом развороте. (5) NOT между площадками/HL, NOT COIN-M, накопление просадки NOT, отдельный символ RSI NOT. Сигнал срабатывает каждые 2 дней по 12 активам → высокая плотность OOS, устойчивость к редким событиям. Стратегия намеренно проста: настраиваемых параметров 3 (zscore_lookback, vol_lookback, rebalance_days).

Итерация 2 устраняет синтетическую ошибку уровня -2: `_bar_ts` была `@staticmethod def _bar_ts(bar)`, но вызывается как `self._bar_ts(bar)`; при привязке прокси-метода верификатор передал функции с 1 аргументами 2 позиционных аргументов (TypeError во всех 6 сценариях). Преобразование в обычный метод экземпляра `def _bar_ts(self, bar)` согласует число аргументов с местом вызова. Это минимально возможное изменение: импорты, структура класса, логика сигнала и размер позиций не затрагивались, поэтому уже пройденные статические проверки уровня -1 и построение реверса с равным риском сохранены.

Принципиально отрицательное матожидание, а не проблема настройки — оптимизация его не исправит. Кросс-секционный сигнал разворота с нормировкой по волатильности убыточен в режимные годы ALL SIX (2021 -64.9%, 2022 -24.2%, 2023 -9.3%, 2024 -16.7%, 2025 -1.6%, 2026 -3.0%), total_return -95.2%, коэффициент Шарпа -0.43 (CI интервалов охватывают ноль или отрицательны: [-1.28, 0.24]), profit_factor 0.85, матожидание отрицательное, убыточны и длинные, и короткие позиции. Сигнал срабатывает часто и сбалансированно (3,062……Показать большеСвернуть

Принципиально отрицательное матожидание, а не проблема настройки — оптимизация его не исправит. Кросс-секционный сигнал разворота с нормировкой по волатильности убыточен в режимные годы ALL SIX (2021 -64.9%, 2022 -24.2%, 2023 -9.3%, 2024 -16.7%, 2025 -1.6%, 2026 -3.0%), total_return -95.2%, коэффициент Шарпа -0.43 (CI интервалов охватывают ноль или отрицательны: [-1.28, 0.24]), profit_factor 0.85, матожидание отрицательное, убыточны и длинные, и короткие позиции. Сигнал срабатывает часто и сбалансированно (3,062 сделок), так что дело именно в том, что знак разворота на горизонте 5 дней для этой корзины альткоинов здесь ADVERSE, а не в данных или редкости сигналов. Два из трёх настраиваемых параметров — окна ретроспективного анализа; их настройка не спасёт преимущество, отрицательное во всех режимах. Коэффициент Шарпа не зависит от масштаба, поэтому отдельная ошибка с экспозицией (exposure_pct 600% при gross_cap=1.0 и плече=1.0 — конструкция «жёсткий лимит валовой экспозиции 1.0x» на деле не сводит позиции и не ограничивает их) увеличивает только размер убытка, но не меняет знак. Оптимизация не стоит 2 часов. NOTE для руководителя исследований: механизм, похоже, работает наоборот — краткосрочный кросс-секционный MOMENTUM (покупка недавних относительных лидеров и продажа аутсайдеров) здесь может иметь положительный знак. Если развивать эту идею, также исправь сведение валовой экспозиции, чтобы лимит 1.0x действительно срабатывал.

Реализация

Рыночно-нейтральный поперечный краткосрочный реверс по широкой корзине ликвидных бессрочных контрактов Binance USD-M из 12 активов, только OHLCV. Активы ранжируются по остаточному z-показателю, нормированному на волатильность (доходность за предыдущий период / собственная реализованная волатильность): в лонг идут активы с наиболее отрицательным z-показателем (перепроданные), в шорт — с наиболее положительным (перекупленные). Каждое плечо взвешено по равному риску (обратно пропорционально волатильности), бюджеты валовой экспозиции лонга и шорта равны, установлен предел валовой экспозиции 1.0x. Перебалансировка каждые 2 дней.

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

Проверка не пройдена (уровень 2 — синтетические сценарии): Использованы параметры: ['assets', 'gross_cap', 'vol_floor', 'resize_frac', 'min_notional', 'num_per_side', 'vol_lookback', 'qty_precision', 'rebalance_days', 'zscore_lookback', 'default_qty_precision'] Проверьте, что __init__ задаёт все атрибуты из self.parameters.get(). - steady_uptrend: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000) -……Показать большеСвернуть

Проверка не пройдена (уровень 2 — синтетические сценарии): Использованы параметры: ['assets', 'gross_cap', 'vol_floor', 'resize_frac', 'min_notional', 'num_per_side', 'vol_lookback', 'qty_precision', 'rebalance_days', 'zscore_lookback', 'default_qty_precision'] Проверьте, что __init__ задаёт все атрибуты из self.parameters.get(). - steady_uptrend: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000) - steady_downtrend: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000) - flat_ranging: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000) - volatility_spike: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000) - zero_volume: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000) - price_gap: TypeError: CrossSectionalVolNormalizedResidualReversalLS._bar_ts() принимает 1 позиционных аргумента, но передано 2 (временная метка бара: 1735690860000)

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

Шарп
-0,43
Общая доходность
-95,16%
Максимальная просадка
95,81%
Всего сделок
3062
Доля прибыльных
53,8%
Профит-фактор
0,85

Сигнал работает и срабатывает часто: 3,062 сделок, сбалансированные 1,604 лонг / 1,458 шорт, рыночно-нейтральный (бета 0.002, benchmark_corr 0.004) — как и задумано, нет проблем с покрытием данных или редкими событиями

Конструкция только на OHLCV обеспечивает полное покрытие за несколько лет (2020-09—2026-06)

Катастрофические и стабильные убытки: total_return -95.2%, max_drawdown 95.8%, убыток в EVERY режимном году (2021 -64.9% ... 2026 -3.0%)

Механизм с отрицательным преимуществом, а не проблема настройки: коэффициент Шарпа -0.43 (CI [-1.28, 0.24]), коэффициент Сортино -0.47, profit_factor 0.85, отрицательное математическое ожидание, avg_win $284 < avg_loss $388 — знак поперечного реверса на коротком горизонте неблагоприятен для этой корзины альткоинов

Оба плеча убыточны, несмотря на долю выигрышных сделок выше 0.5 (прибыльные сделки систематически меньше убыточных)

Взрыв экспозиции: exposure_pct 600% против gross_cap=1.0 / плечо=1.0 — конструкция с «жёстким ограничением валовой экспозиции на 1.0x» на деле ничего не ограничивает; но коэффициент Шарпа не зависит от масштаба, поэтому это лишь увеличивает величину потерь, а не создаёт отрицательное преимущество

Экстремальные хвосты распределения (эксцесс 444, асимметрия 10, один день +64% 2021-01-29) подтверждают, что нейтральная конструкция не контролирует риск

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

На горизонте 5 дней в этой корзине альткоинов знак поперечного реверса инвертирован: у краткосрочного поперечного моментума (покупать недавних относительных лидеров, продавать отстающих) может быть положительное преимущество. Ошибку неттинга экспозиции (600% экспозиция при номинальном пределе валовой экспозиции 1.0x) следует исправить, чтобы ограничение действительно действовало.

На этапе проверки бэктеста до оптимизации аналитик вынес вердикт «отказаться»: знак реверса фундаментально неблагоприятен (отрицательный во все шесть режимных лет, оба плеча убыточны), и дело не в настройке параметров. Поэтому стратегия не дошла до оптимизации, углублённого анализа или оценки риска.

Рыночно-нейтральная поперечная стратегия краткосрочного реверса, ранжирующая около 12 разнородных бессрочных альткоинов Binance USD-M по остаточному z-показателю, нормированному на волатильность (доходность за предыдущий период, делённая на собственную реализованную волатильность): покупает наиболее перепроданные активы и продаёт наиболее перекупленные с равным риском, взвешивая позиции обратно пропорционально волатильности, используя только OHLCV, чтобы избежать ограничений покрытия данных.

За период с 2020-09 по 2026-06 сигнал срабатывал часто и сбалансированно (3,062 сделок: 1,604 лонг / 1,458 шорт) и действительно был рыночно-нейтральным (бета 0.002, корреляция с бенчмарком 0.004), однако показал total_return -95.2%, max_drawdown 95.8%, коэффициент Шарпа -0.43 (CI [-1.28, 0.24]), фактор прибыли 0.85 и отрицательное математическое ожидание (-$26 на сделку). Прибыльные сделки ($284) систематически меньше убыточных ($388); убытки наблюдались в каждом режимном году.

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