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

MQL5 / Błędy

rodzina 4101–4205

Kody błędów wykresu i obiektów

Operacje na wykresie, jego właściwościach i obiektach graficznych. Pełna lista kodów z tej rodziny wraz z tym, co je wywołuje.

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

Rodzina dotycząca wykresu i obiektów graficznych. Prawie wszystkie te kody mają wspólną cechę: funkcje wykresu działają asynchronicznie. Polecenie trafia do kolejki wykresu i wraca natychmiast, zanim cokolwiek się wydarzy — a błąd zobaczysz dopiero przy kolejnym wywołaniu.

Stąd typowy objaw: ObjectCreate zwraca prawdę, a obiektu nie widać. Po utworzeniu obiektów potrzebne jest ChartRedraw, a po zmianie symbolu albo okresu — chwila cierpliwości, bo wykres jeszcze się przebudowuje.

Pełna lista

KodStałaCo znaczy
4101ERR_CHART_WRONG_IDzły identyfikator wykresu
4102ERR_CHART_NO_REPLYwykres nie odpowiada
4103ERR_CHART_NOT_FOUNDwykres nie znaleziony
4104ERR_CHART_NO_EXPERTna wykresie nie ma eksperta, który obsłużyłby zdarzenie
4105ERR_CHART_CANNOT_OPENbłąd otwierania wykresu
4106ERR_CHART_CANNOT_CHANGEnie udało się zmienić symbolu albo okresu
4107ERR_CHART_WRONG_PARAMETERzła wartość parametru funkcji wykresu
4108ERR_CHART_CANNOT_CREATE_TIMERnie udało się utworzyć czasomierza
4109ERR_CHART_WRONG_PROPERTYzły identyfikator właściwości wykresu
4110ERR_CHART_SCREENSHOT_FAILEDbłąd tworzenia zrzutu ekranu
4111ERR_CHART_NAVIGATE_FAILEDbłąd przewijania wykresu
4112ERR_CHART_TEMPLATE_FAILEDbłąd nakładania szablonu
4113ERR_CHART_WINDOW_NOT_FOUNDnie znaleziono podokna ze wskaźnikiem
4114ERR_CHART_INDICATOR_CANNOT_ADDbłąd dodawania wskaźnika do wykresu
4115ERR_CHART_INDICATOR_CANNOT_DELbłąd usuwania wskaźnika z wykresu
4116ERR_CHART_INDICATOR_NOT_FOUNDwskaźnika nie ma na wskazanym wykresie
4201ERR_OBJECT_ERRORbłąd pracy z obiektem graficznym
4202ERR_OBJECT_NOT_FOUNDobiekt graficzny nie znaleziony
4203ERR_OBJECT_WRONG_PROPERTYzły identyfikator właściwości obiektu
4204ERR_OBJECT_GETDATE_FAILEDnie udało się pobrać daty odpowiadającej wartości
4205ERR_OBJECT_GETVALUE_FAILEDnie udało się pobrać wartości odpowiadającej dacie

Jak czytać te kody w praktyce

Odczyt kodu błędu bez zgadywania
//--- zerujemy przed operacja, ktorej wynik chcemy sprawdzic
ResetLastError();

double bufor[];
ArraySetAsSeries(bufor, true);

if(CopyBuffer(uchwyt, 0, 0, 10, bufor) < 10)
  {
   int kod = GetLastError();
   PrintFormat("nie udalo sie skopiowac danych, kod %d", kod);
   ResetLastError();
   return;
  }

Powiązane