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

Стратегии

SOL Межбиржевая кэрри-стратегия на финансировании: короткая позиция в бессрочном контракте Hyperliquid / длинная позиция на споте Binance при высоком финансировании HL (дельта-нейтральная, свечи 4H, сбор премии за финансирование розничных трейдеров с плечом на Hyperliquid, мало параметров)

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

SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H

Финансирование загружено и зачислено (22,291 событий, 52 сделок) — данные отражают реальную экономику, это не проблема с данными; дельта-нейтрально, ликвидаций нет

Гипотеза

DELTA-NEUTRAL, CROSS-VENUE керри-позиция на финансировании по SOL: LONG SOLUSDT.BINANCE_SPOT (денежная нога) + SHORT SOLUSD.HYPERLIQUID (нога бессрочного контракта, получающая финансирование); вход только когда реализованное финансирование Hyperliquid по SOL структурно RICH. Эта единственная гипотеза одновременно заполняет FOUR наиболее недопредставленных категорий: HYPERLIQUID площадка (7.3% против целевого значения >= 20% — самый большой дефицит площадок), BINANCE_SPOT (10.5% против >= 15%), cross_venue (6.6%……Показать большеСвернуть

DELTA-NEUTRAL, CROSS-VENUE керри-позиция на финансировании по SOL: LONG SOLUSDT.BINANCE_SPOT (денежная нога) + SHORT SOLUSD.HYPERLIQUID (нога бессрочного контракта, получающая финансирование); вход только когда реализованное финансирование Hyperliquid по SOL структурно RICH. Эта единственная гипотеза одновременно заполняет FOUR наиболее недопредставленных категорий: HYPERLIQUID площадка (7.3% против целевого значения >= 20% — самый большой дефицит площадок), BINANCE_SPOT (10.5% против >= 15%), cross_venue (6.6% против >= 15%) и направление не только в лонг (long_only составляет 84.1% против ограничения <= 55%). Стратегия намеренно использует бары 4H: свеча Hyperliquid API даёт лишь около 5000 свечей на интервал, а 4H — кратчайший интервал с примерно 2.3 годами пригодной истории; проект на 15м/1ч HL прошёл бы бэктестинг, но затем был бы оставлен из-за нехватки истории. CRITICAL DISTINCTION после неудачной сделки на разнице ставок финансирования CM-против-USD-M: она гналась за разницей около 1e-6 за -8ч DIFFERENTIAL между двумя почти идентичными бессрочными контрактами Binance и математически не могла покрыть комиссии. Эта идея использует уровень финансирования Hyperliquid ABSOLUTE для актива, популярного у розничных трейдеров с плечом; в периоды высокой активности он достигает 0.005-0.03% PER HOUR (HL выплачивается каждый час, а не раз в 8 часов) — то есть 0.12-0.72% за DAY, на один-два порядка выше полной стоимости сделки туда-обратно около 0.29% (спот Binance около 0.20% RT + бессрочный контракт HL около 0.09% RT). Керри — механический денежный поток, который короткая нога бессрочного контракта получает каждый час удержания; движок учитывает финансирование. Стратегия намеренно оставлена простой (4 параметров, без сканирования блокчейна, греков и потока коэффициента переполненности), чтобы избежать как отклонения из-за переобучения и завышенного коэффициента Шарпа, так и проблемы тайм-аута уровня -3, погубившей пять недавних гипотез.

Итерация 4, возобновлённая по амнистии за нулевое число сделок, изменила картину: ключевое число гипотезы неверно. Итерация 2 торговала с порогом 1.0e-5, и QA обоснованно признал результат ниже безубыточности, потребовав собственный диапазон высоких ставок гипотезы (0.005-0.03%/ч = 5.0e-5..3.0e-4); итерация 3 реализовала его точно и не совершила ни одной сделки за 5,408 свечей. Я измерил реальные данные вместо слепой перенастройки: hl_funding_rates для SOL, 8,550 почасовых значений, 2025-06-08..2026-08-07:……Показать большеСвернуть

Итерация 4, возобновлённая по амнистии за нулевое число сделок, изменила картину: ключевое число гипотезы неверно. Итерация 2 торговала с порогом 1.0e-5, и QA обоснованно признал результат ниже безубыточности, потребовав собственный диапазон высоких ставок гипотезы (0.005-0.03%/ч = 5.0e-5..3.0e-4); итерация 3 реализовала его точно и не совершила ни одной сделки за 5,408 свечей. Я измерил реальные данные вместо слепой перенастройки: hl_funding_rates для SOL, 8,550 почасовых значений, 2025-06-08..2026-08-07: среднее -3.9e-7/ч, стандартное отклонение 3.3e-5, MAX 6.18e-5, 99-й процентиль 1.91e-5; процентили с 75-го по -95-й зафиксированы на 1.25e-5 (базовый процентный компонент HL). Только 0.023% часов достигают 5.0e-5, а значение никогда не достигает 3.0e-4; значит, верхняя граница заявленного диапазона примерно на 5x выше исторического максимума. Поскольку стратегия использует скользящее значение за MEAN, потолок ещё ниже: максимум 3.13e-5 при 24ч, 2.42e-5 при 48ч, 1.98e-5 при 120ч. Порог 5.0e-5 недостижим при любом периоде расчёта; это причина нулевого числа сделок, и настройкой порога её не устранить. Поэтому запас на покрытие комиссий переносится с порога на срок удержания HOLD, с использованием собственного расчёта QA: срок безубыточности = round_trip/(порог x 24) = 0.29%/0.024%/день = 12.1 дней при пороге 1.0e-5. Я сохраняю достижимый порог (1.0e-5, на уровне или выше базового уровня HL), устанавливаю минимальное удержание 21 дней (покрытие кэрри около 1.7x) и разрешаю выход при снижении кэрри только после него; единственный досрочный выход — защита от непарной позиции. Симуляция на реальном ряду финансирования с учётом сделки туда-обратно стоимостью 0.29%: 9 сделок за 14 месяцев, чистый результат +0.151% на сделку и среднее удержание 28.8 дней; либо +0.342% на сделку при 7 сделках и минимальном сроке 30 дней — положительно и выше минимального результата 0.15% на сделку. Также я заменил счётчик свечей, относительный ко времени работы процесса, на календарное время из метки времени свечи (одинаковое после перезапуска и при повторном воспроизведении) и объявил _param_bounds. Честный предел, указанный заранее: около 2%/год при 5-9 сделках в год с удержанием по несколько недель; этого недостаточно для заполнения окон walk-forward-анализа OOS или отложенной выборки в 15 дней, а колебание базиса спота SOL против бессрочного контракта HL за 30 дней легко превышает защищаемую им кэрри. Ожидаю результат около безубыточности, который невозможно измерить, и отказ от стратегии при проверке бэктеста — не из-за ошибки в коде, а потому что предпосылка гипотезы о кэрри 0.12-0.72%/день завышает данные на один-два порядка.

Дельта-нейтральный доход от финансирования ниже минимального уровня и с отрицательным ожиданием; его предпосылка опровергнута реальными данными — не стоит тратить 2 часов на оптимизацию. Движок засчитал финансирование IS (22,291 событий, 52 сделок), так что это реальный экономический результат, и он всё равно неудовлетворителен: avg_trade_return_pct 0.074% ниже порога жизнеспособности 0.15%, profit_factor 1.096, total_return -1.48% за примерно 2.6 лет, коэффициент Шарпа -0.29, причём CI [-1.32, 1.01] охватывает……Показать большеСвернуть

Дельта-нейтральный доход от финансирования ниже минимального уровня и с отрицательным ожиданием; его предпосылка опровергнута реальными данными — не стоит тратить 2 часов на оптимизацию. Движок засчитал финансирование IS (22,291 событий, 52 сделок), так что это реальный экономический результат, и он всё равно неудовлетворителен: avg_trade_return_pct 0.074% ниже порога жизнеспособности 0.15%, profit_factor 1.096, total_return -1.48% за примерно 2.6 лет, коэффициент Шарпа -0.29, причём CI [-1.32, 1.01] охватывает ноль, PSR 0.32, а avg_loss ($5020) превышает avg_win ($4714). Ключевое число гипотезы количественно неверно: предполагалось 0.12-0.72%/день дохода от финансирования Hyperliquid, но разработчик измерил фактическое финансирование SOL HL при базовом уровне около 1.25e-5/ч (исторический максимум около 6.18e-5/ч ≈ 0.03%/день) — в десять-сто раз ниже заявленного; фильтр «высокого» уровня недостижим при любом периоде расчёта, такого режима нет. Крошечный фактический доход от финансирования перекрывается базисом между площадками: return_kurtosis 84.5 и перекос -5.4 показывают, что колебания базиса спот Binance и бессрочного контракта Hyperliquid за 30 дней SOL больше дохода от финансирования, который они должны компенсировать. Это тот же профиль дельта-нейтрального дохода от финансирования, засчитанного движком, но убыточного, что и у стратегий переноса спот—бессрочный контракт BTC/SOL, от которых отказались в этой сессии (доход меньше стоимости сделки туда и обратно и ошибки отслеживания базиса). В собственной документации разработчика этот вывод сформулирован заранее: «правильное решение при проверке бэктеста — ABANDON… поскольку предпосылка гипотезы завышает данные реального потока в десять-сто раз». Никакая настройка entry_gate/min_hold_days не создаст премию, которой нет в потоке данных, а увеличение срока удержания лишь добавит риск базиса. Характер неудачи: fee_edge/no_edge дельта-нейтральный доход от финансирования, исходная предпосылка опровергнута.

Реализация

Дельта-нейтральная межбиржевая кэрри-стратегия на финансировании для SOL, свечи 4H: LONG SOLUSDT.BINANCE_SPOT (денежная нога) и SHORT SOLUSD.HYPERLIQUID (нога бессрочного контракта, получающая финансирование). Номиналы равны USD, поэтому направленная экспозиция SOL компенсируется, а прибыль и убыток складываются из денежного потока финансирования за вычетом комиссий. Непрерывная переменная решения, возвращаемая на каждой свече, — скользящее среднее фактического почасового финансирования Hyperliquid по SOL за……Показать большеСвернуть

Дельта-нейтральная межбиржевая кэрри-стратегия на финансировании для SOL, свечи 4H: LONG SOLUSDT.BINANCE_SPOT (денежная нога) и SHORT SOLUSD.HYPERLIQUID (нога бессрочного контракта, получающая финансирование). Номиналы равны USD, поэтому направленная экспозиция SOL компенсируется, а прибыль и убыток складываются из денежного потока финансирования за вычетом комиссий. Непрерывная переменная решения, возвращаемая на каждой свече, — скользящее среднее фактического почасового финансирования Hyperliquid по SOL за funding_lookback значений. Пара открывается, когда среднее не ниже entry_gate, и закрывается, когда оно опускается до exit_gate, но только после min_hold_days: кэрри покрывает общую стоимость сделки туда-обратно около 0.29% (спот Binance 0.20% + бессрочный контракт HL 0.09%) с запасом ACCRUING, а не за счёт высокого порога. При установленном пороге безубыточность наступает через 12.1 дней, поэтому минимальное удержание 21 дней даёт покрытие около 1.7x. Жёсткий тайм-аут max_hold_days и защита от непарной позиции (любая отдельно открытая нога немедленно закрывается) ограничивают риск. Время удержания берётся из метки времени самой свечи, поэтому одинаково при перезапуске, бэктесте и воспроизведении бумажной торговли. Ряд финансирования разбирается один раз в отсортированные массивы; на каждой свече выполняется один поиск searchsorted. Если ряд финансирования недоступен, стратегия остаётся вне рынка и не подменяет его сигналом цены или базиса.

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

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

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

Шарп
-0,29
Общая доходность
-1,48%
Максимальная просадка
1,49%
Всего сделок
52
Доля прибыльных
53,8%
Профит-фактор
1,10

Финансирование загружено и зачислено (22,291 событий, 52 сделок) — данные отражают реальную экономику, это не проблема с данными; дельта-нейтрально, ликвидаций нет

Вычислительно эффективно (поиск ставок финансирования O(log n)); исполнения приходятся на недопредставленные категории HL/межбиржевой торговли

avg_trade_return_pct 0.074% — ниже порога жизнеспособности 0.15%; PF 1.096, total_return -1.48%, коэффициент Шарпа -0.29 (CI [-1.32,1.01]), PSR 0.32; avg_loss > avg_win

Предпосылка неверна: реальная базовая ставка финансирования SOL HL около 1.25e-5/ч (макс. около 0.03%/день) против заявленных 0.12-0.72%/день — завышение на 1-2 порядков; режима повышенной ставки нет

Шум базиса доминирует: return_kurtosis 84.5, асимметрия -5.4 — колебания базиса спот против бессрочного контракта за 30 дней превышают доход от кэрри

Разработчик заранее зарегистрировал ABANDON в строке документации, опираясь именно на эти данные

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

Проверка не пройдена (Layer 2 — синтетические сценарии): Использованные параметры: ['min_bars', 'exit_gate', 'entry_gate', 'capital_frac', 'min_notional', 'max_hold_bars', 'qty_precision', 'min_funding_pts', 'funding_lookback', 'spot_instrument_id', 'supplementary_data'] Убедись, что __init__ задаёт все атрибуты из self.parameters.get(). - steady_uptrend: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара:……Показать большеСвернуть

Проверка не пройдена (Layer 2 — синтетические сценарии): Использованные параметры: ['min_bars', 'exit_gate', 'entry_gate', 'capital_frac', 'min_notional', 'max_hold_bars', 'qty_precision', 'min_funding_pts', 'funding_lookback', 'spot_instrument_id', 'supplementary_data'] Убедись, что __init__ задаёт все атрибуты из self.parameters.get(). - steady_uptrend: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара: 1735690740000) - steady_downtrend: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара: 1735690740000) - flat_ranging: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара: 1735690740000) - volatility_spike: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара: 1735690740000) - zero_volume: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара: 1735690740000) - price_gap: TypeError: SolCrossVenueFundingCarryShortHlLongBinanceSpotNeutral4H._bar_ts() принимает 1 позиционный аргумент, но передано 2 (временная метка бара: 1735690740000)

