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

Стратегии

ETH Контртрендовый разворот по экстремальной ставке финансирования Hyperliquid: позиционирование лонг-шорт (один инструмент, бессрочный контракт ETHUSD.HYPERLIQUID, бары DAILY — торговать против перегруженных кредитным плечом позиций толпы при статистическом экстремуме ставки финансирования, рассчитывая на возврат PRICE, а не на купон; параметров: 3)

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

EthHyperliquidFundingExtremeContrarianReversalLS

Исправление -3 с JSON ключом работает: поток ставок финансирования теперь разбирается, стратегия торгует 73 раз — выборка измерима

Гипотеза

Стратегия LONG-SHORT по одному инструменту с барами DAILY на ETHUSD.HYPERLIQUID: бессрочная ставка FUNDING RATE служит контрарианским индикатором POSITIONING, а сделки рассчитаны на последующий возврат PRICE к среднему. Это именно стратегия NOT переноса ставки финансирования (L33): мы не держим дельта-нейтральный портфель ради купона 8h — он не покрывает комиссии, поэтому весь этот класс стратегий бесперспективен. Вместо этого экстремальное значение ставки финансирования указывает на чрезмерно перегруженные……Показать большеСвернуть

Стратегия LONG-SHORT по одному инструменту с барами DAILY на ETHUSD.HYPERLIQUID: бессрочная ставка FUNDING RATE служит контрарианским индикатором POSITIONING, а сделки рассчитаны на последующий возврат PRICE к среднему. Это именно стратегия NOT переноса ставки финансирования (L33): мы не держим дельта-нейтральный портфель ради купона 8h — он не покрывает комиссии, поэтому весь этот класс стратегий бесперспективен. Вместо этого экстремальное значение ставки финансирования указывает на чрезмерно перегруженные позиции с высоким плечом в одну сторону, а EDGE — это многодневный резкий возврат цены, когда участники вынуждены закрывать позиции. Такое движение (~3-8% на ETH) на порядок больше купона или комиссии за полный цикл сделок ~0.09% HL. Стратегия закрывает два крупнейших структурных пробела после опционов: площадка HYPERLIQUID (6.3% против квоты ≥20% — это действительно меняет долю площадок, отдаляя её от 71% Binance) и направление long_short (13.6% против портфеля только в лонг на 86%). Используются бары DAILY, поэтому ограничение истории HYPERLIQUID примерно в 5000 свечей не мешает: 1d охватывает всю историю с 2020, позволяя избежать проблемы субчасового HL. Стратегия отличается от недавней контрарианской идеи Binance RetailCrowding: здесь другая площадка, а сигналом служит финансирование — прямой денежный поток, — а не соотношение лонг/шорт у крупных трейдеров. Используются только 3 параметров и намеренно LOW частота сделок: подходят лишь статистически экстремальные значения ставки финансирования. Это снижает риск переобучения, погубившего 259 прежних гипотез, и удерживает влияние комиссий на минимальном уровне. Сочетание с импульсом или трендом NOT исключено: такие подходы исчерпаны и переобучены. Это не скальперская стратегия NOT на микроструктуре тиков и стакана: подобные стратегии неоднократно погибали из-за отсутствия сделок, тайм-аутов и смены инструментов. Здесь сигналы формируются по барам, а дополнительный фильтр играет вспомогательную роль.

Итерация 3 исправляет именно описанный сбой Layer-3 (should_enter возвращал сторону 0 раз) одним локальным изменением в _build_funding, не затрагивая сигнал, логику входа/выхода и расчёта размера позиции, уже прошедшую Layers 1-2. Причина: песочница Layer-3 сериализует supplementary_data в подпроцесс бэктеста через json.dump (src/backtesting/subprocess_runner.py:143), а JSON преобразует все целочисленные ключи словаря в строки. Мой прежний парсер пропускал строковые ключи, чтобы не учитывать значения дважды из-за……Показать большеСвернуть

