Bot otworzył pozycję mimo blokady z panelu
W skrócie: 12 listopada 2026 o 10:01 zablokowałem z panelu handel na dwóch kontach. O 11:00 bot na obu otworzył sprzedaż. Panel i blokada zadziałały poprawnie. Bot był starszy i nie miał w kodzie obsługi blokady, więc nie wiedział, że ma nie wchodzić. Przycisk w panelu nie blokuje bota, którego nikt nie nauczył go słuchać.
Co się stało
Mam panel, z którego mogę zdalnie zabronić botom otwierania nowych pozycji na wybranym koncie. Używam tego przed ważnymi danymi, po osiągnięciu celu na koncie prop albo gdy coś na koncie wygląda źle.
12 listopada wysłałem polecenie blokady na dwa konta na dwóch różnych komputerach. Panel potwierdził o 10:01. Godzinę później bot trendowy na sprzedaż (bot 1409_EmaSarCascadeSellEA) dostał swój sygnał i otworzył pozycję na obu kontach, jakby blokady nie było.
[DO UZUPEŁNIENIA: jak skończyły się te dwie transakcje i czy miały wpływ na konta.]
Dlaczego blokada nie zadziałała
Blokada z panelu to nie jest wyłącznik w terminalu. Panel zapisuje dla konta informację “handel zablokowany”, a bot sam ją odczytuje i sam odmawia wejścia. Działa to tylko wtedy, gdy są spełnione trzy warunki naraz:
- bot ma w kodzie odczyt blokady,
- sprawdzenie stoi przed każdą drogą do nowej pozycji,
- obsługa jest włączona w ustawieniach bota na tym wykresie.
Ten bot nie spełniał pierwszego. Obsługę blokady dopisywałem do botów po kolei, zaczynając od najnowszych, a on czekał w kolejce. Na liście wdrożonych botów nie miałem kolumny “czy czyta blokadę”, więc wysyłając polecenie, założyłem, że czytają wszystkie.
Wybrałem ten sposób świadomie zamiast usuwania bota z wykresu albo wyłączania Algo Trading, bo blokada w kodzie zatrzymuje tylko nowe wejścia, a otwarte pozycje są dalej prowadzone. Opisuję to w artykule blokada handlu zamiast usuwania bota. Ceną jest to, że każdy bot musi mieć tę obsługę u siebie.
Trzy miejsca, w których blokada przecieka
Brak obsługi w kodzie to przypadek najprostszy. Przy przeglądzie pozostałych botów znalazłem jeszcze dwa.
Bramka nie na każdej drodze. Bot może otwierać pozycję w kilku miejscach kodu: zwykłe wejście, ponowienie po zbyt szerokim spreadzie, dokupienie do zyskownej pozycji, osobna funkcja dla kupna i osobna dla sprzedaży. Sprawdzenie blokady wstawione tylko w jednym miejscu zostawia resztę otwartą. Dotyczy to też odwrócenia pozycji: zamknięcie i otwarcie przeciwnej to nowa pozycja.
Zlecenia oczekujące. Zlecenie postawione przed blokadą leży na serwerze brokera i wypełni się bez udziału bota. Blokada zatrzymuje stawianie nowych zleceń, tych wcześniejszych nie anuluje. Bot na wybicie zakresu, który rano postawił dwa zlecenia stop, wejdzie mimo blokady wysłanej w południe.
Co zmieniłem
Najpierw lista. Przy każdym bocie na każdym koncie jest teraz wpis, czy obsługuje blokadę i czy ma ją włączoną. Panel może wysłać polecenie na dowolne konto, więc muszę wiedzieć, gdzie ono coś znaczy.
Do czasu dopisania obsługi w starszych botach konto z takim botem blokuję ręcznie, wyłączając Algo Trading w terminalu. To gorszy sposób, bo zatrzymuje też prowadzenie otwartych pozycji, ale działa na każdego bota. Więcej o tym, co ten przycisk blokuje, a czego nie: Algo Trading ON/OFF.
Obsługa blokady w każdym nowym bocie jest w tym samym miejscu: jedna wspólna bramka, przez którą przechodzi każde otwarcie pozycji. Przed wdrożeniem szukam w kodzie wszystkich wywołań otwarcia i sprawdzam, czy żadne jej nie omija.
I test. Blokadę da się sprawdzić w testerze strategii: przebieg z włączoną blokadą na dany dzień powinien dać zero nowych pozycji w tym dniu. Dopóki tego nie zobaczę, zakładam, że blokada w tym bocie nie działa.
Wniosek ogólny
Zabezpieczenie, którego działania nie sprawdziłem na konkretnym bocie, traktuję jak niedziałające. To samo dotyczy dziennego limitu straty, zamknięcia przed weekendem i każdej innej ochrony, która zależy od kodu bota. Panel pokazujący “zablokowano” mówi tylko, że polecenie zostało wysłane.
Po wysłaniu blokady patrzę więc w log bota. Bot z obsługą wypisuje, że blokadę przyjął. Cisza w logu oznacza, że polecenie do niego nie dotarło albo że go nie rozumie.
Checklista
- przy każdym bocie na każdym koncie zapisane, czy obsługuje blokadę zdalną,
- sprawdzenie blokady przed każdą drogą do nowej pozycji (kupno, sprzedaż, ponowienie, dokupienie, odwrócenie),
- decyzja, co ze zleceniami oczekującymi postawionymi przed blokadą,
- obsługa blokady włączona w ustawieniach bota na wykresie,
- test w testerze: dzień z blokadą bez nowych pozycji,
- po wysłaniu blokady potwierdzenie w logu bota, a nie tylko w panelu,
- dla botów bez obsługi ustalony sposób ręczny.
Powiązane
- Blokada handlu zamiast usuwania bota
- Polecenia z panelu - blokada handlu zdalnie
- Algo Trading ON/OFF - co blokuje, a co nie
- Panel monitoringu floty MT5
- Pojęcia z artykułu: słowniczek, skorowidz
Ostrzeżenie: handel CFD i forex wiąże się z wysokim ryzykiem utraty kapitału. Żadna blokada ani zabezpieczenie w bocie nie daje gwarancji. Artykuł ma charakter edukacyjny i nie jest rekomendacją inwestycyjną.