BTCUSDT.BINANCE Perp 4H Taker-Buy/Sell Flow Imbalance Long-Only Trend Following (3-Parameter, Order Flow + Trend Confluence, Pure Tick-Aggregated Signal)
Wynik: Porzucona
BtcPerpTakerFlowImbalanceTrendLong4H
Podsumowanie wyniku
Ta strategia otworzyła nowy grunt dla fabryki, napędzając sygnały z zagregowanego taker order-flow imbalance zamiast ceny, i służyła jednocześnie jako test infrastruktury, który zakończył się sukcesem — seria taker załadowała się i wygenerowała 191 czystych transakcji po poprawce iteracji-3, która uczyniła limit opóźnienia strojonym parametrem 14-dniowym dopasowanym do rzadkiej kadencji metrics. Jej wyniki były najczystsze w kohorcie: bazowy Sharpe 0.90 z niskim drawdownem i pozytywną alfą, optymalizacja do Sharpe 1.96 przy jednoczesnym przejściu wrażliwości bez klifów i pozytywnym holdoucie. Ale po deflacji się załamała: DSR 0.318, zoptymalizowany Sharpe poniżej progu szczęścia 2.31, 87% prawdopodobieństwa overfitingu backtestu oraz overfit walk-forward, którego okna out-of-sample zawierały jedno ujemne. Analityk porzucił ją jako overfit best-of-225, którego nowość i lokalna stabilność nie mogły zastąpić istotności statystycznej, z dalszym zastrzeżeniem, że przenoszony do przodu sygnał taker mógł zdegradować się w przestarzałe proxy dla long-only bety BTC w próbie z dominacją byków.
Strategia trend-following long-only na jednym instrumencie na percie BTCUSDT.BINANCE używająca barów 4H, z sygnałem kierunkowym napędzanym przez AGGREGATED TAKER ORDER FLOW (z danych supplementary trade_ticks) a nie przez wskaźniki pochodzące z ceny (które zostały wyczerpująco przetestowane i w dużej mierze zawodzą empirycznie według dziennika porzuceń tej sesji). To jest autentycznie NEW klasa mechanizmu dla portfela fabryki — każda wcześniejsza strategia, którą przejrzałem, używa sygnałów pochodzących z OHLCV……Pokaż więcejPokaż mniej
Strategia trend-following long-only na jednym instrumencie na percie BTCUSDT.BINANCE używająca barów 4H, z sygnałem kierunkowym napędzanym przez AGGREGATED TAKER ORDER FLOW (z danych supplementary trade_ticks) a nie przez wskaźniki pochodzące z ceny (które zostały wyczerpująco przetestowane i w dużej mierze zawodzą empirycznie według dziennika porzuceń tej sesji). To jest autentycznie NEW klasa mechanizmu dla portfela fabryki — każda wcześniejsza strategia, którą przejrzałem, używa sygnałów pochodzących z OHLCV (poziomy cenowe, średnie ruchome, zwroty, zmienność, wskaźniki). Taker-buy/taker-sell imbalance jest INFORMATIONALLY DISTINCT od ceny: mierzy WHO zajmuje płynność (agresywni kupujący vs agresywni sprzedający), co akademicka literatura mikrostruktury (Easley-Kiefer-O'Hara PIN 1996, Easley-Lopez-de Prado-O'Hara VPIN 2012) ustaliła jako predykcyjne tam, gdzie sama cena nie jest. Mechanizm: na zamknięciu każdego bara 4H, agreguj ticki transakcyjne bary w taker_buy_volume vs taker_sell_volume, oblicz imbalance = (kupno - sprzedaż) / (kupno + sprzedaż). LONG gdy 4H imbalance > +0.05 (utrzymane kupowanie taker) AND cena > 100-bar SMA (zgodność trendu — flow musi zgadzać się z trendem). Wyjście gdy imbalance staje się ujemne OR cena spada poniżej SMA. Sygnały order-flow mają fundamentalnie inny profil statystyczny niż zawiedzione sygnały momentum cenowego: bezpośrednio obserwują AGENT BEHAVIOR (która strona jest skłonna zapłacić spread) a nie INFERRING zachowanie agenta z ceny (które jest opóźnioną konsekwencją zachowania). Tylko 3 parametrów (znacznie poniżej limitu 5-parametrów). Częstotliwość transakcji: ~40-80 transakcji/rok przez 6+ lat danych ticków transakcyjnych Binance → 240-480 transakcji ogółem → 16-32 OOS transakcji na okno walk-forward, wygodnie powyżej progu 5 transakcji. To jest również krytyczny INFRASTRUCTURE TEST: jeśli dane trade_ticks ładują się poprawnie do pipeline'u fabryki (plik data_specification.md wymienia to pod catalog_data_types i flaga subscribe_trade_ticks istnieje), otwiera to całą nową klasę mechanizmu dla przyszłych badań. Jeśli nie ładują się (podobnie do luki stopy funding HL, która blokowała strategie 9), sam błąd jest informacyjny i ujawnia ticket infrastruktury warty zgłoszenia.
Feedback wymagał DIAGNOSTIC, a nie kolejnej próby schematu. Odpytałem bezpośrednio data/supplementary/metrics/BTCUSDT/*.parquet: 334,643 wierszy, kolumna taker_long_short_vol_ratio, znacznik czasu w ms; wiersze-na-rok 2023=12,096 / 2024=16,990 / 2025=14,688, a EVERY miesiąc 2023-01..2025-12 ma >=288 wierszy (ciągłe, tylko rzadkie vs gęste dane 5-min 2020-2022). Tak więc bramka (3) 'wiersze nie istnieją -> zgłoś ticket' jest fałszywa, a przesłanka bramki (2) o niedopasowaniu schematu loadera też jest fałszywa (mój……Pokaż więcejPokaż mniej
Feedback wymagał DIAGNOSTIC, a nie kolejnej próby schematu. Odpytałem bezpośrednio data/supplementary/metrics/BTCUSDT/*.parquet: 334,643 wierszy, kolumna taker_long_short_vol_ratio, znacznik czasu w ms; wiersze-na-rok 2023=12,096 / 2024=16,990 / 2025=14,688, a EVERY miesiąc 2023-01..2025-12 ma >=288 wierszy (ciągłe, tylko rzadkie vs gęste dane 5-min 2020-2022). Tak więc bramka (3) 'wiersze nie istnieją -> zgłoś ticket' jest fałszywa, a przesłanka bramki (2) o niedopasowaniu schematu loadera też jest fałszywa (mój loader już czyta dokładnie tę kolumnę + klucz znacznika czasu). Prawdziwą przyczyną było niżej w moim własnym kodzie: limit opóźnienia 24h w _taker_imbalance. Zwalidowałem offline z prawdziwym magazynem parquet, skanując syntetyczne bary 4H przez 2023-2025: limit 24h oznacza sygnałem taker tylko 24.9% barów (po bramkach imbalance>0.05 i price>SMA to się kurczy do obserwowanej ekspozycji ~2.79%), natomiast limit 14-dniowy oznacza 95.3% — więc każde okno walk-forward 3-window zapełni się transakcjami. Funkcja _taker_imbalance już przenosi najbliższy współczynnik at-or-before do przodu, gdy końcowe okno 4h jest puste; tylko limit to wetował, więc poprawka to pojedyncze pokrętło (max_lag_hours=336) z ZERO zmian w logice sygnału, wejścia/wyjścia lub wielkości pozycji i NO fallbacku proxy ceny. To zachowuje mechanizm order-flow w nienaruszonym stanie i w końcu czyni go testowalnym w całym okresie backtestu. Zastrzeżenie odnotowane dla analityka: pokrycie 2023-2025 taker jest rzeczywiście cieńsze niż 2020-2022 (~12% gęstości 5-min), więc przenoszony sygnał jest w tych latach grubszy; uzupełnienie gęstych metryk 5-min dla 2023-2025 poprawiłoby wierność, ale seria jest wystarczająco ciągła z miesiąca na miesiąc, by teraz zwalidować walk-forward.
Niepowodzenie testu deflated Sharpe z ekstremalnym prawdopodobieństwem overfittingu w próbie 1. DSR=0.3175 (vs 0.95 bar), is_significant=FALSE, z optymalizowanym Sharpe 1.9615 BELOW 225-próbnym oczekiwanym maksymalnym progiem szczęścia wynoszącym 2.3078, oraz — decydująco — PBO=0.8664 (prawdopodobieństwo 87%, że selekcja parametrów jest przeuczona). Zgodnie z ramami niskie DSR w połączeniu z bardzo wysokim PBO stanowi jednoznaczną rezygnację. Walk-forward to potwierdza: is_overfitted=TRUE ze średnią IS 3.91……Pokaż więcejPokaż mniej
Niepowodzenie testu deflated Sharpe z ekstremalnym prawdopodobieństwem overfittingu w próbie 1. DSR=0.3175 (vs 0.95 bar), is_significant=FALSE, z optymalizowanym Sharpe 1.9615 BELOW 225-próbnym oczekiwanym maksymalnym progiem szczęścia wynoszącym 2.3078, oraz — decydująco — PBO=0.8664 (prawdopodobieństwo 87%, że selekcja parametrów jest przeuczona). Zgodnie z ramami niskie DSR w połączeniu z bardzo wysokim PBO stanowi jednoznaczną rezygnację. Walk-forward to potwierdza: is_overfitted=TRUE ze średnią IS 3.91 spadającą do średniej OOS 0.962 oraz OOS okien [2.76, 1.32, -1.19] (jedno ujemne). Wysokie probabilistic_sharpe (0.9964) to klasyczna pułapka PSR-vs-DSR — ignoruje 225-próbną selekcję, którą PBO/DSR penalizują. Prawdziwe pozytywy (0 klifów wrażliwości, pozytywne sharpe_ci_low +0.4252, uzasadniony pozytywny współczynnik holdout 1.213) mierzą lokalną stabilność i jedno korzystne okno forward, a nie istotność statystyczną, i nie mogą anulować 87% PBO przy wybranym Sharpe poniżej progu szczęścia. Nie iterować (próba 1 z 2, już iteracja 3): wrażliwość jest już czysta z 0 klifami, więc sweep w pełni zbadał stabilny region, a jednak OOS nadal spada, a PBO wynosi 0.87 — overfitting tkwi w walk-forward SELECTION ponad 225 prób, a nie w naprawialnym klifie, i przy tylko 3 parametrach rdzeniowych drugi sweep best-of-225 ponownie znajduje te same przeuczone konfiguracje. Nie revise_hypothesis: nierównowaga taker-flow jest mechanizmem pierwszego testu bez promowanego rodzeństwa utkniętego na martwym celu, więc nie ma niczego udowodnionego do przeadresowania na nowy instrument. Dodatkowa ostrożność (niepotwierdzona przyczyna źródłowa): sygnał 'order flow' jest wyprowadzany z rzadkich metryk serii taker_long_short_vol_ratio z 14-dniowym przenoszeniem nieaktualności zamiast surowych ticków transakcyjnych, więc w okresach rzadkich 2023-2025 może to być pojedynczy snapshot przenoszony do przodu na okres do dwóch tygodni — degradując w kierunku nieaktualnego proxy niskiej informacji i podważając przesłankę 'informacyjnie odrębnego od ceny'; w połączeniu z trendem long-only BTC w próbie 6 lat z dominacją byków (alfa bazowa 0.02, benchmark_correlation 0.30), znaczna część zwrotu może być betą. FAILURE PATTERN: naprawdę nowatorski mechanizm order-flow z niezwykle czystym profilem (0 klifów wrażliwości, pozytywne CI-low, pozytywny holdout) nadal może być overfitem best-of-225 — tutaj PBO 0.8664 z DSR 0.32 i optymalizowanym Sharpe (1.96) poniżej progu szczęścia 2.31, plus is_overfitted walk-forward z ujemnym oknem OOS, jest decydujące. Czysta siatka wrażliwości i jedno korzystne okno holdout NOT ratują optymalizacji, której selekcja jest prawdopodobnie 87% przeuczona; nowość i lokalna stabilność nie są istotnością statystyczną.
Implementacja
Trend-follower long-only 4H na percie BTCUSDT.BINANCE, którego sygnał kierunkowy to zagregowany TAKER ORDER-FLOW imbalance (z serii metrics taker_long_short_vol_ratio), bramkowany przez filtr trendu 100-bar SMA. LONG gdy taker imbalance > +0.05 i close > SMA; wyjście gdy imbalance spada poniżej exit_imbalance lub close < SMA. Iteracja 3 naprawia lukę ekspozycji 2023-2025: bezpośrednie odpytanie magazynu metrics dowiodło, że seria taker istnieje CONTINUOUSLY miesiąc po miesiącu w 2020-2026 i ładowała się poprawnie; blackout był spowodowany przez własny limit opóźnienia 24h strategii, który był znacznie ciaśniejszy niż rzadka (wewnątrzmiesięczna 1-30-dniowa) kadencja wierszy metrics 2023-2025. Limit jest teraz parametrem (max_lag_hours, domyślnie 336h=14 dni), który przenosi najbliższy współczynnik taker at-or-before do przodu ponad rzadkimi lukami.
Przegląd backtestu
Sharpe
0,90
Łączna stopa zwrotu
36,26%
Maksymalne obsunięcie
13,11%
Łączna liczba transakcji
191
Trafność
40,8%
Współczynnik zysku
1,34
Test funkcjonalny i infrastrukturalny zakończył się sukcesem: seria metryk taker-flow ładuje się i napędza 191 wejść (0 spadków) — dowodzi, że zupełnie nowa klasa mechanizmu order-flow przechodzi przez pipeline
Mocne metryki risk-adjusted przed optymalizacją: Sharpe 0.90, Sortino 1.77, Calmar 2.24, max_drawdown tylko 13.1%, profit_factor 1.34
Ryzyko integralności mechanizmu: 14-dniowy carry-forward opóźnienia czyni sygnał taker-flow prawie stałym ponad rzadkie odcinki 2023-2025, więc timing transakcji może być napędzany przez bramkę trendu SMA — prawdopodobnie strategia trendu cenowego w szacie order-flow
sharpe_ci_low -0.635 (CI obejmuje 0) — istotność jeszcze nie ustalona; wymaga bramki deflated-Sharpe
information_ratio -0.65 vs kup-i-trzymaj (częściowo złagodzone przez niską korelację)
Łagodna ostatnia słabość (2023 -6.0%, 2026 -3.0%)
Analiza
Autentycznie nowa klasa mechanizmu dla portfela (zagregowany taker order-flow imbalance) — informacyjnie odrębna od wyczerpanych sygnałów pochodzących z ceny
Wrażliwość PASSED z 0 klifami — parametry są lokalnie stabilne w testowanej siatce
sharpe_ci_low jest pozytywne (+0.4252), a holdout rzeczywiście przeszedł (stosunek 1.213, holdout_sharpe 1.167 vs pozytywne WF-OOS 0.962)
PBO=0.8664 — 87% prawdopodobieństwo overfitingu backtestu; niskie DSR + bardzo wysokie PBO to decydujące odrzucenie
Walk-forward is_overfitted=TRUE: śr. IS 3.91 kurczy się do śr. OOS 0.962, z oknami OOS [2.76, 1.32, -1.19] (jedno ujemne)
probabilistic_sharpe 0.9964 to pułapka PSR-vs-DSR — ignoruje 225-próbną selekcję, którą PBO/DSR penalizują
Konfiguracja bazowa CI obejmuje 0 (baza sharpe_ci_low -0.6354); alfa bazowa tylko 0.02 z benchmark_correlation 0.30 — trend long-only BTC w próbie z dominacją byków trudno oddzielić od bety
Zastrzeżenie dotyczące integralności mechanizmu: 'order flow' jest wyprowadzany z rzadkiej serii taker-ratio metrics z carry-forward 14-dniowym opóźnienia, nie z surowych ticków transakcyjnych — podczas 2023-2025 sygnał może być migawką utrzymywaną do dwóch tygodni do przodu, degradując w kierunku przestarzałego proxy (oflagowane do weryfikacji, niepotwierdzone)
wszystkie > 0
Nie NOT optymalizować — sygnał taker-flow ma strukturalny blackout danych 2023-2025 (transakcje istnieją tylko w 2020-2022 i 2026; annual_returns pomiń 2023/2024/2025; exposure_pct 2.79%), więc walk-forward z oknem 3 uruchomiłby całe okno na zerowych danych i przewaga order-flow nie może zostać zwalidowana. Zmiana loadera tolerującego schematy w iteracji 2 NOT zamknęła luki, co oznacza, że następny krok jest diagnostyczny, a nie kolejną próbą schematu: (1) Bezpośrednio odpytaj katalog/magazyn supplementary i……Pokaż więcejPokaż mniej
Nie NOT optymalizować — sygnał taker-flow ma strukturalny blackout danych 2023-2025 (transakcje istnieją tylko w 2020-2022 i 2026; annual_returns pomiń 2023/2024/2025; exposure_pct 2.79%), więc walk-forward z oknem 3 uruchomiłby całe okno na zerowych danych i przewaga order-flow nie może zostać zwalidowana. Zmiana loadera tolerującego schematy w iteracji 2 NOT zamknęła luki, co oznacza, że następny krok jest diagnostyczny, a nie kolejną próbą schematu: (1) Bezpośrednio odpytaj katalog/magazyn supplementary i potwierdź, czy `metrics` wolumen kupna/sprzedaży taker (lub taker_long_short_vol_ratio) wiersze PHYSICALLY EXIST dla BTCUSDT 2023-01 przez 2025-12. Wydrukuj liczbę wierszy oraz rzeczywiste nazwy kolumn/klucze znaczników czasu dla próbki 2024. (2) Jeśli wiersze istnieją w jeszcze innym schemacie (nazwa kolumny lub klucza znacznika czasu, której twój loader nadal nie dopasowuje), rozszerz `_row_ratio`/`_row_ts`/`_load_taker_flow`, aby je odczytywać, i uruchom ponownie; potwierdź, że exposure_pct rośnie, a transakcje zapełniają 2023-2025. (3) Jeśli wiersze NOT istnieją (seria taker metrics nigdy nie została zebrana/uzupełniona dla tych lat), jest to problem infrastruktury/zbierania danych dokładnie tak, jak przewidywała hipoteza — kod strategii nie może tego naprawić, więc zgłoś ticket zbierania danych dla wieloletnich metryk taker-flow i DO NOT ponownie prześlij tę strategię do optymalizacji, dopóki dane nie obejmują pełnego okresu backtestu. Dopiero gdy seria taker-flow pokrywa 2020-2026 w sposób ciągły, optymalizacja jest warta zachodu; mechanizm jest obiecujący, ale obecnie nietestowalny.
Podsumowanie wyniku
Autentycznie nowatorski mechanizm z niezwykle czystym profilem — zerowa wrażliwość na klify, pozytywny Sharpe CI-niski, oraz pozytywny holdout — nadal może być overfitem best-of-N, więc przyszłe prace muszą traktować wysokie PBO plus deflated Sharpe poniżej progu szczęścia jako decydujące niezależnie od lokalnej stabilności i powinny zwalidować, czy sygnał z danych supplementary (tu seria taker przenoszona do przodu do 14 dni ponad rzadkie odcinki 2023-2025) nie degraduje się do przestarzałego proxy trendu cenowego.
Analityk porzucił go po optymalizacji (próba 1 z 2, już iteracja 3): pomimo pozytywnej wrażliwości (0 klifów), pozytywnego Sharpe CI-low (+0.425) oraz uzasadnionego holdoutu (współczynnik 1.213), nie przeszedł testu deflated Sharpe (DSR 0.318 vs 0.95, nieistotne statystycznie) z optymalizowanym Sharpe 1.96 poniżej 225-próbnym progiem szczęścia wynoszącym 2.31, oraz — decydująco — PBO 0.866 (prawdopodobieństwo overfittingu 87%) obok walk-forward oznaczonego jako przeuczony (średnia in-sample 3.91 spadająca do średniej OOS 0.96 z ujemnym oknem -1.19).
Strategia trend-following long-only 4H na percie BTCUSDT.BINANCE, której sygnał kierunkowy pochodził z zagregowanego taker buy/sell order-flow imbalance (z serii metrics taker-ratio) a nie z ceny, otwierająca long gdy taker-buy imbalance przekraczał +0.05 i cena była powyżej 100-bar SMA — celowo nowatorska, trzyparametrowa klasa mechanizmu order-flow oraz test infrastruktury, czy dane taker-flow przechodzą przez pipeline.
Test infrastruktury zakończył się pomyślnie (seria taker załadowała się i wygenerowała 191 czystych wejść), a bazowy backtest był silny dla fabryki: Sharpe 0.904, zwrot +36.3%, profit factor 1.34, wskaźnik wygranych 40.8%, tylko 13.1% maksymalnego drawdownu, z pozytywną alfą (0.021) i niską korelacją z benchmarkiem (0.30). Optymalizacja podniosła go do Sharpe 1.96, zwrotu +88.2%, drawdownu 10.8% i profit factor 1.76.
Stratmill to narzędzie do badań i handlu na papierze (paper trading), a nie doradztwo finansowe ani broker. Wyniki backtestów i paper tradingu mają charakter hipotetyczny. Handel wiąże się z ryzykiem straty.