retcode 10010
10010 — TRADE_RETCODE_DONE_PARTIAL
Zlecenie wypełniono tylko częściowo. Reszta wolumenu nie została zrealizowana.
1 fragment kodu z tej strony przeszedł przez kompilator MetaEditor build 6090, 2026-08-05.
Co ten kod znaczy
Na rynku nie było wystarczającej płynności po akceptowalnej cenie. Serwer wykonał tyle, ile mógł, i anulował resztę — takie zachowanie wynika z trybu wypełnienia ORDER_FILLING_IOC.
Skąd się bierze
- mała płynność instrumentu, zwłaszcza poza główną sesją
- duży wolumen względem głębokości arkusza zleceń
- tryb wypełnienia
IOCprzy zleceniu, które miało wejść w całości
Co z tym zrobić
Kod obsługujący ten przypadek musi sprawdzić, ile faktycznie weszło:
if(wynik.retcode == TRADE_RETCODE_DONE_PARTIAL)
PrintFormat("Weszło %.2f z %.2f lota", wynik.volume, zapytanie.volume);Zignorowanie tego kodu to typowe źródło rozjazdu między tym, co ekspert „myśli", że ma otwarte, a rzeczywistym stanem rachunku. Jeśli logika strategii wymaga całości albo nic, użyj trybu ORDER_FILLING_FOK — wtedy zamiast częściowego wykonania dostaniesz odmowę.