Проверка (уровень 4 — обзор QA): - Значение по умолчанию/настройка entry_gate = 1.0e-5 в час, но гипотеза явно определяет пригодный для торговли режим «структурно RICH» как 0.005-0.03% PER HOUR (то есть от 5.0e-5 до 3.0e-4). Запрограммированный фильтр — от 5x до 30x BELOW собственного указанного в гипотезе высокого диапазона и фактически BELOW нейтрального уровня финансирования Hyperliquid (только процентная составляющая ставки HL равна 0.01%/8ч = 1.25e-5 в час). Поэтому фильтр пропускает обычное базовое……Показать большеСвернуть

Проверка (уровень 4 — обзор QA): - Значение по умолчанию/настройка entry_gate = 1.0e-5 в час, но гипотеза явно определяет пригодный для торговли режим «структурно RICH» как 0.005-0.03% PER HOUR (то есть от 5.0e-5 до 3.0e-4). Запрограммированный фильтр — от 5x до 30x BELOW собственного указанного в гипотезе высокого диапазона и фактически BELOW нейтрального уровня финансирования Hyperliquid (только процентная составляющая ставки HL равна 0.01%/8ч = 1.25e-5 в час). Поэтому фильтр пропускает обычное базовое финансирование, а не режим высокого дохода — это фильтр «всегда включён», а не фильтр отбора. Бэктест подтверждает: exposure_pct=105.27%, 50 сделок туда и обратно за 169 дней, среднее удержание 8д 9ч — книга практически постоянно находится на рынке. Расчёт комиссий при заданном фильтре: доход от финансирования 1e-5/ч x 24 = 0.024%/день против полной стоимости сделки туда и обратно около 0.29% (BINANCE_SPOT 0.20% RT + HYPERLIQUID бессрочных контрактов 0.09% RT) = 12.1 дней до безубыточности при наблюдаемом среднем удержании 8.4 дней. При этом пороге стратегия структурно не достигает безубыточности, что и показывает песочница (total_return -2.06%, profit_factor 0.96, комиссия 4.22% от валового результата). При указанном в гипотезе пороге (5e-5/ч = 0.12%/день) безубыточность достигается примерно за 2.4 дней, и доход от финансирования покрывает комиссии с реальным запасом. Код реализует другую, нежизнеспособную версию заявленного преимущества. - exit_gate = 0.0 означает, что пара удерживается, пока скользящее среднее финансирования за последние HL не станет строго NEGATIVE. В гипотезе сказано выходить, когда «доход от финансирования иссяк». Ноль — это не «иссякание»: любое финансирование в диапазоне (0, 5e-5) положительное, но ниже безубыточности, а при exit_gate=0.0 книга остаётся открытой сколь угодно долго при почти базовом финансировании, которое приносит меньше комиссий при стоимости сделки туда и обратно около 0.29%. В сочетании с max_hold_bars=180 (30 дней) позиция может терять деньги целый месяц до срабатывания тайм-аута. Это непосредственно объясняет наблюдаемую profit_factor величиной 0.96. - Защита от открытия одной ноги после отправки заявок на выход задаёт self._entry_bar = None, однако заявки исполняются только на следующем баре. Если на следующем баре обе ноги всё ещё открыты, ветка пары вычисляет held = 0 (поскольку _entry_bar равен None), и max_hold_bars для этой пары уже никогда не срабатывает — тайм-аут незаметно отключён до следующего корректного входа. Проверка carry_gone по-прежнему действует, поэтому это не фатально, но заявленный временной стоп не гарантирован. - calculate_signal оборачивает весь вызов _manage() в голый `except Exception: pass`, а _positions() аналогично подавляет все исключения кэша. Любой систематический сбой при отправке заявок, расчёте размера позиции или получении данных о позициях выглядит как «стратегия просто не торговала», а не как ошибка, что лишает прозрачности и уровень Layer-3, и отладку в реальной торговле.

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

