Strategie
ETH USD-M Śróddzienny powrót do średniej po wyczerpaniu przepływu takerów, strategia long-short (pojedynczy instrument BINANCE perp, świece 15m + wieloletni strumień TAKER BUY/SELL VOLUME, fade nadmiernych ruchów agresywnego przepływu potwierdzonych wydłużeniem ruchu ceny, 3-parametrowa)
Wynik: Porzucona
EthTakerFlowExhaustionReversionLS
Niewiele parametrów, zapytania as-of odporne na przekroczenie limitu czasu, symetryczne pozycje long i short, wieloletni zakres metryk (transakcje obejmują 2021-2026, a dane nie ograniczają się do niedawnego okresu)
Hipoteza
Implementacja
Mikrostrukturalna strategia fade long-short na jednym instrumencie ETHUSDT.BINANCE (USD-M perp, 15m). Sygnałem jest ekstremalna wartość przepływu agresorów takerów (z-score nierównowagi wolumenu kupna/sprzedaży z (R-1)/(R+1) ze strumienia wieloletnich „metryk”), CONFIRMED z-score wydłużenia ruchu ceny w tym samym kierunku; wyczerpany nadmierny ruch jest rozgrywany jako powrót do krótkoterminowego poziomu odniesienia. Nadmierny wzrost wywołany agresywnymi zakupami -> SHORT, nadmierny spadek wywołany agresywną sprzedażą -> LONG.
Wyniki weryfikacji
CLEAN RESTART 2026-09-04 — historia werdyktów i zapisy uczenia tego przebiegu zostały usunięte i został on uruchomiony ponownie od weryfikacji. Jego wcześniejsze porzucenie wynikało z pipeline'u, a nie z rynku: harness Layer-2 błędnie powiązał helpery @staticmethod (naprawiono), QA wydawał końcowe werdykty o wynikach na niezoptymalizowanym teście smoke (usunięto — QA teraz ocenia jedynie poprawność), a timeouty sandboxa pochodziły z wyczerpania slotów backtestu (naprawiono). Hipoteza i kod strategii pozostają niezmienione. Zweryfikuj kod według jego zalet; wyniki zostaną ocenione później przez pełny backtest i optymalizator.
Jednoczesne wejście podwójnego ekstremum z (flow_z≥2.5 AND price_z≥2.0) jest na tyle selektywne, że wygenerowało jedynie 5 transakcji/206 dni (~50-60 w całej historii), poniżej progu mierzalności i ~100x poniżej kadencji hipotezy. Strategia handluje (nie jest to brak transakcji); to dokładnie dostrojone parametry optymalizatora, więc jest to kwestia częstotliwości/edge'a, a nie błędu w kodzie. Optymalizator powinien traktować liczbę transakcji jako ograniczenie obok minimalnej prowizji.
Przegląd backtestu
- Sharpe
- -0,54
- Łączna stopa zwrotu
- -3,20%
- Maksymalne obsunięcie
- 3,65%
- Łączna liczba transakcji
- 69
- Trafność
- 50,7%
- Współczynnik zysku
- 0,60
Niewiele parametrów, zapytania as-of odporne na przekroczenie limitu czasu, symetryczne pozycje long i short, wieloletni zakres metryk (transakcje obejmują 2021-2026, a dane nie ograniczają się do niedawnego okresu)
Ujemna wartość oczekiwana: profit_factor 0.595, avg_trade_return_pct -0.0051% (ujemny), wartość oczekiwana -$46.5/transakcję, Sharpe -0.54 (CI [-1.12, 0.23]); straty w każdym reżimie zmienności
Odwrócenie geometrii w iter-3 nie powiodło się: avg_loss $233 nadal 1.7x avg_win $135, skośność -2.31, largest_loss -$2,166 wobec largest_win $572 — utrzymuje się charakterystyczny dla fade'ów odwrócony-RR
Tylko 69 transakcji w ciągu 6.6 lat (ekspozycja 0.42%) — poniżej progu mierzalności ~100 transakcji (L10); prowizja 43.2% brutto; nie można zapełnić walk-forward/holdout
L73 rodzina proxy przepływu zleceń oparta na metrykach takerów dla pojedynczego kontraktu perpetual, z potwierdzonym brakiem przewagi zarówno w wariancie powrotu do średniej, jak i kontynuacji (ETH śróddzienny odpowiednik porzuconych fade'ów takerów BTC/AVAX, L55/L73)
Historia iteracji
Weryfikacja nie powiodła się (Layer 4 — przegląd QA): - Brak zdolności do pokrycia prowizji / ujemna przewaga. avg_trade_return_pct 0.074% jest poniżej zarówno progu 0.15% USD-M dla kontraktów futures, jak i kosztu ~0.10% za transakcję w obie strony; profit_factor 0.79, total_return -5.58%, Sharpe -1.14 (CI [-2.64,+0.43]). Win_rate 0.64, ale avg_loss $502 ≈ 2.3x avg_win $218 (skośność -2.13, tail_ratio 0.40) — charakterystyczny dla fade'ów powrotu do średniej układ odwróconej relacji zysku do ryzyka. Próba jest dostatecznie duża: 146 transakcji daje jednoznacznie ujemny wynik. Żadna zmiana parametrów nie odwróci ujemnej wartości oczekiwanej brutto — zablokować i porzucić. - Docstring i uzasadnienie strategii stwierdzają, że „zgodnie z ustalonym wcześniej kierowaniem zadań przez QA należy ją ABANDONED, a nie dalej iterować”, mimo to zgłoszono ją ponownie jako iterację, wprowadzając jedynie zmiany parametrów ograniczające ryzyko, bez nowej przewagi. Zgłoszenie samo sobie przeczy i zajmuje slot iteracji — to problem z kierowaniem, a nie wada kodu.
Weryfikacja nie powiodła się (Layer 4 — przegląd QA): - Iter-3 naprawa strukturalna nie przywróciła przewagi ani nie zapewniła mierzalności próby. W ciągu 363 dni doszło tylko do 18 transakcji (flow_thresh 2.5 + price_ext 2.0 ograniczyły wejścia znacznie poniżej progu ~100 transakcji), więc wynik nie pozwala odróżnić przewagi od szumu. W tej małej próbie strategia STILL przynosi stratę netto, z tą samą odwróconą relacją zysku do ryzyka, którą miała skorygować zmiana: avg_trade_return_pct -0.108% (ujemny, poniżej prowizji), profit_factor 0.42, Sharpe -1.21, win_rate 0.556, avg_loss $293 ≈ 3.0x avg_win $98 (gorzej niż poprzednie ~2.3x), largest_loss -$893 wobec largest_win $406, skośność -9.1. Stop oparty na z-score nie ograniczył strat poniżej zysku z powrotu do średniej. Trzecia kolejna iteracja zakończona stratą (iter-1 -89.85%, iter-2 -5.58%, iter-3 -1.37%).
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.