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

Стратегии

Схождение логарифма отношения LTC/BCH на бессрочных контрактах Bybit, устойчивый к окну якорь EWMA, вход с порогом комиссий, фильтр всплеска объёма одного актива (4H, долларово-нейтральная стратегия)

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

LtcBchBybitLogRatioEwmaConvergence

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

В этой гипотезе к сделке на схождение цены бессрочного контракта LTC/BCH на Bybit применены три правила из ответа на quant.stackexchange: якорь, устойчивый к разной длине окна, абсолютный порог комиссий 6% для входа и фильтр структурного слома по асимметрии объёмов. За 3 итераций разработчик ускорил обработку объёма и медианы на каждом баре в итерации 2, а в итерации 3 исправил несогласованность конфигурации параметра плеча. Стратегия всё равно превысила лимит времени в бэктесте песочницы уровня 3 (более 300 с на примерно 20000 барах 4H), и её забросили в цикле верификации. До бэктестинга, оптимизации, проверки аналитиком и оценки рисков дело не дошло, поэтому торговая гипотеза остаётся непроверенной.

Гипотеза

Источник: Sixk, «Парный трейдинг — длина истории для расчёта спреда», quant.stackexchange.com/questions/80948, а также ответ «THATS MY QUANT» (quant.stackexchange.com/a/80953). В вопросе рассматривается парная торговля криптовалютными бессрочными контрактами на основе коинтеграции и z-оценки; результаты заметно меняются в зависимости от периода ретроспективного расчёта (200 против 500 свечей). В ответе сформулированы три правила: (1) не выбирать окно по бэктесту или p-значению; (2) измерять, достаточно ли велико……Показать большеСвернуть

Источник: Sixk, «Парный трейдинг — длина истории для расчёта спреда», quant.stackexchange.com/questions/80948, а также ответ «THATS MY QUANT» (quant.stackexchange.com/a/80953). В вопросе рассматривается парная торговля криптовалютными бессрочными контрактами на основе коинтеграции и z-оценки; результаты заметно меняются в зависимости от периода ретроспективного расчёта (200 против 500 свечей). В ответе сформулированы три правила: (1) не выбирать окно по бэктесту или p-значению; (2) измерять, достаточно ли велико расхождение, чтобы покрыть комиссии и проскальзывание; (3) выяснить, почему существует связь между активами и когда она нарушается, и тогда оставаться вне рынка. Эта гипотеза объединяет все три правила в одной конструкции. PAIR AND REASON: LTCUSDT.BYBIT и линейные бессрочные контракты BCHUSDT.BYBIT. Оба актива — форки платёжной системы на основе кода Bitcoin с механизмом PoW, появившиеся в эпоху 2011-2017. Они относятся к одной биржевой категории «устаревших PoW-активов» и имеют в основном общую базу держателей и маркет-мейкеров, без нарратива DeFi или L2, который мог бы раздвинуть их цены. Поэтому относительная цена в основном определяется общей бетой старых монет и временными дисбалансами потоков. Это не спред одного и того же актива между биржами, который только что исчез (SOL Bybit/OKX, HYPE спот/бессрочный контракт). Такой спред — соревнование маркет-мейкеров на скорость, от которого ответ прямо предостерегает. Здесь рассматривается спред относительной стоимости между ASSET, при котором расхождения составляют 6-10%, а не несколько базисных пунктов. WINDOW ROBUSTNESS: ориентир справедливой стоимости — EWMA от log(LTC/BCH) с периодом полураспада, настраиваемым в широком диапазоне (60-180 баров 4H, 10-30 дней). Предварительное исследование показывает, что знак преимущества сохраняется во всём этом диапазоне. Для отбора не используется p-значение коинтеграции. FEE FLOOR: для входа требуется логарифмическое отклонение не менее ABSOLUTE на уровне 6%, а не просто z-оценка, поэтому каждая сделка начинается примерно на 27x выше 0.22% затрат на круговую сделку по двум плечам. BREAKDOWN VETO: если объём за 24 ч по одному плечу относительно собственной медианы за 30 дней превышает объём другого плеча более чем в 1.8x раза, расхождение считается следствием специфичной для актива новости — как в примере ответа с отчётностью за SAP. В таком случае вход не выполняется. Биржа Bybit выбрана, поскольку на неё приходится 2.0% корпуса при квоте не менее 5%. LTC и BCH в корпусе почти не представлены, а бары Bybit 1H охватывают период с октября/декабря 2020, то есть около 5.8 лет. Бары пересчитываются в 4H внутри стратегии либо используются напрямую бары 4H.

