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

Стратегии

Бэктест стратегии на среднекапитализированных бессрочных контрактах Binance USD-M BASKET: импульс временного ряда, лонг-шорт, дневные бары — ONE; общий набор параметров для 8 альткоинов, которыми ранее не торговали (широкий охват вместо выбора лучшего инструмента из N; знак доходности за 56 дней, размер позиции с поправкой на обратную волатильность, стоп по максимуму за ATR баров, 3 параметров) | Stratmill

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

MidCapPerpBasketTsMomChandelierLS

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

MidCapPerpBasketTsMomChandelierLS решала постоянную проблему фабрики стратегий с переобучением при выборе лучшего из N: одно и то же правило импульса применялось к восьми ранее не торговавшимся бессрочным контрактам на альткоины со средней капитализацией. Она действительно обеспечила обещанную выборку: 605 сделок за шесть лет, а доходность на сделку в десять раз превышала минимальный уровень комиссий. Но совокупный коэффициент Шарпа 0.356 имел доверительный интервал, пересекающий ноль, фактор прибыли составлял……Показать большеСвернуть

MidCapPerpBasketTsMomChandelierLS решала постоянную проблему фабрики стратегий с переобучением при выборе лучшего из N: одно и то же правило импульса применялось к восьми ранее не торговавшимся бессрочным контрактам на альткоины со средней капитализацией. Она действительно обеспечила обещанную выборку: 605 сделок за шесть лет, а доходность на сделку в десять раз превышала минимальный уровень комиссий. Но совокупный коэффициент Шарпа 0.356 имел доверительный интервал, пересекающий ноль, фактор прибыли составлял 1.06 при издержках от воздействия на рынок в размере 12% валовой суммы, а просадка достигла 63.9% при 746 днях под водой. Разложение показало, что результат обеспечил один инструмент: его исключение (INJ) переводило реализованную прибыль и убыток в отрицательную область. Вся прибыль пришлась на стрессовый терциль волатильности, то есть результат отражал направленную бету к кризисным трендам в альткоинах, а не общее преимущество TSMOM. Аналитик отказался от стратегии при проверке бэктеста до оптимизации; она не попала к оптимизатору, специалисту по рискам или на этап бумажной торговли.

Гипотеза

Корзина LONG-SHORT MULTI-INSTRUMENT с моментумом временного ряда по дневным барам (TSMOM) BASKET на восьми бессрочных контрактах Binance USD-M, которыми эта фабрика ещё не торговала: RUNE, NEAR, FIL, AAVE, AVAX, GALA, DYDX, INJ (наличие всех подтверждено в каталоге как *.BINANCE-1-DAY-LAST-EXTERNAL; история — 4-6 лет). Сохраняется механизм ONE, который здесь выдержал проверку: направленный дневной моментум, лонг-шорт, Binance USD-M, выход по трейлингу через ATR баров. Меняется то, что раз за разом губит эту……Показать большеСвернуть

Корзина LONG-SHORT MULTI-INSTRUMENT с моментумом временного ряда по дневным барам (TSMOM) BASKET на восьми бессрочных контрактах Binance USD-M, которыми эта фабрика ещё не торговала: RUNE, NEAR, FIL, AAVE, AVAX, GALA, DYDX, INJ (наличие всех подтверждено в каталоге как *.BINANCE-1-DAY-LAST-EXTERNAL; история — 4-6 лет). Сохраняется механизм ONE, который здесь выдержал проверку: направленный дневной моментум, лонг-шорт, Binance USD-M, выход по трейлингу через ATR баров. Меняется то, что раз за разом губит эту фабрику: SINGLE-NAME SELECTION. Смерти от «переобучения» в 393 выглядят почти одинаково: DSR 0.0, PBO > 0.5, контрольные выборки по 3-9 сделок, «артефакт лучшего из N». Это проблема размера выборки и отбора, а не механизма. Для каждой ноги действует правило IDENTICAL с IDENTICAL значениями параметров: одна тройка (период анализа, стоп, риск) должна одновременно работать на восьми независимых рядах; число сделок возрастает примерно в 8x раз (около 320 закрытых сделок, около 60-70 в контрольной выборке). Это не ранжирование, не парная, не доллар-нейтральная и не хеджированная конструкция (L95/L96): каждой ногой торгуют напрямую, открывая длинные или короткие позиции.

