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

Стратегии

ETH USD-M Моментум временного ряда на недельных барах, длинные и короткие позиции (один инструмент ETHUSDT.BINANCE, основные бары 1-WEEK, один таймфрейм, знак тренда, выход по трейлинг-стопу ATR, 2 параметра)

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

EthWeeklyTimeSeriesMomentumLS

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

EthWeeklyTimeSeriesMomentumLS проверила максимально простое выражение недельного моментума временного ряда на бессрочных контрактах ETH — знак одной трендовой статистики, длинная или короткая позиция, с трейлинг-стопом ATR и размером позиции, нацеленным на заданную волатильность, — чтобы заполнить недостаточно представленную в фабрике макронедельную корзину горизонтов. Бэктест прошёл без сбоев за 6.3 лет и 28 сделок; как и предполагалось, комиссии были незначительными (комиссия составила лишь 1.12% от валовой……Показать большеСвернуть

EthWeeklyTimeSeriesMomentumLS проверила максимально простое выражение недельного моментума временного ряда на бессрочных контрактах ETH — знак одной трендовой статистики, длинная или короткая позиция, с трейлинг-стопом ATR и размером позиции, нацеленным на заданную волатильность, — чтобы заполнить недостаточно представленную в фабрике макронедельную корзину горизонтов. Бэктест прошёл без сбоев за 6.3 лет и 28 сделок; как и предполагалось, комиссии были незначительными (комиссия составила лишь 1.12% от валовой величины), так что причиной провала не стали комиссии. Но фактическая история результатов была отрицательной: фактор прибыли 0.9488, фактическое математическое ожидание -$1037 на сделку и бросающаяся в глаза заглавная доходность +197.8%, целиком обусловленная незакрытой финальной позицией; результат закрытых сделок был около -29%. Всё это сопровождалось просадкой 80% и коэффициентом Шарпа, неотличимым от нуля. На этапе проверки бэктеста аналитик отказался от стратегии с вердиктом «отказаться» (negative_expectancy) ещё до оптимизации: подгонка кривой по нескольким удачным окнам с правым хвостом не могла вывести выше нуля сигнал с отрицательным фактическим результатом, теряющий деньги в спокойном режиме.

Гипотеза

Стратегия моментума временного ряда LONG-SHORT по одному инструменту, чистая OHLCV, на бессрочном контракте ETHUSDT.BINANCE USD-M, выраженная в барах 1-WEEK при горизонте удержания MACRO. Заполняет наименее представленную в фабрике корзину горизонтов (macro_1w_plus = 0.6%). Без фильтра согласования NO, без фильтра режима/волатильности NO (L92), без корзины NO (L77/L88), без второго таймфрейма NO — максимально простое выражение: знак одной недельной трендовой статистики, длинная или короткая позиция, трейлинг-стоп ATR, параметры 2. Основная ставка: ETH демонстрирует многонедельную направленную устойчивость, а макрогоризонт делает комиссии структурно несущественными.

Буквально и минимально реализует гипотезу. (1) Один инструмент, один таймфрейм: ETHUSDT.BINANCE с основными барами 1-WEEK и без дополнительных составляющих — полностью заполняет корзину macro_1w_plus (предыдущая недельная попытка в корпусе провалилась из-за передачи конфигурации 1-DAY, поэтому bar_type везде недельный). (2) Знак тренда, длинные и короткие позиции, без фильтров: should_enter — чистая проверка знака трендовой статистики, без порога, фильтра режима или условия согласования, поэтому сочетание условий……Показать большеСвернуть

Буквально и минимально реализует гипотезу. (1) Один инструмент, один таймфрейм: ETHUSDT.BINANCE с основными барами 1-WEEK и без дополнительных составляющих — полностью заполняет корзину macro_1w_plus (предыдущая недельная попытка в корпусе провалилась из-за передачи конфигурации 1-DAY, поэтому bar_type везде недельный). (2) Знак тренда, длинные и короткие позиции, без фильтров: should_enter — чистая проверка знака трендовой статистики, без порога, фильтра режима или условия согласования, поэтому сочетание условий входа не может быть чрезмерно избирательным (известный режим отказа с нулём сделок); единственное предварительное условие — готовность деков. (3) Два настраиваемых параметра: momentum_lookback и atr_trail_mult; vol_lookback, atr_period, target_vol и max_notional_frac относятся к механизму разогрева/определения размера позиции, а каждое жёсткое ограничение в __init__ продублировано в _param_bounds, поэтому оптимизатор не ищет значения, которые код затем незаметно переписывает. (4) Непрерывный сигнал: t-статистика пересчитывается на каждом баре EVERY и возвращается в естественных единицах (подобных z-оценке); пути с фильтрацией «return 0.0» нет, кроме подлинного периода разогрева, поэтому сигнал меняется от бара к бару. (5) Фьючерсная площадка: для длинных и коротких позиций требуется счёт MARGIN, поэтому BINANCE USD-M, но плечо остаётся 1.0, поскольку целевая волатильность уже ограничивает номинал величиной не выше капитала — я намеренно не NOT устанавливал плечо выше 1, которое расчёт размера позиции не использовал бы. (6) min_bars_required() возвращает 2, поэтому базовый класс сразу начинает вызывать calculate_signal, а внутренние окна разогреваются с первых баров; защита от преждевременного входа находится в should_enter (окна заполнены, ATR и реализованная волатильность положительны), что не позволяет проходить разогрев дважды — именно этот дефект лишил сделок предыдущую недельную стратегию. При наличии примерно 333 недельных баров для ETHUSDT.BINANCE и разогреве примерно за 27 баров в окне песочницы для торговли доступно значительно больше 250 баров. (7) Трейлинг-стоп ATR проверяется по недельному закрытию, а не выставляется как биржевой ордер: вспомогательная функция для брекет-ордеров поддерживает только фиксированные проценты стопа/TP (но не перемещаемый вслед за ценой уровень), а отдельный пассивный стоп-ордер только для сокращения позиции — это неусловный активный ордер, который заглушал бы should_exit на всём протяжении жизни позиции. Важная оговорка: на недельном масштабе трейлинг-стоп может сработать только при закрытии, поэтому внутринедельный скачок цены за уровень не будет учтён — это свойство трейлинг-выхода на макрогоризонте, а не упрощение в коде.

Отрицательное математическое ожидание на надёжной выборке из 28 сделок за 6.3 лет: profit_factor 0.9488 (<1) и фактическое математическое ожидание USD -$1037/сделку. Заглавная величина +197.8% — артефакт: end_unrealized_pct 226.81% означает, что фактическая история закрытых сделок NEGATIVE (~-29%); бумажная прибыль целиком приходится на незакрытую финальную позицию. Ситуацию усугубляют максимальная просадка 80% и коэффициент Шарпа CI [-0.42, 0.95], пересекающий ноль. Преимущество недельной стратегии по одному инструменту, основанной на знаке тренда, исчезает в спокойном режиме и целиком зависит от правого хвоста (опасение QA подтверждено). Оптимизация не может вывести выше нуля сигнал с PF<1 и отрицательным фактическим результатом — 2 часов вычислений лишь привели бы к подгонке кривой по нескольким удачным окнам. abandon_class = negative_expectancy.

Реализация

Моментум временного ряда с длинными и короткими позициями по бессрочному контракту ETHUSDT.BINANCE USD-M, выраженный в барах 1-WEEK при макрогоризонте удержания. Каждую неделю стратегия рассчитывает трендовую статистику ONE — сумму логарифмических доходностей за последние N недель, делённую на (недельную реализованную сигму * sqrt(N)), то есть совокупную доходность за N недель в виде t-статистики, — и использует только её знак SIGN: длинная позиция при значении выше нуля, короткая — ниже нуля. Нет фильтра……Показать большеСвернуть

Моментум временного ряда с длинными и короткими позициями по бессрочному контракту ETHUSDT.BINANCE USD-M, выраженный в барах 1-WEEK при макрогоризонте удержания. Каждую неделю стратегия рассчитывает трендовую статистику ONE — сумму логарифмических доходностей за последние N недель, делённую на (недельную реализованную сигму * sqrt(N)), то есть совокупную доходность за N недель в виде t-статистики, — и использует только её знак SIGN: длинная позиция при значении выше нуля, короткая — ниже нуля. Нет фильтра согласования, режима или волатильности, второго таймфрейма, корзины или дополнительных данных. Позиции закрываются либо при смене знака статистики, либо при срабатывании трейлинг-стопа ATR (закрытие за пределами atr_trail_mult * недельной ATR от максимума / минимума с момента входа), после чего открывается позиция в противоположную сторону; таким образом, книга позиций фактически постоянно находится на рынке. Размер позиции нацелен на заданную волатильность: номинал = капитал * min(target_vol / реализованная годовая волатильность, max_notional_frac), ограниченный 1x капитала при плече 1.0; поэтому экспозиция сокращается, когда волатильность ETH растёт, вместо того чтобы накапливаться до катастрофического убытка. Оборот составляет лишь несколько сделок туда и обратно в год при движениях на сделку в десятки процентов, поэтому комиссия тейкера около 0.10% за сделку туда и обратно структурно несущественна при такой частоте.

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

Сбрасывать self._entry_side = None при закрытии позиции / когда _position_side() возвращает None, чтобы резервный вариант не сохранял устаревшую сторону.

should_exit() использует self._entry_side, если _position_side() сообщает об отсутствии позиции. Эта устаревшая сторона нужна лишь для удобства прокси Layer-2; в реальном бэктесте should_exit выполняется только при открытой позиции и потому не может вызвать фиктивный выход, однако _entry_side не сбрасывается при закрытии и может ввести в заблуждение при последующем сопровождении кода.

Недельный TSMOM на одном инструменте — пограничный класс с высокой дисперсией: в спокойном третиле волатильности (-25.8%, Sharpe -0.60) тестовая среда убыточна, а весь эффект сосредоточен в обычных и стрессовых режимах; Sharpe CI [-0.33, 1.23] охватывает ноль, и за весь период было лишь 28 сделок, поэтому эффект следования за трендом хрупок и может не сохраниться после статистической дефляции. Стоит следить за ожиданием на сделку USD на полной истории (avg_win $48 тыс. против avg_loss $18 тыс., win_rate 32%) — результат зависит от правого хвоста.

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

Шарп
0,40
Общая доходность
197,77%
Максимальная просадка
80,05%
Всего сделок
28
Доля прибыльных
32,1%
Профит-фактор
0,95

Чистый, минимальный механизм с 2 параметрами; сделки реализуют заявленную стратегию TSMOM на знаке недельного тренда (28 входов, 17 длинных / 11 коротких, сбалансированные длинные и короткие позиции, как и предполагалось).

Недельный макрогоризонт делает комиссии незначительными (комиссия составляет лишь 1.12% от валовой величины), поэтому это NOT смерть преимущества из-за комиссий.

Отрицательное математическое ожидание: profit_factor 0.9488 (<1) и avg_trade_pnl_usd -$1037/сделку на надёжной выборке из 28 сделок за 6.3 лет — совокупные валовые убытки превышают совокупную валовую прибыль.

Заглавная доходность +197.8% total_return — иллюзия переоценки по рынку: end_unrealized_pct 226.81% означает, что фактическая история закрытых сделок NEGATIVE (~-29%); вся бумажная прибыль приходится на незакрытую позицию на конец периода, которая может полностью развернуться.

max_drawdown 80.05% (CI 45.8–93.9%) — значительно выше любого приемлемого для реального применения уровня риска (L19: DD>50% никогда не выдерживал проверку).

win_rate 32%, коэффициент Шарпа 0.40 с интервалом CI [-0.42, 0.95], пересекающим ноль, information_ratio -0.55, recovery_factor -1, CAGR -100%.

В терциле низкой волатильности стратегия теряет деньги (-17.8%, коэффициент Шарпа -0.20); всё преимущество сосредоточено в нормальном и стрессовом режимах — опасение QA по поводу зависимости от правого хвоста подтверждается; годовая доходность катастрофична в 2023 (-89%) и 2024 (-237%).

Крошечное математическое ожидание на сделку USD отрицательное, хотя показатель avg_trade_return_pct равен 25% (pct_notional); убыточные сделки несут больший номинал, рассчитанный с учётом целевой волатильности, что подтверждает отсутствие преимущества, а не уязвимость к комиссиям.

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

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

Проверка бэктеста вынесла вердикт «отказаться» до оптимизации: отрицательное математическое ожидание (PF<1, фактическое математическое ожидание USD отрицательное) на надёжной выборке из 28 сделок, усугублённое просадкой 80% и коэффициентом Шарпа CI, пересекающим ноль; стратегия теряет деньги в спокойном режиме, а преимущество целиком зависит от правого хвоста.

Стратегия моментума временного ряда с длинными и короткими позициями по одному инструменту на ETHUSDT.BINANCE USD-M бессрочном контракте, использующая 1-недельные бары и только знак одной недельной трендовой t-статистики, с ATR трейлинг-стопом; ставка состоит в том, что многонедельная направленная устойчивость ETH на макрогоризонте делает комиссии структурно несущественными.

За бэктест длительностью 6.3 лет и 333 недель стратегия совершила 28 сделок (17 длинных / 11 коротких) с долей прибыльных 32%, коэффициентом Шарпа 0.40 (CI [-0.42, 0.95]), фактором прибыли 0.9488 и максимальной просадкой 80%. Заглавная совокупная доходность +197.8% была артефактом переоценки по рынку: end_unrealized_pct из 226.8% означает, что фактический результат закрытых сделок был отрицательным (~-29%), а фактическое математическое ожидание составляло -$1037/сделку.

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