Итерация 3 исправляет именно описанный сбой Layer-3 (should_enter возвращал сторону 0 раз) одним локальным изменением в _build_funding, не затрагивая сигнал, логику входа/выхода и расчёта размера позиции, уже прошедшую Layers 1-2. Причина: песочница Layer-3 сериализует supplementary_data в подпроцесс бэктеста через json.dump (src/backtesting/subprocess_runner.py:143), а JSON преобразует все целочисленные ключи словаря в строки. Мой прежний парсер пропускал строковые ключи, чтобы не учитывать значения дважды из-за зеркала загрузчика с ключами int и str; поэтому после этого перехода JSON он разобрал 0 из ETH значений финансирования 16,314 HL, _feed_ok оставался False на каждом баре, и входы не могли сработать. Теперь _build_funding принимает ключи и типа int, и типа str и устраняет дубликаты в словаре {ns: rate}, так что зеркало с двумя типами ключей не приводит к повторному учёту, а поток только со строковыми ключами разбирается полностью. Проверено повторным воспроизведением реального файла ETH hl_funding_rates после цикла json.dumps/loads с каталоговыми ETHUSD.HYPERLIQUID 1-DAY барами за точное окно песочницы в 365 дней: прежний разбор -> 0 точек финансирования, 0 входов; новый разбор -> 16,314 точек, частота около 24/день, 81 дней начальной истории и 45 сигналов входа (43 длинных, 2 коротких). Пустой поток по-прежнему намеренно даёт ноль сделок и однократное сообщение WARNING, поэтому настоящий сбой передачи данных можно отличить от чрезмерно строгого порога. Плечо остаётся 1.0 (используется только как предел валового номинала), поскольку преимущество основано на возврате цены, а не на увеличении экспозиции; риск на сделку ограничен 2% капитала на каждый L15.

Контртрендовый разворот на одном бессрочном контракте с фильтром по ставке финансирования имеет отрицательное математическое ожидание — оптимизировать здесь нечего. Исправление в итерации -3 заставило стратегию торговать (73 сделок за окно покрытия ставками финансирования длительностью около 3 лет), и результат однозначно отрицательный: total_return -9.95%, avg_trade_return_pct -0.642% (отрицательный), profit_factor 0.89, ожидание -$78/сделку, коэффициент Шарпа -0.076, а бутстрэп-интервал CI [-0.881, 0.687]……Показать большеСвернуть

Контртрендовый разворот на одном бессрочном контракте с фильтром по ставке финансирования имеет отрицательное математическое ожидание — оптимизировать здесь нечего. Исправление в итерации -3 заставило стратегию торговать (73 сделок за окно покрытия ставками финансирования длительностью около 3 лет), и результат однозначно отрицательный: total_return -9.95%, avg_trade_return_pct -0.642% (отрицательный), profit_factor 0.89, ожидание -$78/сделку, коэффициент Шарпа -0.076, а бутстрэп-интервал CI [-0.881, 0.687] пересекает ноль (PSR 0.457, IR -0.79); при этом avg_loss превышает avg_win, несмотря на долю прибыльных сделок 52%. Стратегия ухудшается, а не возвращается к среднему: 2023/2024 слегка положительный, затем 2025 -9.5% и 2026 -0.26%; скользящий коэффициент Шарпа отрицателен на всём недавнем (контрольном) окне, а результат отрицательный в терцилях как обычной, так и стрессовой волатильности. Это класс направленных стратегий на одном бессрочном контракте Hyperliquid без единого выжившего (0/128, L82), пересекающийся с семейством направленных стратегий на одном бессрочном контракте с фильтром по ставке финансирования и дополнительными условиями (L73, в этой сессии преимущество исчерпано): предположение «играть против толпы при экстремальной ставке финансирования» не даёт положительного отскока цены на этой площадке и этом активе. 73 сделок — достаточная для оценки выборка; сигнал опровергнут, а не проверен на слишком малой выборке: настройка entry_z/stop_atr_mult/risk_frac не изменит механизм с PF-0.89 и ожиданием -0.64% на сделку. Единственное переосмысление — торговать в направлении ставки финансирования как импульса — будет другой гипотезой, а не изменением параметров. Тип неудачи: no_edge контртрендовая стратегия на одном бессрочном контракте с фильтром по ставке финансирования, HL направленная (L73/L82).

Реализация

Контртрендовая стратегия лонг-шорт на дневных барах по бессрочному контракту ETHUSD Hyperliquid. Ставка финансирования HL используется как показатель перегруженности позиционирования, а не как купон: на каждом баре значения hl_funding_rates за предыдущие 24ч агрегируются в дневной показатель с поправкой на полноту данных и оцениваются как устойчивый z-скор медианы/MAD скользящий за последние 90 валидных дней. Сигнал равен -z (непрерывный, рассчитывается на каждом баре), поэтому его знак задаёт направление сделки:……Показать большеСвернуть

