EN
Artykuły / 3.1 Spread
Spreadszkic

Filtr maksymalnego spreadu w bocie: trzy sposoby i pułapki

14.11.20263 min czytania

W skrócie: bot, który wchodzi bez sprawdzenia spreadu, kupuje czasem po cenie z dużego rozszerzenia (otwarcie sesji, news). Można to ograniczyć trzema sposobami: sztywnym limitem w punktach z ponawianiem wejścia, limitem kosztu spreadu jako procent ryzyka albo poszerzeniem SL tak, żeby koszt spadł do limitu. Każdy działa inaczej, a w praktyce najczęściej psuje się samo wpięcie filtra do bota.

Po co ten filtr

Przy stałym ryzyku w dolarach koszt spreadu zależy od odległości SL: ciasny SL oznacza duży lot, a więc większy koszt spreadu w stosunku do ryzyka. Ile to jest w skali całej strategii, liczę w artykule ile procent zysku zjada spread. Filtr pilnuje pojedynczego wejścia, nie średniej. Ma sens głównie w botach z zmienną odległością SL (ATR, struktura); przy sztywnym SL koszt spreadu to stały ułamek ryzyka, więc filtr daje mniej.

Trzy mechanizmy

Sposób Kiedy decyduje Co robi
Limit w punktach przed liczeniem lota gdy spread za duży, wstrzymuje sygnał i ponawia co ok. 30 s do limitu minut
Limit kosztu w % ryzyka po policzeniu lota odrzuca wejście, jeśli koszt spreadu przekracza zadany procent ryzyka; bez ponawiania
Poszerzenie SL po policzeniu lota zamiast odrzucić, oddala SL tak, żeby koszt spadł do limitu, i przelicza lot

Limit w punktach jest prosty, ale zależy od instrumentu i pory dnia, więc jedna liczba rzadko pasuje do całej doby (spread wg godzin). Limit kosztu w procentach lepiej skaluje się z odległością SL, bo patrzy na to, co spread realnie zabiera z ryzyka. Poszerzenie SL pasuje do strategii, w których szerszy SL nie zmienia logiki wejścia, bo inaczej tworzy inną strategię niż testowana.

Pułapki z wdrożeń

Martwy input. W jednym z botów (bot 2908_DonchianPullbackEA) wpiąłem tylko dwa z trzech mechanizmów. Input z limitem w punktach istniał i można go było ustawić, ale kod go nie czytał. Zauważyłem to dopiero w logu wejścia przy spreadzie 203 punktów mimo ustawionego limitu. Dziś przy każdym wdrożeniu piszę krótki manifest: który mechanizm jest wpięty, a który nie.

Ponowienie wejścia po czasie. Gdy sygnał czeka na niższy spread, po kilkudziesięciu sekundach cena może być zupełnie gdzie indziej, a sam sygnał nieważny (świeca wróciła za poziom). Dodałem opcjonalną rewalidację sygnału i limit dryfu liczony w wielokrotności SL. Test na bocie złotym pokazał jednak, że anulowanie po dryfie pogorszyło wyniki, więc te opcje zostały wyłączone. Wniosek: nie każdy rozsądnie brzmiący filtr pomaga, trzeba go sprawdzić na wynikach (jak oceniać filtr).

Spread w Testerze. Na świecach OHLC spread jest stały z danych świecy, więc filtr wygląda w teście na mało ważny, a na koncie bywa kluczowy (spread M1 kontra tiki). Ocena filtra spreadu wymaga tików.

Koszt liczony z głowy. Koszt spreadu w dolarach liczę oficjalną funkcją MT5 dla danego lota, nie ręcznie z wartości punktu. Tak samo jak lot (wzór na lot): własny wzór zawodzi na symbolach o nietypowej specyfikacji.

Jak ustawić

  1. Zmierz rozkład spreadu przy wejściach bota (log z każdym wejściem i spreadem).
  2. Zacznij od limitu kosztu w procentach ryzyka, nie od stałej liczby punktów.
  3. Sprawdź, ile wejść odcina filtr i co z nimi stałoby się bez niego.
  4. Wpisz do dokumentacji bota, które mechanizmy są włączone.

[DO UZUPEŁNIENIA: jaki limit (punkty lub procent) masz ustawiony w botach live i ile wejść odcina]

Checklista

  • filtr domyślnie wyłączony, włączany jawnie,
  • sprawdzone w logu, że input faktycznie działa (wejście przy spreadzie powyżej limitu nie powstaje),
  • koszt spreadu liczony funkcją MT5, nie ręcznie,
  • wpływ filtra oceniony na wynikach (prop OFF, kilka lat),
  • ponawianie wejścia ma limit czasu i sprawdzenie ważności sygnału.

Powiązane

Ostrzeżenie: handel CFD i forex wiąże się z wysokim ryzykiem utraty kapitału. Artykuł ma charakter edukacyjny i nie jest rekomendacją inwestycyjną.

Dalej w rozdziale

49

Spread według godzin: noc, Londyn i Nowy Jork

Spread na Nasdaq w maju 2026 wahał się od 8,7 punktu wieczorem do 13,7 po północy. Bot, który handluje tylko w sesji nowojorskiej, płaci mniej niż średnia dnia, a test na świecach M1 tego nie pokazuje.

52

Spread w backteście: świece M1 kontra tiki

Backtest na świecach M1 bierze spread zapisany w historii. Zmierzyłem go na Nasdaq z 9 lat i porównałem z tikami: od 2022 test OHLC jest za tani o 0,7-2,3 punktu.

54

Ile procent zysku strategii zjada spread: rachunek w jednostkach R

Spread kosztuje tyle samo na każdej transakcji, ale dla strategii z ciasnym stopem to połowa zysku, a dla szerokiego ułamek. Pokazuję, jak policzyć koszt w R i tabelę dla czterech wielkości stopa.

61

Koszt całkowity transakcji w MT5: spread plus prowizja plus swap

Spread to tylko część kosztu. Jak policzyć pełny koszt jednej transakcji bota: spread, prowizję za lot i swap za noc, w jednej walucie i na tym samym locie, żeby porównać konta i strategie.