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

Стратегии

DIA Недельный пропорциональный моментум с нормировкой волатильности

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

DiaWeeklyVolatilityNormalizedProportionalMomentum

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

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

Гипотеза

Вывод руководителя исследований по работе Fernando F. Ferreira и соавторов «Анализ информационного коэффициента стратегий импульса»: проверить описанное в статье скользящее среднее недельных логарифмических доходностей, нормированных по волатильности с учётом только прошлых данных, со знаковой экспозицией, пропорциональной этому среднему, и еженедельной ребалансировкой. Используй DIA.USEQ — торгуемый прокси ETF для промышленного индекса Доу-Джонса, — а не заявляй о воспроизведении эксперимента статьи с индексом……Показать большеСвернуть

Вывод руководителя исследований по работе Fernando F. Ferreira и соавторов «Анализ информационного коэффициента стратегий импульса»: проверить описанное в статье скользящее среднее недельных логарифмических доходностей, нормированных по волатильности с учётом только прошлых данных, со знаковой экспозицией, пропорциональной этому среднему, и еженедельной ребалансировкой. Используй DIA.USEQ — торгуемый прокси ETF для промышленного индекса Доу-Джонса, — а не заявляй о воспроизведении эксперимента статьи с индексом 1896–2013. Составляй недельные наблюдения из завершённых дневных сессионных баров, используя цену закрытия последней биржевой сессии каждой календарной недели. Источник указывает еженедельную ребалансировку и исследует периоды формирования 1–43 недель, но в предоставленном тексте не указаны период нормализации p или масштаб капитала для практического применения. Исследовательские параметры: базовый период формирования 20 недель, период нормализации 20 недель, размер позиции пропорционально капиталу и защитные ограничения риска. Исполняй сделки при закрытии последней сессии; исполнение при открытии следующей сессии не требуется. Не используй ретроспективно выявленные режимы BFAST или подогнанное колебание длиной 180 недель как торговые сигналы.

Источник содержит один исполняемый механизм, а не несколько независимых стратегий. Объяснения для короткого и длинного периодов ретроспективы — зависящие от параметров интерпретации того же механизма. DIA сохраняет экспозицию исходного источника к Dow посредством явно обозначенной адаптации ETF. Длинно-короткое исполнение устраняет концентрацию портфеля в длинных позициях 80.7% и позволяет избежать ещё одного предложения по фьючерсам Binance. Предоставленный corpus_concentration пуст, поэтому установить недавнюю долю использования DIA невозможно. Точность передачи источника важнее выдумывания межбиржевых или опционных компонентов ради выполнения квот.

verification_loop: проверка не пройдена (уровень 3 — бэктест в изолированной среде): execution_timing_mismatch: DIA закрытие последней сессии decision_ns=1560542400000000000, actual_fill_ns=1560801600000000000; требуется инженерная проверка: runner.py устанавливает LatencyModel биржи USEQ с задержкой 100мс до engine.add_venue, а FactoryStrategyConfig не предоставляет политики исполнения на закрытии той же сессии. Реализуй в runner явную политику исполнения для исследовательского контракта, передай её в изолированный запуск и оптимизацию, а перед повторной попыткой проверь фактическое время исполнения и цены закрытия. Сохрани спред, влияние на цену и поведение защитных стопов. Не меняй сигнал и не допускай исполнения на следующей сессии. Использованный тип баров: DIA.USEQ-1-DAY-LAST-EXTERNAL, обработано баров: 0 Убедись, что стратегия совершает сделки с указанными данными и параметрами.

Реализация

DIA: недельный длинно-короткий пропорциональный импульс с логарифмическими доходностями, нормированными по волатильности предыдущей недели, скользящим средним периода формирования, ребалансировкой с привязкой к календарной неделе, размером позиции в целых акциях пропорционально капиталу и защитными стопами. Исполнение заблокировано задержкой исполнения ордеров в runner.

Сохранены импорты, сигнал, логика входа, размера позиции, ребалансировки и защиты из предыдущей реализации; изменены только документация класса и диагностика несоответствия исполнения. Проверка подтверждает, что runner.py устанавливает задержку биржи до engine.add_venue, а USEQ задаёт задержку 100мс. Поддерживаемого переопределения исполнения на уровне стратегии для закрытия той же сессии нет. Эта версия не устраняет проблему уровня 3 и её нельзя повторно отправлять как завершённое исправление. Требуется инженерное изменение вне стратегии. Рабочая область доступна только для чтения, поэтому внести это изменение и выполнить обязательную запись в outbox не удалось. Данные бэктеста и итогового экзамена не читались.

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

