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

Стратегии

Возврат к среднему по полосе волатильности в боковом режиме, длинные и короткие позиции (один инструмент: ETHUSDT Binance USD-M, бары 1H, игра на возврат после сильных отклонений ONLY, когда фильтр тренда подтверждает отсутствие тренда — задокументированное исправление проблемы «разворот не работает на крупных активах во время тренда», мало параметров)

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

EthRangingRegimeVolBandMeanReversionLS1H

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

Эта стратегия была создана, чтобы спасти часовую стратегию возврата к среднему ETH от многократно подтвержденного вывода фабрики, что краткосрочный разворот на ликвидных крупных активах не работает; для игры на чрезмерных отклонениях z-оценки использовался жесткий фильтр режима ADX, допускающий сделки только на боковом рынке. В бэктесте на 1,388 сделках за более чем 6 лет стратегия с фильтром оказалась убыточной в каждом году и режиме: общая доходность -85.7%, коэффициент Шарпа -1.94 с полностью отрицательным……Показать большеСвернуть

Эта стратегия была создана, чтобы спасти часовую стратегию возврата к среднему ETH от многократно подтвержденного вывода фабрики, что краткосрочный разворот на ликвидных крупных активах не работает; для игры на чрезмерных отклонениях z-оценки использовался жесткий фильтр режима ADX, допускающий сделки только на боковом рынке. В бэктесте на 1,388 сделках за более чем 6 лет стратегия с фильтром оказалась убыточной в каждом году и режиме: общая доходность -85.7%, коэффициент Шарпа -1.94 с полностью отрицательным доверительным интервалом, фактор прибыли 0.72 и математическое ожидание -$60.76 на сделку. При этом сохранялась та самая обратная геометрия с небольшим тейк-профитом и большим стопом, которой, согласно гипотезе, следовало избежать. Поскольку реализация была чистой, а отрицательный результат — однозначным на большой статистически значимой выборке, аналитик отказался от стратегии на этапе проверки бэктеста до оптимизации, вместо того чтобы тратить часы на оптимизацию шума. За этот этап стратегия не прошла: оптимизация, последующий анализ и проверка рисков не проводились; результат четко подтверждает, что контртрендовая стратегия игры на возврат по фильтру ADX на ликвидных крупных криптоактивах не дает обобщаемого положительного преимущества.

Гипотеза

LONG-SHORT, SINGLE-INSTRUMENT стратегия возврата к среднему на ETHUSDT.BINANCE (USD-M бессрочный контракт, бары 1-HOUR), специально построенная AROUND многократно подтверждённого фабрикой вывода: «краткосрочного разворота на ликвидных крупных активах нет — на этом горизонте они продолжают движение по тренду». Предыдущая кросс-секционная стратегия разворота за 3 дней провалилась именно потому, что безусловно играла на разворот UNCONDITIONALLY, занимая структурно короткую позицию против импульса, преобладающего на……Показать большеСвернуть

LONG-SHORT, SINGLE-INSTRUMENT стратегия возврата к среднему на ETHUSDT.BINANCE (USD-M бессрочный контракт, бары 1-HOUR), специально построенная AROUND многократно подтверждённого фабрикой вывода: «краткосрочного разворота на ликвидных крупных активах нет — на этом горизонте они продолжают движение по тренду». Предыдущая кросс-секционная стратегия разворота за 3 дней провалилась именно потому, что безусловно играла на разворот UNCONDITIONALLY, занимая структурно короткую позицию против импульса, преобладающего на рынке. Эта стратегия устраняет первопричину с помощью жёсткого REGIME GATE: она играет на разворот чрезмерного отклонения, только когда фильтр тренда (ADX) показывает, что актив сейчас NOT движется по тренду. В режиме без тренда, то есть в боковике, чрезмерные часовые отклонения от короткой скользящей средней возвращаются к среднему; в трендовом режиме стратегия остаётся FLAT и никогда не идёт против тренда. Она не коррелирует с семейством стратегий на импульсе и следовании за трендом, уже преобладающим в портфеле, и намеренно дополняет его: стратегия использует OPPOSITE режим, а не повторяет то же преимущество. Чистый OHLCV, обширная история за несколько лет, много сделок без ограничений из-за их редкости, один ликвидный крупный актив без риска гэпов из-за новостей по отдельным альткоинам, как у XRP/LTC. Мало параметров, чтобы снизить риск переобучения.