Проверка не пройдена (уровень 4 — проверка QA): - Ключевая предпосылка гипотезы эмпирически неверна: разработчик измерил её на реальном потоке данных (hl_funding_rates для SOL, 8,550 почасовых точек, 2025-06..2026-08): среднее -3.9e-7/ч, MAX 6.18e-5, 99-й процентиль 1.91e-5, а 75-95-е процентили закреплены на базовом уровне 1.25e-5 площадки HL. Заявленный в гипотезе «высокий» диапазон 0.005-0.03%/ч (5.0e-5..3.0e-4) недостижим: его верхняя граница примерно на 5x выше исторического максимума, и значение никогда не……Показать большеСвернуть

Проверка не пройдена (уровень 4 — проверка QA): - Ключевая предпосылка гипотезы эмпирически неверна: разработчик измерил её на реальном потоке данных (hl_funding_rates для SOL, 8,550 почасовых точек, 2025-06..2026-08): среднее -3.9e-7/ч, MAX 6.18e-5, 99-й процентиль 1.91e-5, а 75-95-е процентили закреплены на базовом уровне 1.25e-5 площадки HL. Заявленный в гипотезе «высокий» диапазон 0.005-0.03%/ч (5.0e-5..3.0e-4) недостижим: его верхняя граница примерно на 5x выше исторического максимума, и значение никогда не достигает 3.0e-4. Предположение о керри 0.12-0.72%/день завышает показатели реального потока данных в десять-сто раз; у финансирования SOL HL нет режима высоких ставок, есть только базовый уровень около 1.25e-5/ч. Заявленного масштаба преимущества, которое стратегия должна была использовать, не существует. - Неудача из-за комиссий и отсутствия преимущества усугубляется неконтролируемым базисным риском между площадками (пункт списка проверки №7). Поскольку высокий порог недостижим, дизайн полностью возлагает обеспечение запаса сверх комиссий на минимальное удержание в 21+ дней; за это время накапливается лишь BASELINE финансирования, необходимого для покрытия полной стоимости сделки туда-обратно около 0.29%. Но при удержании в несколько недель колебания BASIS между спотовым Binance и бессрочным контрактом HL доминируют: песочница показывает avg_win $6,247 против avg_loss $6,389 — колебания на порядки больше керри в доли процента — итог: total_return -0.998%, PF 0.978, avg_trade_return_pct -0.021% за 20 сделок (среднее удержание 25.7 дней). Позиция дельта-нейтральна относительно SOL DIRECTION, но подвержена базису между площадками NOT, который и определяет основную часть результата. Симуляция разработчика без торгового движка с +0.151% на сделку оптимистична именно потому, что учитывает комиссии только против финансирования и игнорирует результат по базису, который включает реальный бэктест; итог реального бэктеста отрицательный. - Результат неизмерим (L16/L26). При 5-9 сделках в год и удержании по 21-30 дней стратегия не может сформировать 3 окон walk-forward-анализа OOS или период вне выборки длиной 15 дней — разработчик прямо это указывает. Даже 20 сделок песочницы за 364 дней означают удержание по несколько недель, поэтому последующие проверки DSR/OOS/периода вне выборки не располагают пригодной выборкой.

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