Источник описывает конкретный механизм парной торговли криптовалютными бессрочными контрактами, поэтому стратегия отнесена к классу (a). Она доработана по лучшему ответу источника: окно не выбирается по p-value, установлен явный порог комиссий и добавлен фильтр на случай структурного слома. Выбрана Bybit, поскольку её доля ниже квоты площадки (2.0% против 5% или больше). Дизайн длинный/короткий и долларово-нейтральный, он заполняет недостаточно представленный сегмент long_short (15%). LTC и BCH почти не представлены в корпусе. Это не спред между одной и той же парой активов на разных площадках (SOL Bybit/OKX, DOGE Bybit/OKX, HYPE спот/бессрочный контракт), который постоянно проигрывает в гонке скорости и комиссий. Прогнозы скромные, поскольку t-статистика до исследования составляет около 1-2.

verification_loop: sandbox_timeout: верификация не пройдена (уровень 3 — бэктест в песочнице): дымовой тест превысил лимит времени 300 с на окне примерно в 20000 баров (2400 дней по LTCUSDT.BYBIT-4-HOUR-LAST-EXTERNAL). Почти всегда это означает, что объём вычислений на бар растёт вместе с историей — например, полный просмотр ряда финансирования/дополнительных данных или перестроение списка с вызовом min()/sorted() внутри calculate_signal()/on_bar() на каждом баре. Заранее вычисли отсортированные массивы временных меток ONCE в __init__ и используй bisect либо кэшируй результаты по временной метке, чтобы стоимость обработки одного бара была O(log n), а не O(n).

Реализация

Долларово-нейтральная парная сделка по бессрочным контрактам LTC и BCH на Bybit с барами 4H. Стратегия торгует разрыв между log(LTC/BCH) и его якорем EWMA (период полураспада — 60-180 баров). Вход происходит только при абсолютном разрыве не меньше 6%, фиксированного порога комиссий: дорогой актив продаётся в шорт, дешёвый покупается. Дополнительный фильтр отменяет вход, если необычный всплеск объёма за 24ч наблюдается только по одному активу. Сделка закрывается, когда разрыв пересекает exit_dev в обратном направлении, расширяется против позиции до stop_mult*entry_dev или достигается максимальное время удержания.

Итерация 3 исправляет только сбой Layer-1.5. В optimization_plan исправлен `leverage` на 2.0 как параметр, поэтому теперь параметры включают leverage=2.0 как число с плавающей точкой, что соответствует плану и config.leverage=2.0, и position_size считывает его. Перед отправкой я сверил параметры с планом с помощью src.optimization.domains.validate_domains; проверка пройдена. Все остальные фиксированные значения в точности соответствуют плану, включая их типы: exit_dev 0.0, stop_mult 2.0, leg_fraction 0.25, cooldown_bars 6, volume_asym_ratio 1.8, volume_short_bars 6 и volume_median_bars 180. Начальные значения настраиваемых параметров находятся в допустимых диапазонах: entry_dev 0.06, volume_veto 'on', max_hold_bars 42 и anchor_halflife_bars 120. Максимальный валовой номинал составляет 2 позиций x 0.25 x 2.0 = 1.0x капитала. Логика сигнала, входа и выхода не изменена.

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

sandbox_timeout: верификация не пройдена (уровень 3 — бэктест в песочнице): дымовой тест превысил лимит времени 300 с на окне примерно в 20000 баров (2400 дней по LTCUSDT.BYBIT-4-HOUR-LAST-EXTERNAL). Почти всегда это означает, что объём вычислений на бар растёт вместе с историей — например, полный просмотр ряда финансирования/дополнительных данных или перестроение списка с вызовом min()/sorted() внутри calculate_signal()/on_bar() на каждом баре. Заранее вычисли отсортированные массивы временных меток ONCE в __init__ и используй bisect либо кэшируй результаты по временной метке, чтобы стоимость обработки одного бара была O(log n), а не O(n).

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

Верификация не пройдена (уровень 1.5 — согласованность гипотезы и конфигурации) [класс=hypothesis_mismatch]: - optimization_plan задаёт плечо 2.0

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

Стратегии с двумя активами и скользящими окнами медианного объёма нужно профилировать относительно лимита песочницы примерно в 20 тыс. баров до отправки: даже переписывание только ради скорости (скользящие суммы и поддержание отсортированных окон через bisect) не уложилось в лимит 300 с.

Стратегия была оставлена в цикле проверки. Дымовой тест песочницы Layer 3 превысил лимит времени 300 с на окне около 20000 баров (2400 дней по LTCUSDT.BYBIT 4-часовых баров), поэтому до проверки бэктеста, аналитика или риска дело не дошло.

Долларово-нейтральная парная сделка на барах 4H по бессрочным контрактам LTCUSDT.BYBIT и BCHUSDT.BYBIT: стратегия играет на возврате отклонения log(LTC/BCH) от якоря EWMA, входя только при абсолютном отклонении не меньше 6% (порога комиссий) и оставаясь вне рынка, если шок объёма за 24ч одного актива превышает шок другого более чем на 1.8x (фильтр против специфичных для актива новостей).

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

Анализ

Парная торговля: длина истории для расчёта спреда

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