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

Стратегии

Управление экспозицией QQQ по волатильности с фильтром тренда — тайминг только длинных позиций по Nasdaq-100 ETF; обратное масштабирование экспозиции по реализованной волатильности при цене выше тренда за 200 дней, ребалансировка по порогу (USEQ, дневные бары, 2 параметров)

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

QqqVolatilityManagedTrendExposure

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

В этой итерации -2 стратегия управляла экспозицией QQQ, обратно пропорционально масштабируя размер позиции относительно реализованной волатильности, пока цена находилась выше растущего тренда 200-дневного периода. При этом был исправлен прежний дефект ребалансировки при дрейфе, из-за которого доходность на сделку становилась отрицательной. Проверка бэктеста одобрила оптимизацию: доходность на сделку теперь значительно превышала порог комиссий USEQ, фактор прибыли был высоким (5.36), а просадка умеренной, хотя……Показать большеСвернуть

В этой итерации -2 стратегия управляла экспозицией QQQ, обратно пропорционально масштабируя размер позиции относительно реализованной волатильности, пока цена находилась выше растущего тренда 200-дневного периода. При этом был исправлен прежний дефект ребалансировки при дрейфе, из-за которого доходность на сделку становилась отрицательной. Проверка бэктеста одобрила оптимизацию: доходность на сделку теперь значительно превышала порог комиссий USEQ, фактор прибыли был высоким (5.36), а просадка умеренной, хотя стратегия уже уступала «купи и держи» по доходности с поправкой на риск. Оптимизация выявила фатальные проблемы: переобучение в walk-forward (IS 0.617 против OOS 0.376), PBO 0.73, контрольная выборка из 9 сделок, дефлированный коэффициент Шарпа ниже порога значимости и отрицательный информационный коэффициент, показывающий отсутствие альфы относительно бенчмарка. Аналитик отказался от неё из-за переобучения / статистической незначимости (а не из-за отсутствия преимущества над комиссиями), отметив, что стратегию структурно нельзя проверить при 57 сделках за 27 лет и что родственные стратегии с управлением волатильностью уже провалились.

Гипотеза

Итерация 2 устраняет причину выявленного провала (avg_trade_return_pct -1.666% на 77 сделках), убирая два фактора, делавших каждый полный цикл сделки убыточным, но не затрагивая сам механизм таргетирования волатильности. (1) Раньше полоса ребалансировки рассчитывалась по NOTIONAL DRIFT относительно капитала. Поскольку целевой номинал растёт вместе с капиталом по рыночной оценке, это правило механически добавляло акции при росте цены и сокращало позицию при падении INSIDE одной позиции. В итоге прибыльная……Показать большеСвернуть

Итерация 2 устраняет причину выявленного провала (avg_trade_return_pct -1.666% на 77 сделках), убирая два фактора, делавших каждый полный цикл сделки убыточным, но не затрагивая сам механизм таргетирования волатильности. (1) Раньше полоса ребалансировки рассчитывалась по NOTIONAL DRIFT относительно капитала. Поскольку целевой номинал растёт вместе с капиталом по рыночной оценке, это правило механически добавляло акции при росте цены и сокращало позицию при падении INSIDE одной позиции. В итоге прибыльная трендовая сделка закрывалась со средневзвешенной по объёму ценой входа намного выше цены открытия и средневзвешенной ценой выхода намного ниже цены закрытия, из-за чего реализованная доходность на сделку резко падала (а в реальной торговле деньги терялись из-за покупок по высокой цене и продаж по низкой внутри сделки). Теперь полоса рассчитывается по целевому WEIGHT относительно веса последней сделки, поэтому корректировка происходит лишь при примерном удвоении или уменьшении вдвое реализованной волатильности. Теперь в большинстве сделок нет корректировок позиции внутри сделки, а полный цикл представляет собой чистую трендовую сделку. (2) Фильтр наклона SMA применяется только при входе (SMA сегодня >= SMA 20 сессий назад) и отсекает выходы цены выше FALLING средней за 200 дней — сделки трендовой стратегии с худшим математическим ожиданием. Это увеличивает среднее время удержания и доходность на сделку, не сокращая прибыльные сделки (фильтр никогда не принуждает к выходу). Всё, что уже прошло этапы 1-3, остаётся без изменений: те же импорты, класс и интерфейс, тот же непрерывный сигнал веса, то же определение размера позиции только в лонг USEQ целыми акциями, то же правило сокращения позиции без увеличения. Сделок становится меньше (меньше входов на ложных колебаниях и гораздо меньше корректировок), но пересечение за 200 дней по-прежнему происходит несколько раз за тестовое окно в 6 лет, поэтому порог в 1 сделок достижим с запасом. Важно учитывать: таргетирование волатильности по своей природе сокращает прибыльные позиции при всплесках волатильности, поэтому его преимущество относится к доходности с поправкой на риск, а не к доходности на сделку. Если после этого изменения показатель доходности на сделку всё ещё ниже порога комиссий 0.05% USEQ, значит, механизм не позволяет преодолеть порог на этом инструменте и от стратегии следует отказаться, а не продолжать настройку.