Контртрендовая стратегия лонг-шорт на дневных барах по бессрочному контракту ETHUSD Hyperliquid. Ставка финансирования HL используется как показатель перегруженности позиционирования, а не как купон: на каждом баре значения hl_funding_rates за предыдущие 24ч агрегируются в дневной показатель с поправкой на полноту данных и оцениваются как устойчивый z-скор медианы/MAD скользящий за последние 90 валидных дней. Сигнал равен -z (непрерывный, рассчитывается на каждом баре), поэтому его знак задаёт направление сделки: при глубоко отрицательной ставке (толпа набрала шорты) стратегия покупает, при глубоко положительной (толпа набрала лонги) — продаёт. Вход срабатывает, когда |сигнал| превышает entry_z сигмы; нижняя граница задаётся 95-м процентилем |сигнала|, поэтому порог не зависит от распределения. Выход — по стопу 1.5x ATR, цели 2.0x ATR, нормализации сигнала позиционирования или временному стопу через 7 баров. Риск при срабатывании стопа составляет 2% капитала, валовый номинал ограничен 0.75x капитала. При отсутствии потока ставок финансирования стратегия остаётся вне рынка — запасного варианта, основанного только на цене, нет.

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

CLEAN RESTART 2026-09-04 — история вердиктов и записи об обучении этого запуска удалены, проверка начата заново. Прежний отказ был вызван конвейером, а не рынком: тестовый стенд Layer-2 неверно привязывал вспомогательные методы @staticmethod (исправлено), QA выносил окончательные вердикты о доходности по неоптимизированному дымовому тесту (удалено — теперь QA оценивает только корректность), а тайм-ауты песочницы возникали из-за нехватки слотов для бэктеста (исправлено). Гипотеза и код стратегии не изменились. Оцени код по существу; доходность будет определена позже полным бэктестом и оптимизатором.

Малая выборка / вероятно, покрытие ограничено: 48 сделок, коэффициент Шарпа CI пересекает ноль, все 2021-2024 стрессовых окна без изменений на уровне 0.0 — это согласуется с тем, что поток ставок финансирования HL охватывает лишь около 2023+ вместо полной 6-летней истории баров. Фильтр входа (entry_z 2.5, порог по 95-му процентилю) намеренно рассчитан на редкие сделки. Это не ошибка; параметры можно настроить оптимизатором. Проверь покрытие, оцени стратегию на покрытом подпериоде и попробуй ослабить entry_z, сохранив доходность на сделку выше порога комиссии HL; откажись от стратегии, если коэффициент Шарпа останется около 0.

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

Шарп
-0,08
Общая доходность
-9,95%
Максимальная просадка
20,54%
Всего сделок
73
Доля прибыльных
52,1%
Профит-фактор
0,89

Исправление -3 с JSON ключом работает: поток ставок финансирования теперь разбирается, стратегия торгует 73 раз — выборка измерима

Чистая конструкция с одним инструментом и одной площадкой, низкая частота, комиссии почти не влияют на результат (комиссия 4.2% от валового объёма); действительно заполняет корзины HL/лонг-шорт

Просадка ограничена значением 20.5% — обвала или ликвидации не было

Отрицательное ожидание: total_return -9.95%, avg_trade_return_pct -0.642%, profit_factor 0.89, ожидание -$78/сделку; avg_loss > avg_win

Коэффициент Шарпа -0.076; интервал CI [-0.881, 0.687] пересекает ноль, PSR 0.457, IR -0.79 — преимущества нет, точечная оценка отрицательная

Ухудшение: 2025 -9.5% и 2026 -0.26%; скользящий коэффициент Шарпа отрицателен на всём недавнем (контрольном) окне; убыток в терцилях обычной и стрессовой волатильности

Стек классов без единого выжившего: HL направленная стратегия на одном бессрочном контракте (0/128, L82) + направленная стратегия на одном бессрочном контракте с фильтром по ставке финансирования или дополнительным условием (L73)

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

Проверка не пройдена (Layer 3 — бэктест в песочнице): сделок нет Тип бара: ETHUSD.HYPERLIQUID-1-DAY-LAST-EXTERNAL, обработано баров: 371 Диагностика: should_enter() возвращал сторону 0 раз на 341 проверенных барах -> ваш ENTRY CONDITION ни разу не сработал. Ослабьте логику входа или пороги. Убедитесь, что стратегия совершает сделки с предоставленными данными и параметрами.

