Przejdź do treści
MQL5 · MetaTrader 5 · po polsku
kod odczarowany

MQL5 / Instrument

SYMBOL_ORDER_GTC_MODE

Co dzieje się ze zleceniami oczekującymi i poziomami na koniec dnia. To jest właściwość, która potrafi skasować twoje zlecenia w nocy, a jej

long SymbolInfoInteger(string symbol, SYMBOL_ORDER_GTC_MODE);

1 fragment kodu z tej strony przeszedł przez kompilator MetaEditor build 6090, 2026-08-05.

Trzy wartości: SYMBOL_ORDERS_GTC zlecenia ważne do odwołania, SYMBOL_ORDERS_DAILY usuwane na koniec dnia oraz SYMBOL_ORDERS_DAILY_EXCLUDING_STOPS, gdzie kasowane są zlecenia, ale poziomy zabezpieczające zostają.

Dlaczego to nie jest oczywiste

To jest właściwość, która potrafi skasować twoje zlecenia w nocy, a jej istnienia większość programistów nie podejrzewa. Na rachunkach giełdowych tryb dzienny bywa domyślny: strategia wystawiająca zlecenia oczekujące wieczorem rano zastaje pusty rachunek i nie ma w dzienniku żadnego błędu, bo nic się nie zepsuło.

Trzecia wartość jest jeszcze bardziej podstępna: zlecenia znikają, ale stop lossy otwartych pozycji zostają. Kod odtwarzający „wszystko od zera" po starcie może wtedy zdublować zabezpieczenia.

Kod

SYMBOL_ORDER_GTC_MODE
long tryby = SymbolInfoInteger(symbol, SYMBOL_ORDER_GTC_MODE);

if(tryby != SYMBOL_ORDERS_GTC)
   PrintFormat("%s: zlecenia oczekujace beda usuwane na koniec dnia "
               "- odtworz je po starcie sesji", symbol);

Powiązane