Провал из-за переобучения / статистической незначимости, NOT — не из-за недостаточного преимущества над комиссиями (доходность на сделку 0.289% превышает порог USEQ). Не пройдены три обязательных критерия HARD: walk-forward-анализ is_overfitted=TRUE (среднее IS 0.617 → среднее OOS 0.376, одно окно OOS 0.0), PBO 0.7328 > 0.5, а в контрольной выборке всего 9 сделок. Проверка устойчивости подтверждает шумовой эффект выбора лучшего результата из N вариантов: deflated_sharpe 0.851 < 0.95, is_significant=false,……Показать большеСвернуть

Провал из-за переобучения / статистической незначимости, NOT — не из-за недостаточного преимущества над комиссиями (доходность на сделку 0.289% превышает порог USEQ). Не пройдены три обязательных критерия HARD: walk-forward-анализ is_overfitted=TRUE (среднее IS 0.617 → среднее OOS 0.376, одно окно OOS 0.0), PBO 0.7328 > 0.5, а в контрольной выборке всего 9 сделок. Проверка устойчивости подтверждает шумовой эффект выбора лучшего результата из N вариантов: deflated_sharpe 0.851 < 0.95, is_significant=false, коэффициент Шарпа CI [0.273, 1.014], также стратегия не проходит проверку на уровне программы FDR (сохраняет 4 из 245, candidate_survives=false). Согласно правилу различения переобучения и нежизнеспособной исходной гипотезы, коллапс IS/OOS при высоком PBO означает ABANDON: стратегию следует закрыть, а не пересматривать. Две структурные проблемы делают дальнейшие итерации бесперспективными: (1) NO ALPHA — information_ratio отрицателен (-0.36), бета около 0.1-0.28, то есть это скрытая длинная позиция с бета-экспозицией QQQ, а не активное преимущество; собственная «лучшая» конфигурация оптимизатора доводит target_vol до нижнего порога 0.05 (средняя экспозиция 38%, CAGR 3.25%), то есть единственный способ повысить коэффициент Шарпа — прекратить торговлю; (2) частота UNVALIDATABLE: 57 сделок за 27 лет, при этом хранилище OOS помечено как недостаточно мощное (ожидается около 16 сделок при необходимых 100), поэтому настройка параметров не позволит получить статистически обоснованный OOS. Поверхность чувствительности плоская (около 0.40-0.53, обрывы 0); нет неиспользованной устойчивой области для настройки. Тот же механизм управления экспозицией по волатильности уже не сработал в родственных стратегиях (QQQ режимная стратегия лонг-шорт по волатильности → fee_edge, BTC стратегия с фильтром тренда и управлением волатильностью, лонг/вне рынка → переобучение x2). Нет понятного способа повысить коэффициент Шарпа OOS 0.376 до порога продвижения 1.5. Тип провала: переобучение / статистическая незначимость (трендовая надстройка с управлением волатильностью для одного инструмента, альфа отсутствует относительно стратегии «купи и держи»).

Реализация

Только длинная позиция по QQQ (USEQ, дневные бары), пока цена выше 200-дневной SMA; размер позиции обратно пропорционален реализованной волатильности за 20 дней (target_vol/realized_vol, максимум 100% капитала). Для входа также требуется, чтобы 200-дневный SMA рос за последние 20 сессий. Открытая позиция корректируется ONLY, если целевой вес по волатильности относительно веса последней сделки меняется более чем на rebalance_band (50%) — то есть при реальной смене режима волатильности, а не из-за дрейфа цены или капитала. Выход — закрытие ниже 200-дневной SMA.

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

Убедись, что базовый FactoryStrategy вызывает подкласс min_bars_required(); повышенное требование к периоду разогрева в переопределении намеренно и корректно, поэтому менять ничего не нужно, если базовый класс его учитывает.

