Odległość od EMA w ATR - filtr wejścia z histerezą
W skrócie: wejścia “na górce”, gdy cena uciekła daleko od średniej, mają gorszą pozycję stop lossa i większą szansę na korektę. Zapisuję “daleko” jako odległość ceny od EMA podzieloną przez ATR i blokuję wejścia powyżej progu. Filtr ma dwa progi (blokada i wznowienie), inaczej przełącza się co świecę. Kod mam gotowy, testu jeszcze nie ma, więc artykuł opisuje konstrukcję, nie wynik.
Skąd pomysł
Pomysł powstał przy bocie handlującym złotem po wybiciu z sesji azjatyckiej (bot 2010_GoldAsiaEmaChannelBreakoutEA). Zauważyłem wejścia po ruchu o kilkadziesiąt dolarów, gdy cena była daleko od obu średnich EMA. Intuicja jest prosta: im dalej od średniej, tym gorsze wejście, jak przy rozciągniętej gumce. Intuicja to jeszcze nie dowód, dlatego zapisałem ją jako filtr do przetestowania, a nie jako regułę.
Dlaczego w ATR, a nie w punktach
Dystans w dolarach czy punktach nic nie mówi bez kontekstu. 30 USD na złocie to inny dystans, gdy ATR wynosi 5, a inny, gdy wynosi 20. Dzielę więc odległość przez ATR i dostaję liczbę typu “cena jest 2,5 ATR od średniej”. Ta sama liczba ma podobne znaczenie na różnych instrumentach i w różnych okresach zmienności, a próg nie traci sensu, gdy złoto zdrożeje dwukrotnie. To ta sama idea, co przy filtrze wyczerpanego dnia, ale tam mierzę zakres dnia, a tu odstęp od średniej.
Reguła
Odległość = |cena zamknięcia - EMA| / ATR. Gdy przekroczy próg blokady, nie otwieram nowych pozycji. Zasady szczegółowe:
- Blokada trwa, dopóki odległość nie spadnie poniżej drugiego, niższego progu (wznowienia).
- Filtr może działać tylko po jednej stronie (np. blokuje kupno, gdy cena jest nad średnią) albo po obu.
- Opcja jest domyślnie wyłączona, bo to dodatek, nie część strategii.
Po co dwa progi
Gdyby był jeden próg, odległość kręcąca się wokół niego wywoływałaby przełączenie co świecę: blokada, wejście, blokada, wejście. Wejście pojawiałoby się dokładnie w momencie, gdy odległość schodzi o włos poniżej progu, czyli tam, gdzie filtr miał go nie dopuścić. Przykład (liczby przykładowe): próg blokady 2,5 ATR, wznowienie 1,5 ATR. Cena odjeżdża do 2,7 ATR - blokada. Wraca do 2,4, potem 2,0 - dalej blokada, bo nie zeszła poniżej 1,5. Dopiero przy 1,4 wejścia są znów dozwolone. To czekanie na powrót jest istotą pomysłu.
Pułapki, na które zwróciłem uwagę przy kodzie
- Stan blokady nie może kasować się o północy ani po restarcie bota. Przy ponownym starcie odtwarzam go z historii świec, inaczej ten sam sygnał dostałby inną decyzję zależnie od tego, czy terminal był restartowany. To ta sama klasa błędu, co rozjazd między testem a realem.
- Tryb obu stron blokuje także wejście w kierunku powrotu do średniej, czyli takie, które mogłoby być dobre.
- Okres ATR i EMA to dodatkowe parametry. Każdy parametr zwiększa ryzyko dopasowania do historii.
Jak zamierzam to ocenić
Zgodnie z zasadą oceny filtrów: test z wyłączoną ochroną prop, porównanie zysku, PF i drawdownu z wersją bez filtra, najlepiej na kilku latach osobno. Jeśli filtr poprawi wynik tylko dla jednej pary progów, a sąsiednie wartości psują go, uznam to za szum (zob. pułapka najlepszego wiersza). [DO UZUPEŁNIENIA: wynik testu filtra na bocie 2010 - w repo jest tylko kod, brak wyników.]
Checklista
- Dystans wyrażony w ATR, nie w punktach.
- Dwa progi: blokada i wznowienie, wznowienie niższe.
- Stan filtra odtwarzany po restarcie z historii.
- Opcja domyślnie wyłączona.
- Ocena na wersji bez filtra jako bazie, z ochroną prop wyłączoną.
- Sąsiednie wartości progów dają podobny wynik (plateau).
Powiązane
Źródła
Brak źródeł zewnętrznych - opis własnego filtra (notatka pomysłu z 9.11.2026).
Ostrzeżenie: artykuł ma charakter edukacyjny i nie jest poradą inwestycyjną. Filtr nie był jeszcze testowany, przykładowe progi są ilustracją. Handel na rynkach finansowych wiąże się z ryzykiem utraty kapitału.