BTCUSDT.BINANCE Perp 4H Long-Only Trend Following на дисбалансе Taker-Buy/Sell Flow (3 параметров, совпадение Order Flow + тренда, чисто тик-агрегированный сигнал)
Итог: Отменено
BtcPerpTakerFlowImbalanceTrendLong4H
Сводка по итогам
Эта стратегия проложила новый путь для фабрики, генерируя сигналы из агрегированного дисбаланса taker order-flow вместо цены, и одновременно выступила успешным инфраструктурным тестом — taker-серия загрузилась и сгенерировала 191 чистых сделок после исправления в итерации-3, которое сделало ограничение staleness настраиваемым параметром 14-дней, согласованным с разреженным каденсом метрик. Её показатели были самыми чистыми в когорте: базовый Sharpe 0.90 с низкой просадкой и положительной альфой, оптимизированный……Показать большеСвернуть
Эта стратегия проложила новый путь для фабрики, генерируя сигналы из агрегированного дисбаланса taker order-flow вместо цены, и одновременно выступила успешным инфраструктурным тестом — taker-серия загрузилась и сгенерировала 191 чистых сделок после исправления в итерации-3, которое сделало ограничение staleness настраиваемым параметром 14-дней, согласованным с разреженным каденсом метрик. Её показатели были самыми чистыми в когорте: базовый Sharpe 0.90 с низкой просадкой и положительной альфой, оптимизированный до Sharpe 1.96 при прохождении чувствительности без обрывов и прохождении holdout. Но при дефляции он схлопнулся: DSR 0.318, оптимизированный Sharpe ниже планки удачи 2.31, вероятность переоптимизации бэктеста 87% и переоптимизированный walk-forward, чьи out-of-sample окна включали одно отрицательное. Аналитик отказался от неё как от best-of-225 переоптимизации, чьи новизна и локальная стабильность не могут заменить статистическую значимость, с дальнейшим предостережением, что перенесённый вперёд taker-сигнал мог деградировать в устаревший прокси для long-only BTC беты в преимущественно бычьей выборке.
Одноактивная long-only стратегия следования за трендом на BTCUSDT.BINANCE perp с использованием 4H баров, где направленный сигнал формируется AGGREGATED TAKER ORDER FLOW (из trade_ticks supplementary-данных), а не ценовыми индикаторами (которые были исчерпывающе протестированы и в основном провалились эмпирически согласно журналу отказов этой сессии). Это действительно NEW класс механизма для фабричного портфеля — каждая предыдущая стратегия, которую я рецензировал, использует OHLCV-производные сигналы (уровни……Показать большеСвернуть
Одноактивная long-only стратегия следования за трендом на BTCUSDT.BINANCE perp с использованием 4H баров, где направленный сигнал формируется AGGREGATED TAKER ORDER FLOW (из trade_ticks supplementary-данных), а не ценовыми индикаторами (которые были исчерпывающе протестированы и в основном провалились эмпирически согласно журналу отказов этой сессии). Это действительно NEW класс механизма для фабричного портфеля — каждая предыдущая стратегия, которую я рецензировал, использует OHLCV-производные сигналы (уровни цены, скользящие средние, доходности, vol, соотношения). Дисбаланс taker-buy/taker-sell — это INFORMATIONALLY DISTINCT от цены: он измеряет WHO поглощает ликвидность (агрессивные покупатели против агрессивных продавцов), что академическая литература по микроструктуре (Easley-Kiefer-O'Hara PIN 1996, Easley-Lopez-de Prado-O'Hara VPIN 2012) установила как предиктивное там, где сама цена не работает. Механизм: на закрытии каждого 4H бара агрегировать тики сделок бара в taker_buy_volume vs taker_sell_volume, вычислить дисбаланс = (покупка - продажа) / (покупка + продажа). LONG, когда 4H дисбаланс > +0.05 (устойчивые покупки taker) AND цена > 100-бар SMA (совпадение тренда — поток должен соглашаться с трендом). Выход, когда дисбаланс становится отрицательным OR цена падает ниже SMA. Сигналы order-flow имеют принципиально другой статистический профиль, чем провалившиеся сигналы ценового импульса: они напрямую наблюдают AGENT BEHAVIOR (какая сторона готова платить спред), а не INFERRING поведение агента из цены (что является запаздывающим следствием поведения). Только 3 параметров (значительно ниже потолка 5-парам). Частота сделок: ~40-80 сделок/год за 6+ лет тиковых данных Binance → 240-480 всего сделок → 16-32 OOS сделок на окно walk-forward, комфортно выше пола 5 сделок. Это также критический INFRASTRUCTURE TEST: если trade_ticks данные загружаются корректно в конвейер фабрики (data_specification.md перечисляет их под catalog_data_types и флаг subscribe_trade_ticks существует), это открывает целый новый класс механизма для будущих исследований. Если они не загружаются (аналогично HL разрыву ставки фондирования, блокировавшему 9 стратегий), сам сбой информативен и выявляет инфраструктурный тикет, который стоит завести.
Обратная связь потребовала DIAGNOSTIC, а не очередного предположения о схеме. Я напрямую запросил data/supplementary/metrics/BTCUSDT/*.parquet: 334,643 строк, столбец taker_long_short_vol_ratio, временная метка в мс; строк-на-год 2023=12,096 / 2024=16,990 / 2025=14,688, и EVERY месяц 2023-01..2025-12 имеет >=288 строк (непрерывно, просто разрежено по сравнению с плотными 5-мин 2020-2022 данными). Так что шлюз (3) 'строки не существуют -> завести тикет' — ложь, и посылка шлюза (2) о несовпадении схемы загрузчика……Показать большеСвернуть
Обратная связь потребовала DIAGNOSTIC, а не очередного предположения о схеме. Я напрямую запросил data/supplementary/metrics/BTCUSDT/*.parquet: 334,643 строк, столбец taker_long_short_vol_ratio, временная метка в мс; строк-на-год 2023=12,096 / 2024=16,990 / 2025=14,688, и EVERY месяц 2023-01..2025-12 имеет >=288 строк (непрерывно, просто разрежено по сравнению с плотными 5-мин 2020-2022 данными). Так что шлюз (3) 'строки не существуют -> завести тикет' — ложь, и посылка шлюза (2) о несовпадении схемы загрузчика также ложна (мой загрузчик уже читает именно этот столбец + ключ временной метки). Истинная причина была ниже по потоку в моём собственном коде: ограничение staleness 24ч в _taker_imbalance. Я валидировал офлайн против реального parquet-хранилища, сканируя синтетические 4ч бары за 2023-2025: ограничение 24ч помечает только 24.9% баров taker-сигналом (после фильтров imbalance>0.05 и price>SMA это сжимается до наблюдаемой экспозиции ~2.79%), тогда как ограничение 14-дней помечает 95.3% — поэтому каждое окно walk-forward с 3-окнами будет заполнено сделками. Функция _taker_imbalance уже переносит ближайшее at-or-before значение ratio вперёд, когда скользящее окно 4ч пусто; только cap отвергал это, поэтому исправление — единственная ручка (max_lag_hours=336) без ZERO изменений в логике сигнала, входа/выхода или sizing и без NO прокси-фоллбэка по цене. Это сохраняет механизм order-flow целым и наконец делает его проверяемым на всём периоде бэктеста. Замечание для аналитика: покрытие 2023-2025 taker действительно тоньше, чем 2020-2022 (~12% от плотности 5-мин), поэтому переносимый сигнал грубее в те годы; бэкфилл плотных 5-мин метрик за 2023-2025 улучшил бы точность, но серия достаточно непрерывна помесячно, чтобы валидировать walk-forward сейчас.
Проваленный deflated Sharpe с экстремальной вероятностью переобучения на попытке 1. DSR=0.3175 (vs бар 0.95), is_significant=FALSE, при этом оптимизированный Sharpe 1.9615 BELOW ожидаемо-максимальный бар удачи для 225 попыток, равный 2.3078, и — решающим образом — PBO=0.8664 (вероятность 87% того, что выбор параметров переобучен). Согласно фреймворку, низкое DSR в сочетании с очень высоким PBO является решающим основанием для отказа. Walk-forward это подтверждает: is_overfitted=TRUE при среднем IS 3.91,……Показать большеСвернуть
Проваленный deflated Sharpe с экстремальной вероятностью переобучения на попытке 1. DSR=0.3175 (vs бар 0.95), is_significant=FALSE, при этом оптимизированный Sharpe 1.9615 BELOW ожидаемо-максимальный бар удачи для 225 попыток, равный 2.3078, и — решающим образом — PBO=0.8664 (вероятность 87% того, что выбор параметров переобучен). Согласно фреймворку, низкое DSR в сочетании с очень высоким PBO является решающим основанием для отказа. Walk-forward это подтверждает: is_overfitted=TRUE при среднем IS 3.91, коллапсирующем до среднего OOS 0.962, и окна OOS [2.76, 1.32, -1.19] (одно отрицательное). Высокое probabilistic_sharpe (0.9964) — классическая ловушка PSR-vs-DSR — оно игнорирует выбор из 225 попыток, который штрафуют PBO/DSR. Подлинные плюсы (0 клиффов чувствительности, положительный sharpe_ci_low +0.4252, легитимно проходящий holdout с коэффициентом 1.213) измеряют локальную стабильность и одно благоприятное прямое окно, но не значимость, и не могут перевесить 87% PBO при выбранном Sharpe ниже бара удачи. Не итерировать (попытка 1 из 2, уже итерация 3): чувствительность уже чистая с 0 клиффов, поэтому sweep полностью исследовал стабильную область, однако OOS всё равно коллапсирует, а PBO равно 0.87 — переобучение живёт в walk-forward SELECTION на 225 попытках, а не в исправимом клиффе, и всего с 3 ключевыми параметрами второй best-of-225 sweep повторно находит те же переобученные конфигурации. Не revise_hypothesis: дисбаланс taker-flow — это механизм первого теста, не имеющий продвинутого аналога, застрявшего на мёртвой цели, поэтому нет ничего доказанного, на что можно перенаправить новый инструмент. Дополнительная осторожность (не подтверждённая корневая причина): сигнал 'order flow' получен из разреженной серии метрик taker_long_short_vol_ratio с переносом устаревания на 14 дней, а не из сырых тиков сделок, поэтому в периоды разреженности 2023-2025 он может быть единственным снимком, удерживаемым вперёд до двух недель — деградируя до устаревшего, низкоинформационного прокси и подрывая предпосылку 'информационно отличается от цены'; в сочетании с long-only BTC тренд в бычьей 6-летней выборке (базовая альфа 0.02, benchmark_correlation 0.30) значительная часть доходности может быть бетой. FAILURE PATTERN: по-настоящему новый механизм order-flow с необычно чистым профилем (0 клиффов чувствительности, положительный CI-low, проходящий holdout) всё же может быть переобучением best-of-225 — здесь PBO 0.8664 с DSR 0.32 и оптимизированным Sharpe (1.96) ниже бара удачи 2.31, плюс is_overfitted walk-forward с отрицательным окном OOS, является решающим. Чистая сетка чувствительности и одно благоприятное окно holdout не NOT спасают оптимизацию, выбор которой с вероятностью 87% переобучен; новизна и локальная стабильность не являются статистической значимостью.
Реализация
Long-only 4H следователь за трендом на BTCUSDT.BINANCE perp, чей направленный сигнал — агрегированный TAKER ORDER-FLOW дисбаланс (из метрик-серии taker_long_short_vol_ratio), пропущенный через 100-бар SMA тренд-фильтр. LONG, когда taker-дисбаланс > +0.05 и close > SMA; выход, когда дисбаланс переходит ниже exit_imbalance или close < SMA. Итерация 3 устраняет разрыв экспозиции 2023-2025: прямой запрос метрик-хранилища доказал, что taker-серия существует CONTINUOUSLY месяц-за-месяцем за 2020-2026 и загружалась корректно; blackout был собственным 24h ограничением staleness стратегии, которое было значительно плотнее разреженного (1-30 дней внутри месяца) каденса 2023-2025 метрик-строк. Теперь ограничение — параметр (max_lag_hours, по умолчанию 336h=14 дней), который переносит ближайшее at-or-before значение taker ratio вперёд через разреженные промежутки.
Обзор бэктеста
Шарп
0,90
Общая доходность
36,26%
Максимальная просадка
13,11%
Всего сделок
191
Доля прибыльных
40,8%
Профит-фактор
1,34
Функциональный и инфраструктурный тест прошёл успешно: метрик-серия taker-flow загружается и порождает 191 входов (0 падений) — доказывает, что действительно новый класс механизма order-flow проходит через конвейер
Сильные скорректированные на риск метрики до оптимизации: Sharpe 0.90, Sortino 1.77, Calmar 2.24, max_drawdown только 13.1%, profit_factor 1.34
Положительная альфа (+0.021), низкая бета (0.043) и низкий benchmark_correlation (0.30) — дифференцированный, близкий к market-neutral поток доходностей
Здоровая выборка сделок (191) за ~6 лет поддерживает осмысленный walk-forward с достаточными OOS сделками на окно
Асимметричная доходность (avg_win ~2x avg_loss) объясняет процент прибыльных ниже -50% — нормальный профиль trend-follower, не дефект
Приличная ёмкость (~$9.6M); умеренное трение издержек (impact 10.2%, комиссия 9.7% от gross)
Риск целостности механизма: перенос устаревания на 14 дней делает taker-flow сигнал почти постоянным на разреженных участках 2023-2025, поэтому тайминг сделок может определяться SMA trend-фильтром — возможно, price-trend стратегия в одежде order-flow
sharpe_ci_low -0.635 (CI охватывает 0) — значимость ещё не установлена; нужен deflated-Sharpe фильтр
information_ratio -0.65 против buy-hold (частично смягчено низкой корреляцией)
Действительно новый класс механизма для портфеля (агрегированный дисбаланс taker order-flow) — информационно отличный от исчерпанных сигналов, полученных из цены
Чувствительность PASSED с 0 обрывами — параметры локально стабильны на тестируемой сетке
sharpe_ci_low положительный (+0.4252), и holdout действительно прошёл (ratio 1.213, holdout_sharpe 1.167 против положительного WF-OOS 0.962)
Проваленный deflated Sharpe: DSR=0.3175 (vs 0.95), is_significant=false, оптимизированный Sharpe 1.9615 BELOW ожидаемо-максимальный бар удачи для 225 попыток, равный 2.3078
PBO=0.8664 — 87% вероятность переоптимизации бэктеста; низкий DSR + очень высокий PBO — решающее no-promote
Walk-forward is_overfitted=TRUE: среднее IS 3.91 схлопывается до среднего OOS 0.962, с OOS окнами [2.76, 1.32, -1.19] (одно отрицательное)
probabilistic_sharpe 0.9964 — это ловушка PSR-vs-DSR — игнорирует выбор из 225 попыток, который штрафуют PBO/DSR
Базовая конфигурация CI охватывает 0 (базовая sharpe_ci_low -0.6354); базовая альфа только 0.02 с benchmark_correlation 0.30 — long-only BTC тренд в преимущественно бычьей выборке трудно отделить от беты
Предостережение о целостности механизма: 'order flow' получен из разреженной метрик-серии taker-ratio с переносом устаревания на 14 дней, а не из сырых тиков сделок — в течение 2023-2025 сигнал может быть снимком, удерживаемым вперёд до двух недель, деградируя до устаревшего прокси (отмечено для верификации, не подтверждено)
все > 0
NOT оптимизировать — сигнал taker-flow имеет структурный blackout данных 2023-2025 (сделки существуют только в 2020-2022 и 2026; annual_returns пропускают 2023/2024/2025; exposure_pct 2.79%), поэтому walk-forward с окном 3 отработал бы целое окно на нулевых данных, и order-flow edge невозможно валидировать. Изменение загрузчика schema-tolerance в итерации 2 NOT устранило разрыв, что означает — следующий шаг диагностический, а не очередное предположение о схеме: (1) Напрямую запросить каталог/supplementary store и……Показать большеСвернуть
NOT оптимизировать — сигнал taker-flow имеет структурный blackout данных 2023-2025 (сделки существуют только в 2020-2022 и 2026; annual_returns пропускают 2023/2024/2025; exposure_pct 2.79%), поэтому walk-forward с окном 3 отработал бы целое окно на нулевых данных, и order-flow edge невозможно валидировать. Изменение загрузчика schema-tolerance в итерации 2 NOT устранило разрыв, что означает — следующий шаг диагностический, а не очередное предположение о схеме: (1) Напрямую запросить каталог/supplementary store и подтвердить, существуют ли строки `metrics` taker buy/sell volume (или taker_long_short_vol_ratio) PHYSICALLY EXIST за BTCUSDT 2023-01 по 2025-12. Вывести количество строк и фактические имена столбцов/ключи временных меток для сэмпла 2024. (2) Если строки существуют под ещё одной схемой (имя столбца или ключа временной метки, которое ваш загрузчик всё ещё не сопоставляет), расширить `_row_ratio`/`_row_ts`/`_load_taker_flow` для их чтения и перезапустить; подтвердить, что exposure_pct растёт и сделки заполняют 2023-2025. (3) Если строки NOT существуют (метрики taker-серии никогда не собирались/бэкфилились за те годы), это инфраструктурная/связанная со сбором данных проблема ровно так, как предвидела гипотеза — код стратегии не может это исправить, поэтому заведите тикет на сбор данных для многолетних метрик taker-flow и DO NOT повторно подавайте эту стратегию на оптимизацию, пока данные не охватят полный период бэктеста. Только когда taker-flow серия непрерывно покрывает 2020-2026, её стоит оптимизировать; механизм перспективный, но в настоящее время непроверяемый.
Сводка по итогам
Действительно новый механизм с необычно чистым профилем — нулевыми обрывами чувствительности, положительным Sharpe CI-низким и проходящим holdout — всё ещё может быть best-of-N переоптимизацией, поэтому будущая работа должна рассматривать высокий PBO плюс deflated Sharpe ниже планки удачи как решающие сигналы, независимо от локальной стабильности, и должна валидировать, что сигнал supplementary-данных (здесь taker-серия, переносимая вперёд до 14 дней над разреженными участками 2023-2025) не деградирует в устаревший прокси ценового тренда.
Аналитик отказался от него после оптимизации (попытка 1 из 2, уже итерация 3): несмотря на прохождение чувствительности (0 клиффов), положительный Sharpe CI-low (+0.425) и легитимный holdout (коэффициент 1.213), он не прошёл тест deflated Sharpe (DSR 0.318 vs 0.95, не является значимым) с оптимизированным Sharpe 1.96 ниже бара удачи для 225 попыток, равного 2.31, и — решающим образом — PBO 0.866 (вероятность переобучения 87%) вместе с walk-forward, помеченным как переобученный (средний in-sample 3.91, коллапсирующий до среднего OOS 0.96 с отрицательным окном -1.19).
Long-only 4H стратегия следования за трендом на BTCUSDT.BINANCE perp, направленный сигнал которой исходил из агрегированного дисбаланса taker buy/sell order-flow (полученного из метрик-серии taker-ratio), а не из цены, с входом в лонг при превышении дисбаланса taker-buy +0.05 и нахождении цены выше 100-бар SMA — намеренно новый, трёхпараметровый класс механизма order-flow и инфраструктурный тест того, проходят ли данные taker-flow через конвейер.
Инфраструктурный тест успешно пройден (серия taker загружена и обеспечила 191 чистых входов), и базовый бэктест был сильным для фабрики: Sharpe 0.904, доходность +36.3%, профит-фактор 1.34, процент прибыльных 40.8%, максимальная просадка всего 13.1%, с положительной альфой (0.021) и низкой корреляцией с бенчмарком (0.30). Оптимизация подняла его до Sharpe 1.96, доходности +88.2%, просадки 10.8% и профит-фактора 1.76.
Stratmill — это инструмент для исследований и бумажной торговли, а не финансовая консультация или брокер. Результаты бэктестов и бумажной торговли являются гипотетическими. Торговля сопряжена с риском убытков.