min_bars_required(self) переопределяет/затеняет метод базового фреймворка (отмечено статическим анализом). Переопределение намеренно увеличивает период разогрева, чтобы охватить sma_days + slope_days; это правильно и необходимо, но проверь, что базовый шаблон действительно вызывает это переопределение для допуска оценки сигналов, а не использует собственную реализацию.

В тестовой среде стратегия уступает «купи и держи» по доходности с поправкой на риск относительно бенчмарка (information_ratio -0.42, бета 0.27, альфа 0.034); в стрессовом терциле волатильности результат слегка отрицательный (-1.5%, коэффициент Шарпа -0.04). Это ожидаемо для позиции с таргетированием волатильности, ценность которой заключается в доходности с поправкой на риск (меньшая просадка, коэффициент Шарпа 0.91, максимальная DD 12.4%), а не в абсолютном превосходстве. Аналитику следует оценивать бэктест за всю историю по коэффициенту Шарпа и просадке относительно «купи и держи», а не по превышению общей доходности. Сделок мало (8 полных циклов в тестовом окне), поскольку входы ограничены пересечением за 200 дней и растущим наклоном. На полной 25-летней дневной истории QQQ должно быть достаточно циклов рыночных режимов, но стоит подтвердить достаточность выборки.

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

Шарп
0,59
Общая доходность
432,34%
Максимальная просадка
22,48%
Всего сделок
58
Доля прибыльных
36,2%
Профит-фактор
5,36

Исправление в итерации -2 сработало: теперь avg_trade_return_pct составляет +4.088% номинала (ранее -1.67%), что значительно выше порога комиссий USEQ 0.05%. Дефект ребалансировки при дрейфе, который снижал доходность на сделку, устранён: полоса изменения позиции теперь привязана к целевому весу по волатильности, а не к дрейфу MTM.

Репрезентативная и надёжная выборка: 27 лет дневных баров QQQ (1999-2026), 58 отдельных эпизодов с позициями + 131 исполнений, metrics_reliable=true. Достаточно циклов разных рыночных режимов, чтобы 2 часов оптимизации имели смысл.

Явное преимущество до учёта издержек: profit_factor 5.36, положительный коэффициент Шарпа 0.586 (база mtm_equity_curve, правильная метрика), максимальная просадка 22.5% (< 60%), комиссии и влияние на цену составляют лишь 0.43% валового результата.

Сделки реализуют гипотезу: 58 длинных / 0 коротких позиций; входы допускаются при пересечении 200-дневной границы и наличии фильтра растущего наклона; вес позиции по одной бумаге QQQ <= 1.0 (доходность на сделку не является артефактом плеча или компаундирования). Механизм (экспозиция с управлением по волатильности + фильтр тренда) хорошо документирован и обоснован.

Только два свободных параметра (target_vol_annual, rebalance_band), остальные структурные настройки фиксированы — пространство поиска чистое и с низким риском переобучения.

Уступает стратегии «купи и держи» по доходности с поправкой на риск относительно бенчмарка (information_ratio -0.25, бета 0.28, альфа 0.022, CAGR 6.36%). Это ожидаемо для позиции с таргетированием волатильности, цель которой — контролировать просадку, а не превзойти абсолютную доходность. Кроме того, PnL USEQ не включает дивиденды QQQ (около 1-2% в год), поэтому абсолютная доходность занижена — однако порог коэффициента Шарпа для повышения стратегии будет трудно преодолеть.

Коэффициент Шарпа 0.586 ниже порога повышения; в стрессовом терциле волатильности он едва положительный (0.073). Оптимизация может улучшить доходность с поправкой на риск, но вряд ли позволит достичь порога повышения с коэффициентом Шарпа 1.5.

end_unrealized_pct 39.9 (около 9% от заголовочного показателя 432%) — скромный результат, но у последней открытой позиции есть нереализованный MTM; на этапе повышения оценивай реализованные показатели и доходность с поправкой на риск.

Анализ

Исправление для итерации-2 сработало: теперь avg_trade_return_pct составляет +0.289% от номинала (оптимизированное значение) / +4.09% (значение по умолчанию), что заметно выше порога комиссий USEQ 0.05%. Это NOT не провал из-за недостаточного преимущества над комиссиями.