Проверка не пройдена (Layer 3 — бэктест в песочнице): сделок нет Тип бара: ETHUSD.HYPERLIQUID-1-DAY-LAST-EXTERNAL, обработано баров: 370 Диагностика: should_enter() возвращал сторону 0 раз на 349 проверенных барах -> ваш ENTRY CONDITION ни разу не сработал. Ослабьте логику входа или пороги. Убедитесь, что стратегия совершает сделки с предоставленными данными и параметрами.

Проверка не пройдена (Layer 4 — проверка QA): - SUB-100-TRADE, STATISTICALLY UNMEASURABLE SAMPLE из-за намеренно редкого фильтра. Песочница получила total_trades=19 за 363 data_days, а у коэффициента Шарпа 0.599 интервал CI [-1.14, 2.06], который STRADDLES ZERO; то есть при таком объёме выборки преимущество статистически неотличимо от его отсутствия. Стратегия намеренно торгует редко (подходят только экстремумы ставки финансирования |z|>=2.5), поэтому около 19 сделок в год — ожидаемая частота. Но история ставок……Показать большеСвернуть

Проверка не пройдена (Layer 4 — проверка QA): - SUB-100-TRADE, STATISTICALLY UNMEASURABLE SAMPLE из-за намеренно редкого фильтра. Песочница получила total_trades=19 за 363 data_days, а у коэффициента Шарпа 0.599 интервал CI [-1.14, 2.06], который STRADDLES ZERO; то есть при таком объёме выборки преимущество статистически неотличимо от его отсутствия. Стратегия намеренно торгует редко (подходят только экстремумы ставки финансирования |z|>=2.5), поэтому около 19 сделок в год — ожидаемая частота. Но история ставок финансирования Hyperliquid у ETH охватывает лишь около 2-3 лет, поэтому даже бэктест на FULL интервале даёт намного меньше примерно 100 сделок, необходимых, чтобы отличить преимущество от шума (согласно записи L16). Это то же семейство стратегий на возврат ставки финансирования, которое L16 прямо называет повторяющейся тратой времени: «возврат ставки финансирования (6 итераций до no_trades)» XRP, а другие варианты таких стратегий прекращались после получения измеримой выборки или из-за отсутствия сделок, потратив итерации. При том что profit_factor 1.90 и win_rate 0.58 основаны на 19 сделках, а return_skew 2.46 / эксцесс 31.7 показывают, что прибыль и убытки определяются несколькими экстремальными сделками, эти ключевые показатели нельзя считать свидетельством реального и воспроизводимого преимущества. - Стратегия представлена как LONG-SHORT (это важная часть обоснования — «помогает выполнить квоту по направлениям, 13.6% против портфеля только с лонгами 86%»), но в песочнице оказалось 19 LONG сделок и ZERO шортов (long_trades 19 / short_trades 0); автономный повторный прогон разработчика дал 43 лонгов и 2 шортов. Значит, на этой выборке стратегия фактически LONG-ONLY; при benchmark_correlation 0.41 / бете 0.0375 к стратегии «купи и держи» на растущем рынке ETH значительная часть доходности может приходиться на ETH бета лонгов, а не на заявленное симметричное контртрендовое преимущество от возврата цены. Это также ослабляет обоснование для включения в портфель: стратегия фактически не добавляет короткую экспозицию. Учти и то, что ставка финансирования бессрочных контрактов ETH структурно POSITIVE большую часть времени (лонги платят), поэтому контртрендовое правило должно, если уж на то пошло, чаще открывать SHORTS, чем лонги. Фактический результат только по лонгам противоположен этому и требует объяснения, прежде чем доверять утверждению LS. - Заявленная max_drawdown — 3.21 (321%, CI [1.80, 8.16]) при плече=1.0, risk_frac=0.02 (заявленный риск при стопе — около 2% капитала) и avg_position_pct около 25%. Просадка выше 100% неправдоподобна для стратегии с параметрами 1x и риском 2% на сделку; это говорит, что фактический риск на сделку намного выше заявленного ограничения и/или есть аномалия в показателях, которую аналитику следует проверить. Причина: стоп ATR проверяется по CLOSE бара DAILY (get_position_pnl_pct на self._closes[-1]), поэтому при большом падении за день цена перескакивает THROUGH стоп 1.5-ATR, и убыток намного превышает 2%. Это согласуется с тем, что largest_loss -$2392 составляет около 3x $864 и примерно 4x от задуманной единицы риска avg_win. Поэтому обещание «один стоп стоит около risk_frac капитала» не выполняется в дни ценовых разрывов.

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