Исправление итерации 3 для тайм-аута слоя -3: предыдущая версия на каждом баре заново создавала массивы numpy из растущей истории баров ENTIRE и выполняла циклы Python ADX по всей истории, что давало общую сложность O(n^2) и превышало лимит дымового теста 300 с на многолетних данных 1H. Минимальное точечное изменение ограничивает self._bars фиксированным хвостом (self._calc_window = max(band_period, 5*adx_period)+10 = 80 баров) перед созданием массивов, поэтому работа на бар составляет O(1), а общая сложность — O(n). Вся логика сигналов, входа, выхода и определения размера позиции побайтно совпадает с кодом, уже прошедшим слои 1-2, поэтому предыдущие проверки не ухудшаются. Окно с запасом покрывает период прогрева Уайлдера ADX (2*adx_period+1) и период полосы SMA.

В основе лежит несостоятельная гипотеза, а не исправимая ошибка или артефакт: результат подтверждает многократно проверенный вывод фабрики, что краткосрочного разворота на ликвидных крупных активах не существует. Вся идея этой гипотезы заключалась в том, что фильтр режима отсутствия тренда ADX спасет часовой возврат ETH; даже с фильтром стратегия убыточна в EVERY году (2020—2026) и в режиме EVERY, с total_return -85.7%, коэффициентом Шарпа -1.94 (весь CI отрицательный, ci_high -1.14), PSR 0.0, profit_factor 0.72……Показать большеСвернуть

В основе лежит несостоятельная гипотеза, а не исправимая ошибка или артефакт: результат подтверждает многократно проверенный вывод фабрики, что краткосрочного разворота на ликвидных крупных активах не существует. Вся идея этой гипотезы заключалась в том, что фильтр режима отсутствия тренда ADX спасет часовой возврат ETH; даже с фильтром стратегия убыточна в EVERY году (2020—2026) и в режиме EVERY, с total_return -85.7%, коэффициентом Шарпа -1.94 (весь CI отрицательный, ci_high -1.14), PSR 0.0, profit_factor 0.72 и математическим ожиданием -$60.76 на большой статистически значимой выборке из 1,388 сделок. Код точно реализует исходную идею (нет вырожденного параметра, отключающего действия, артефакта учета нет, волатильность около 20% правдоподобна, невозможных дневных значений нет), поэтому разработчику нечего исправлять, а оптимизатору нечего искать среди ненастроенных параметров — оптимизация в течение 2 часов при столь равномерно отрицательном исходном результате лишь подогнала бы шум. Сигнал возврата после отклонения z-оценки на 2 стандартных отклонений, даже при фильтрации по боковым режимам ADX<25, не обладает предсказательной ценностью для ETH; кроме того, стратегия несет обратную геометрию выплат: небольшой тейк-профит (TP exit_z 0.3) и большой стоп (4%), которой, согласно гипотезе, следовало избежать (avg_win $290 < avg_loss $455). Не продолжать итерации: конкретного дефекта кода нет, а перенос того же контртрендового механизма на другой ликвидный крупный актив лишь повторил бы ту же неудачу из-за отсутствия разворота. Это соответствует известной модели неудач: фильтрованная краткосрочная стратегия возврата к среднему на ликвидных крупных криптоактивах не дает обобщаемого положительного преимущества.

Реализация

Длинно-короткая стратегия возврата к среднему на таймфрейме 1H для бессрочного контракта USD-M ETHUSDT. Играет на возврат после сильных отклонений z-оценки от полосы SMA длиной 24 баров, но ONLY, когда ADX(14) < 25 (режим отсутствия тренда/бокового движения). Остается вне рынка в трендовых режимах и закрывает позицию, если тренд начинается в ходе сделки. Выход по стоп-лоссу и при возврате к среднему. Вычисления на каждом баре ограничены фиксированным недавним окном, поэтому бэктест выполняется за время O(n).

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

Проверка не пройдена (слой 3 — бэктест в изолированной среде): дымовой тест превысил лимит времени 300 с. Почти всегда это означает, что работа на каждом баре масштабируется с историей — например, повторное сканирование всей серии ставок финансирования/дополнительных данных или пересоздание списка с вызовом min()/sorted() внутри calculate_signal()/on_bar() на каждом баре. Предварительно вычислите отсортированные массивы временных меток ONCE в __init__ и используйте bisect либо кэшируйте результаты поиска по временной метке, чтобы затраты на бар составляли O(log n), а не O(n).

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