Надёжная механика, не уязвимая к комиссиям: комиссии нулевые, влияние на цену — лишь 0.71% валового результата, profit_factor 4.81, низкая максимальная просадка 8.56%, поверхность чувствительности ровная, с 0 пороговыми параметрами.

Механизм управления экспозицией по волатильности (Moreira—Muir) — документированный эффект; код корректно реализует позицию только в лонг, только сокращение и ребалансировку по полосе выше растущей 200-дневной SMA.

Не пройдены три жёстких пороговых условия UNWAIVABLE: walk-forward is_overfitted=TRUE (средний IS Sharpe 0.617 -> средний OOS 0.376, одно окно OOS — 0.0), PBO 0.7328 > 0.5 (переобучение при отборе вероятнее, чем нет), а в контрольной выборке всего 9 сделок (< минимальных 10).

Статистически неотличима от шума: deflated_sharpe 0.851 < 0.95, is_significant=false, коэффициент Шарпа CI [0.273, 1.014], а стратегия NOT не проходит программную проверку FDR (BH при q=0.10 сохраняет 4 из 245; candidate_survives=false).

Альфы относительно бенчмарка нет: information_ratio составляет NEGATIVE (-0.36 оптимизированный / -0.25 по умолчанию), бета 0.11-0.28, benchmark_correlation около 0.57 — по сути это скрытая длинная позиция с бетой QQQ, а не активное преимущество; по доходности с поправкой на риск она уступает стратегии «купи и держи».

Лучшая конфигурация оптимизатора доводит target_vol_annual до минимального порога 0.05, снижая avg_position_pct с 73% до 38%, а CAGR — с 6.36% до 3.25%. По результатам поиска, чтобы повысить коэффициент Шарпа, нужно почти не инвестировать — признак отсутствия масштабируемого преимущества.

Структурно непроверяема: 57 сделок за 27 лет; хранилище OOS помечено как UNDERPOWERED (ожидается около 16 сделок при необходимых 100) — «нет такого отрезка истории, который был бы достаточно коротким, чтобы оставить обучающие данные, и одновременно достаточно длинным, чтобы проверить настолько медленную стратегию».

Провалы родственных стратегий подтверждают проблему всего класса: отказались от QQQ длинно-короткой стратегии по режимам волатильности (fee_edge), от BTC стратегии с фильтром тренда и управляемой волатильностью, длинная позиция/вне рынка (переобучение x2), а также от корзины основных инструментов с управлением по волатильности.

Преимущество на сделку ниже издержек: avg_trade_return_pct -1.666% при пороге комиссий 0.05% и 77 сделках. Оптимизация этого не исправит: измени механизм, период удержания или таймфрейм, чтобы доходность на сделку превысила порог, либо откажись от стратегии.

Метод Бенджамини—Хохберга при q=0.10 среди 245 кандидатов программы оставляет 4. Кандидат, не прошедший этот отбор, неотличим от собственного шума программы, какими бы хорошими ни выглядели его индивидуальные статистики.

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

Волатильностно-управляемый трендовый оверлей на одном индексе по сути является скрытой длинной позицией с бетой (отрицательный информационный коэффициент) и при примерно 57 сделках за 27 лет структурно слишком медленный для проверки вне выборки — прежде чем развивать этот класс стратегий, нужно проверить частоту сделок и наличие подлинной альфы.

После оптимизации аналитик отказался от стратегии: не пройдены три обязательных пороговых условия — walk-forward is_overfitted=TRUE, средний коэффициент Шарпа IS обрушился с 0.617 до OOS 0.376; PBO 0.7328 > 0.5; в контрольной выборке лишь 9 сделок при минимуме 10. Кроме того, стратегия статистически неотличима от шума (дефлированный коэффициент Шарпа 0.851 < 0.95, статистически значимой на уровне FDR не является).

Позиция QQQ только в лонг: экспозиция обратно пропорциональна недавней реализованной волатильности, когда цена выше растущей 200-дневной SMA. Позиция меняется, только если целевой вес по волатильности существенно изменился.

За 27 лет дневных баров QQQ (1999-2026) конфигурация по умолчанию принесла 432% (CAGR 6.36%) при коэффициенте Шарпа 0.586, факторе прибыли 5.36, максимальной просадке 22.5% и 58 сделках; оптимизированная конфигурация снизила показатели до коэффициента Шарпа 0.644, CAGR 3.25% и 57 сделок, а информационный коэффициент относительно стратегии «купи и держи» оказался отрицательным (-0.36).

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