Точно реализует гипотезу: общий для ONE набор из 3 параметров (mom_lookback=56, atr_mult=4.0, gross_exposure=1.0) одновременно применяется к восьми среднекапитализированным бессрочным контрактам USD-M, которыми раньше не торговали; значит, преимущество должно сохраняться на восьми независимых рядах, а не отбираться на одном — именно эта проблема отбора и размера выборки лежит в основе гибели переобученных стратегий этой фабрики. Широкий охват также увеличивает число сделок примерно в 8x раз (ориентир гипотезы —……Показать большеСвернуть

Точно реализует гипотезу: общий для ONE набор из 3 параметров (mom_lookback=56, atr_mult=4.0, gross_exposure=1.0) одновременно применяется к восьми среднекапитализированным бессрочным контрактам USD-M, которыми раньше не торговали; значит, преимущество должно сохраняться на восьми независимых рядах, а не отбираться на одном — именно эта проблема отбора и размера выборки лежит в основе гибели переобученных стратегий этой фабрики. Широкий охват также увеличивает число сделок примерно в 8x раз (ориентир гипотезы — 250+ закрытых сделок и заполненная контрольная выборка). Сигнал — знак доходности за 56 дней для каждого инструмента (calculate_signal возвращает непрерывный поперечный MEAN этих доходностей, который меняется каждый бар); размер позиции определяется обратной волатильностью и риск-паритетом; выход — трейлинг-стоп по Chandelier на ATR плюс разворот знака импульса. Все восемь позиций обрабатываются одним и тем же кодом внутри calculate_signal (хуки should_enter/should_exit/position_size для одного инструмента не могут описать портфель из 8 инструментов и неактивны). Бары каждого инструмента с базовым таймфреймом считываются из собственных синхронизированных буферов базового шаблона, поэтому метрики рассчитываются по одновременным барам (барьер выравнивания между инструментами базового шаблона откладывает группу баров, пока все восемь инструментов с одинаковым таймфреймом не передадут одну временную метку). Нужна площадка фьючерсов, поскольку стратегия открывает короткие позиции. Кредитное плечо остаётся на уровне 1.0, а валовой объём жёстко ограничен 100% капитала (вес каждого инструмента ограничен 30%), поэтому корзина не может разрастись за счёт плеча до катастрофических потерь. Ни один параметр не ограничивается скрытно диапазоном уже, чем диапазон поиска оптимизатора, поэтому объявление _param_bounds не требуется.

premise_falsified на достаточной выборке. Центральное утверждение гипотезы: одна общая тройка параметров (период анализа, стоп, риск) одновременно работает на восьми независимых бессрочных контрактах на альткоины со средней капитализацией, так что широта заменяет выбор одного инструмента. Бэктест на 605 сделках за 1485 дней проверяет это утверждение напрямую — оно не подтверждается: реализованная прибыль и убыток распределены так: 5 прибыльных / 3 убыточных, результат INJ +40.9 тыс. против DYDX -39.2 тыс. и AAVE……Показать большеСвернуть

premise_falsified на достаточной выборке. Центральное утверждение гипотезы: одна общая тройка параметров (период анализа, стоп, риск) одновременно работает на восьми независимых бессрочных контрактах на альткоины со средней капитализацией, так что широта заменяет выбор одного инструмента. Бэктест на 605 сделках за 1485 дней проверяет это утверждение напрямую — оно не подтверждается: реализованная прибыль и убыток распределены так: 5 прибыльных / 3 убыточных, результат INJ +40.9 тыс. против DYDX -39.2 тыс. и AAVE -18.6 тыс. Исключение единственного самого нового инструмента (INJ) меняет реализованный результат всего портфеля с +32.3 тыс. на -8.7 тыс. Следовательно, портфель зависит от одного инструмента — это та самая концентрация, которую конструкция с широкой корзиной должна была устранить. Для всего портфеля преимущество статистически неотличимо от нуля на этой выборке (коэффициент Шарпа 0.356, бутстрэп CI от -0.42 до +1.16, PSR 0.76, фактор прибыли 1.0597, при этом моделируемое воздействие на рынок уже составляет 12% валовой суммы). Имеющееся преимущество ограничено стрессовым терцилем волатильности (+125.3%), а спокойный (-7.7%) и обычный (-28.6%) режимы убыточны. Иными словами, это направленная бета к кризисным трендам в альткоинах, а не общее поперечное преимущество TSMOM. Риск составляет 63.9% максимальной просадки, 746 дней под водой и 27 убытков подряд при валовой экспозиции 1.0x. Снижение валовой экспозиции пропорционально уменьшает доходность и просадку, не меняя коэффициент Шарпа, поэтому итерации за счёт размера позиции не решат проблему. Разработчик может менять параметры, но не может заставить четыре неработающих инструмента разделить общее преимущество. Это измерение на имеющейся выборке, а не прогноз результата дефляции.

Реализация

Дневной импульс временного ряда лонг-шорт BASKET на восьми бессрочных контрактах Binance USD-M со средней капитализацией (RUNE, NEAR, FIL, AAVE, AVAX, GALA, DYDX, INJ); каждый инструмент использует правило IDENTICAL со значениями параметров IDENTICAL. Инструмент удерживается в длинной позиции LONG, если его доходность за 56 дней положительна, и в короткой SHORT, если она отрицательна. Сделки открываются напрямую, без ранжирования, подбора пар и хеджирования, поэтому портфель имеет чистую направленную экспозицию.……Показать большеСвернуть

Дневной импульс временного ряда лонг-шорт BASKET на восьми бессрочных контрактах Binance USD-M со средней капитализацией (RUNE, NEAR, FIL, AAVE, AVAX, GALA, DYDX, INJ); каждый инструмент использует правило IDENTICAL со значениями параметров IDENTICAL. Инструмент удерживается в длинной позиции LONG, если его доходность за 56 дней положительна, и в короткой SHORT, если она отрицательна. Сделки открываются напрямую, без ранжирования, подбора пар и хеджирования, поэтому портфель имеет чистую направленную экспозицию. Размер позиций обратно пропорционален волатильности (вес пропорционален 1/стандартному отклонению дневной доходности; лимит — 30% валовой экспозиции с последующей нормализацией), поэтому валовый номинал корзины всегда равен примерно 100% капитала при плече 1.0. Позиция закрывается, когда дневное закрытие пробивает трейлинг-стоп по экстремуму ATR(20) (экстремум со времени входа −/+ 4 x ATR), либо когда меняется знак импульса инструмента. После выхода по стопу повторное открытие позиции в том же направлении запрещено до смены знака импульса или истечения 10 календарных дней, отсчитываемых от временной метки бара выхода. Только OHLCV, дополнительные данные не используются.

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

Удали INJ (общая начальная дата сдвинется на 2021-09) или зафиксируй начальную дату бэктеста и оптимизации на 2022-08-18, чтобы во всех трёх окнах WF была реальная торговля. Не удаляй барьер синхронизации.

Данные INJUSDT по 1-DAY начинаются 2022-08-18, тогда как основной инструмент RUNE начинается 2020-09-05. Барьер синхронизации инструментов базового шаблона откладывает основной бар, пока каждый дополнительный инструмент того же таймфрейма не передаст бар с этой временной меткой. Поэтому бар NO оценивается до первого бара INJ. Тестовая среда подтверждает это: data_days 2196, effective_daily_obs 1484 (712 неактивных дней). Это не ошибка заглядывания вперёд или неверной сделки, но коэффициент Шарпа и CAGR/DD за полный период занижены, поскольку треть периода проходит без сделок, а окно walk-forward-анализа 1 на всей истории будет содержать ноль или почти ноль сделок. Это исказит вывод IS/OOS, который и должна улучшить эта гипотеза.

Ограничивай веса итеративно (нормализуй, снова ограничивай, распределяй избыток и повторяй) или проверяй, что после нормализации max(weights) <= max_leg_weight.

max_leg_weight фактически не соблюдается: веса ограничиваются сверху (строка 149), затем нормализуются по сумме ограниченных весов (строка 153), поэтому вес инструмента после нормализации оказывается ABOVE лимита (например, исходный {0.55,0.15,0.10,0.20} при лимите 0.30 → итоговый вес равен 0.40). При 8 инструментах с размером, обратно пропорциональным волатильности, это редко влияет на результат, однако заявленное ограничение концентрации 30% не действует в хвостовом сценарии, для которого оно предназначено.

Объяви `_param_bounds`, охватывающий только mom_lookback / atr_mult / gross_exposure; исправь остальное.

Предпосылка гипотезы о защите от переобучения — набор параметров из 3 параметров, но конфигурация содержит EIGHT числовых параметров без `_param_bounds`. Оптимизатор задаёт пространство поиска по числовым ключам в `parameters`, поэтому все восемь параметров перебираются в течение 75 испытаний × 3 окон. Это существенно расширяет пространство отбора лучшего из N по сравнению с заранее заданным планом и вновь открывает канал завышения DSR/PBO, который эта гипотеза должна была закрыть.

Оберни _close_leg и изменения _extreme/_blocked в ранний выход при `_in_warmup`.

Только для пути реальной торговли и бумажной торговли: _close_leg → _submit_exit_position → close_position не проверяется на `_in_warmup` (в отличие от _submit_entry_instrument), тогда как calculate_signal IS вызывается при воспроизведении баров разогрева. Узел бумажной торговли, воспроизводящий историю с перенесёнными позициями, может отправить реальный ордер на закрытие во время разогрева. Бэктест не затронут (закрытия исполняются в ходе события).

Результат тестовой среды (без оптимизации, один запуск) слабый и сосредоточен в одном режиме: коэффициент Шарпа 0.354, PF 1.096, доля прибыльных сделок 35.4%, максимальная просадка 63.9%, период под водой длиной 746 дней и 27 убытков подряд. Спокойный режим -7.6% (коэффициент Шарпа 0.14) и обычный -28.7% (коэффициент Шарпа -0.06) против стрессового +125.2% (коэффициент Шарпа 1.36): почти вся прибыль и убыток приходится на терциль высокой волатильности. Портфель по своей конструкции имеет чистую направленную экспозицию, поэтому значительная часть доходности может отражать бету к альткоинам с плечом и кризисным трендам, а не устойчивую премию TSMOM. Кроме того, rate_shock_2022 -18.7%, svb_march_2023 -15.0%. Дело не в комиссиях (avg_trade_return_pct 1.55% при минимальном уровне 0.15%; 605 сделок; воздействие на рынок — 7.9% валовой суммы, ёмкость $16.2 млн). Вопрос в том, сохранится ли коэффициент Шарпа после дефляции с учётом просадки ~64% и концентрации в одном режиме.

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

Шарп
0,36
Общая доходность
52,83%
Максимальная просадка
63,90%
Всего сделок
605
Доля прибыльных
34,9%
Профит-фактор
1,06

Методологическая идея верна: ONE общая тройка параметров для 8 инструментов без ранжирования и подбора пар — правильное решение проблемы отбора лучшего из N, и оно обеспечило обещанную выборку (605 закрытых сделок, 1485 эффективных дневных наблюдений, среднее удержание ~16 дней).

Дело не в комиссиях: avg_trade_return_pct 1.55% примерно в 10x раза превышает минимальный уровень 0.15% BINANCE USD-M; комиссии составляют лишь 1.71% валовой суммы, модельное воздействие на рынок — 12% при ёмкости $6.9 млн.

Сделки соответствуют заявленному механизму: 300 длинных / 305 коротких, прямая направленная сделка по каждому инструменту, размер позиции обратно пропорционален волатильности (avg_position_pct 14.2% на 8 инструментах ~ валовая экспозиция 1.0x), выходы по стопу на ATR-дневном экстремуме.

Предпосылка о широте охвата опровергнута фактическими данными, а не прогнозом: восемь позиций NOT не имеют общего преимущества. Реализованный PnL по каждой позиции: INJ +40.9 тыс., GALA +27.1 тыс., RUNE +23.7 тыс., AVAX +2.8 тыс., NEAR +0.9 тыс. против FIL -5.3 тыс., AAVE -18.6 тыс., DYDX -39.2 тыс. Общий реализованный результат — +32.3 тыс., но без самой новой позиции (INJ, добавленной в листинг 2022-08) он составляет -8.7 тыс. Итог почти сводится к нулю из-за вклада одного инструмента — именно такую зависимость от одного актива гипотеза и стремилась устранить.

Измеренное преимущество на этой достаточной выборке статистически неотличимо от нуля: коэффициент Шарпа 0.356, бутстрэп CI [-0.42, +1.16] (интервал пересекает 0) и probabilistic_sharpe 0.76. Фактор прибыли 1.0597 означает, что валовая прибыль превышает валовые убытки примерно в 6% раза, однако только воздействие на рынок уже составляет 12% валовой суммы.

Анализ по режимам показывает, что это бета к кризисным трендам в альткоинах с плечом, а не премия TSMOM: спокойный режим -7.7% (коэффициент Шарпа 0.14), обычный -28.6% (коэффициент Шарпа -0.06), стрессовый +125.3% (коэффициент Шарпа 1.36). Портфель по своей конструкции имеет чистую направленную экспозицию, поэтому почти вся прибыль и убыток приходится на один терциль волатильности. Опасения QA по поводу преимущества стратегии подтверждаются разложением по инструментам, а не просто повторяются.

Риск намного превышает любой приемлемый для запуска диапазон, и это не ошибка расчёта размера позиции: максимальная просадка 63.9% при валовой экспозиции 1.0x, 746 дней под водой, 27 убытков подряд, календарные годы 2022 -31.2% и 2025 -30.8%. Снижение валовой экспозиции пропорционально уменьшает доходность и просадку, оставляя коэффициент Шарпа 0.36 без изменений, поэтому решить проблему изменением размера позиции нельзя.

39% заголовочного показателя (+52.8% общей доходности, end_unrealized_pct 20.6) — это переоценка открытой позиции на последнем баре. Поэтому даже скромная история реализованных результатов завышает фактически полученную прибыль.

CI пересекает ноль; PSR 0.76

прибыльна только в стрессовом терциле

5 из 8; результат становится отрицательным без INJ

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

Добавление инструментов снижает смещение отбора, только если их преимущество действительно общее. Прежде чем считать совокупный результат проявлением широты, а не удачей на одном временном ряду, проверь разброс прибыли и убытка по инструментам и чувствительность результата к исключению каждого из них.

Аналитик отказался от стратегии при проверке бэктеста (до оптимизации), потому что premise_falsified: распределение реализованной прибыли и убытка по инструментам — 5 прибыльных / 3 убыточных (INJ +40.9 тыс. против DYDX -39.2 тыс., AAVE -18.6 тыс.), а исключение только INJ изменило результат портфеля с +32.3 тыс. на -8.7 тыс. Это опровергло утверждение об «общем преимуществе на восьми инструментах» на достаточной выборке. Анализ режимов показал, что прибыль была только в стрессовом терциле волатильности (+125.3%), тогда как спокойный (-7.7%) и обычный (-28.6%) режимы приносили убыток. Снижение валовой экспозиции пропорционально уменьшает доходность и просадку, поэтому итераций за счёт изменения размера позиции не предусмотрено.

Корзина лонг-шорт с дневным импульсом временного ряда, где для ONE инструментов используется общий набор параметров (56-дневной знак доходности, размер позиции обратно пропорционален волатильности, стоп по ATR-дневному экстремуму). Сделки напрямую открывались по восьми среднекапитализированным бессрочным контрактам Binance USD-M (RUNE, NEAR, FIL, AAVE, AVAX, GALA, DYDX, INJ), поскольку предполагалось, что широта корзины заменит выбор лучшего инструмента из одной группы, погубивший предыдущие кандидаты.

За 2,196 дней стратегия совершила 605 закрытых сделок (300 длинных / 305 коротких), общая доходность составила +52.8%, CAGR 7.13%, коэффициент Шарпа — 0.356, бутстрэп-интервал CI — [-0.42, +1.16], фактор прибыли — 1.06, доля прибыльных сделок — 34.9%, максимальная просадка — 63.9%; под водой капитал оставался 746 дней. Издержки не были проблемой: avg_trade_return_pct 1.55% против минимального уровня 0.15%, комиссии составили 1.71% от валового объёма. Однако моделируемое влияние на рынок составило 12% от валового объёма, а нереализованный результат по открытым позициям на последнем баре составлял 20.6% капитала.

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