Проверка не пройдена (уровень 3 — бэктест в изолированной среде): execution_timing_mismatch: DIA закрытие последней сессии decision_ns=1560542400000000000, actual_fill_ns=1560801600000000000; требуется инженерная проверка: runner.py устанавливает LatencyModel биржи USEQ с задержкой 100мс до engine.add_venue, а FactoryStrategyConfig не предоставляет политики исполнения на закрытии той же сессии. Реализуй в runner явную политику исполнения для исследовательского контракта, передай её в изолированный запуск и оптимизацию, а перед повторной попыткой проверь фактическое время исполнения и цены закрытия. Сохрани спред, влияние на цену и поведение защитных стопов. Не меняй сигнал и не допускай исполнения на следующей сессии. Использованный тип баров: DIA.USEQ-1-DAY-LAST-EXTERNAL, обработано баров: 0 Убедись, что стратегия совершает сделки с указанными данными и параметрами.

Анализ

Перед оптимизацией согласуй временные метки недельных сигналов с фактическими временными метками исполнения ордеров. Реализуй исполнение при закрытии последней биржевой сессии указанным поддерживаемым способом и проверь датированные исполнения для обычных пятниц и недель с сокращёнными из-за праздников сессиями. Не выдавай исполнение на следующей сессии за исполнение на закрытии. Для этого исправления оставь formation_weeks=20, normalization_weeks=20 и текущие настройки риска без изменений, затем повторно запусти базовую версию. Текущие отрицательные результаты оценивают реализованное время исполнения, а не исходную статью и не запрошенный вариант с исполнением на закрытии.

История итераций

Проверка не пройдена (уровень 1 — статический анализ): - Запрещённый импорт: src.data.market_calendar — стратегиям разрешено импортировать только базовые классы и вспомогательные средства фреймворка (src.strategies.base_template, src.strategies.rolling_options_template, src.strategies.polymarket_series_template, src.strategies.helpers); сборщики данных, база данных, движок бэктеста и реестр находятся вне изолированной среды. (строка 9)

Проверка не пройдена (уровень 3 — бэктест в изолированной среде): execution_timing_mismatch: DIA закрытие последней сессии decision_ns=1560542400000000000, actual_fill_ns=1560801600000000000; для оценки гипотезы в этой базовой версии runner должен поддерживать исполнение на закрытии той же сессии. Использованный тип баров: DIA.USEQ-1-DAY-LAST-EXTERNAL, обработано баров: 0 Убедись, что стратегия совершает сделки с указанными данными и параметрами.

Проверка не пройдена (уровень 3 — бэктест в изолированной среде): execution_timing_mismatch: DIA закрытие последней сессии decision_ns=1560542400000000000, actual_fill_ns=1560801600000000000; требуется инженерная проверка: src/backtesting/runner.py применяет LatencyModel на уровне биржи до engine.add_venue; FactoryStrategyConfig не предоставляет переопределения исполнения на закрытии той же сессии. Перед повторной попыткой добавь в runner поддерживаемую политику исполнения для этого исследовательского контракта; изменение сигнала или исполнение на следующей сессии изменит гипотезу. Использованный тип баров: DIA.USEQ-1-DAY-LAST-EXTERNAL, обработано баров: 0 Убедись, что стратегия совершает сделки с указанными данными и параметрами.

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

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

После 5 итераций проверка на уровне 3 не пройдена: фактическое исполнение произошло на следующей сессии, а не при требуемом закрытии последней сессии. В ходе проверки установлено, что модель задержки USEQ 100мс в runner и отсутствие политики исполнения на закрытии той же сессии требуют инженерной проверки.

Торгуй DIA, используя знаковую экспозицию, пропорциональную усреднённым недельным логарифмическим доходностям, нормированным по волатильности с учётом только прошлых данных; ребалансируй в момент закрытия последней биржевой сессии каждой недели.

Доходность, коэффициент Шарпа и число сделок не указаны; неудачный запуск в изолированной среде сообщил об обработке 0 баров. Проверка бэктеста, оптимизация, аналитическая проверка и оценка риска не проводились.

Анализ

Анализ информационного коэффициента стратегий импульса

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

Шарп
-0,16
Общая доходность
-4,80%
Максимальная просадка
5,48%
Всего сделок
186
Доля прибыльных
19,9%
Профит-фактор
0,67

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