Шарп
-1,94
Общая доходность
-85,70%
Максимальная просадка
86,79%
Всего сделок
1388
Доля прибыльных
52,9%
Профит-фактор
0,72

Чистая и точная реализация: фильтр режима ADX, игра на возврат по z-оценке и логика стопа/выхода корректно выражают заявленную гипотезу (артефактов и ошибок учета нет, волатильность 20.6% правдоподобна, невозможных дневных значений нет).

Достаточная выборка и надежная инфраструктура: 1,388 сделок за 6+ лет, высокая частота сделок, один ликвидный инструмент, затраты на бар O(1) — самому бэктесту можно доверять.

Отрицательный результат сам по себе информативен: он на большой статистически значимой выборке четко подтверждает исходное ожидание отсутствия разворотов на крупных активах.

Стабильно отрицательное преимущество на протяжении EVERY года (2020 -13%, 2021 -52%, 2022 -32%, 2023 -2.8%, 2024 -5.8%, 2025 -25.6%, 2026 -18.4%) и во всех режимах — total_return -85.7%, max_drawdown 86.8%.

Глубоко отрицательные метрики с поправкой на риск, сомнений нет: коэффициент Шарпа -1.94 (весь CI отрицательный, ci_high -1.14), коэффициент Сортино -2.46, PSR 0.0, profit_factor 0.72, information_ratio -1.01, математическое ожидание -$60.76 на сделку по 1,388 сделкам.

Обратная геометрия выплат, которой, согласно гипотезе, следовало избежать: exit_z=0.3 (маленький выигрыш) против стопа 4% дает avg_win $290 < avg_loss $455 при доле прибыльных сделок 53%; комиссия съедает 16% валовой прибыли — но даже правильная геометрия не спасет сигнал без предсказательного преимущества на протяжении 6 лет.

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

Проверка не пройдена (слой 2 — синтетические сценарии): Использованные параметры: ['exit_z', 'entry_z', 'risk_frac', 'adx_period', 'band_period', 'min_notional', 'adx_threshold', 'stop_loss_pct'] Убедитесь, что __init__ задает все атрибуты с помощью self.parameters.get(). - steady_uptrend: TypeError: объект 'float' нельзя вызвать (временная метка бара: 1735691580000) - steady_downtrend: TypeError: объект 'float' нельзя вызвать (временная метка бара: 1735691580000) - flat_ranging: TypeError: объект 'float' нельзя вызвать (временная метка бара: 1735691580000) - volatility_spike: TypeError: объект 'float' нельзя вызвать (временная метка бара: 1735691580000) - zero_volume: TypeError: объект 'float' нельзя вызвать (временная метка бара: 1735691580000) - price_gap: TypeError: объект 'float' нельзя вызвать (временная метка бара: 1735691580000)

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

Краткосрочный разворот не дает положительного преимущества на ликвидных крупных криптоактивах, даже при ограничении режимом отсутствия тренда ADX, поэтому стратегия игры на возврат после чрезмерного движения по-прежнему убыточна на ETH во всех годах и режимах.

На этапе BACKTEST_REVIEW до оптимизации аналитик вынес вердикт «отказаться», признав исходную идею несостоятельной, а не содержащей исправимую ошибку. Код точно реализовывал гипотезу, а бэктест был чистым и надежным, поэтому дефекта для исправления не было, как и ненастроенных параметров, которые могла бы обнаружить оптимизация. До оптимизации, последующего анализа аналитика и проверки рисков дело не дошло.

Длинно-короткая стратегия возврата к среднему на таймфрейме 1H для бессрочного контракта USD-M на Binance ETHUSDT: она играла на возврат после сильных отклонений z-оценки от короткой SMA, но только когда фильтр тренда ADX (ADX<25) подтверждал режим отсутствия тренда/бокового движения; во время трендов стратегия оставалась вне рынка, чтобы не противостоять импульсу.

На выборке из более чем 1,388 сделок за 6+ лет (2019-2026) стратегия понесла значительные убытки: общая доходность -85.7%, коэффициент Шарпа -1.94 (весь CI отрицательный, ci_high -1.14), фактор прибыли 0.72, математическое ожидание -$60.76 на сделку и максимальная просадка 86.8% при доле прибыльных сделок 52.9%. Результат был отрицательным в каждом году и каждом режиме; геометрия выплат была обратной (средний выигрыш $290 < средний убыток $455), а комиссия съедала около 16% валовой прибыли.

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