MT5 może być połączony z serwerem, chociaż kwotowanie wybranej pary nie jest aktualne dla potrzeb robota. Brak reakcji może też wynikać z zamkniętej sesji, symbolu innego niż zakładany albo działania programu. Najpierw oddziel te przyczyny, zanim zrestartujesz terminal lub ponowisz zlecenie. Poniższa procedura daje zapis diagnostyczny konkretnego symbolu i pozwala ustalić, czego jeszcze nie wiadomo. Dotyczy MT5 i programów MQL5, nie wszystkich platform.

Co właściwie potwierdza zielony status połączenia?

W MQL5 TERMINAL_CONNECTED opisuje połączenie terminala z serwerem handlowym. To odrębna informacja od wieku kwotowania i uprawnienia do handlu. Czynny kanał komunikacji nie dowodzi, że interesujący instrument właśnie otrzymał nową cenę. Terminal może pokazywać działające inne symbole, podczas gdy wybrany pozostaje bez aktualizacji.

Sprawdź pełną nazwę instrumentu, serwer, rodzaj rachunku i terminal, na którym pracuje automat. Broker może udostępniać podobne nazwy z różnymi końcówkami. Zapisz nazwę z okna robota, zamiast przepisywać nazwę z telefonu. Przy pracy na VPS sprawdź również rzeczywistą instancję programu; lokalny ekran nie jest dowodem stanu zdalnego środowiska. Ten rozdział rozwija poradnik kontroli terminala na VPS.

Dlaczego trzy zegary mogą mówić coś innego?

Według dokumentacji TimeCurrent w OnTick funkcja zwraca czas obsługiwanego ticka, a np. w OnTimer ostatni czas kwotowania dowolnego symbolu wybranego w Market Watch. Ruch innej pary może więc odświeżyć ten odczyt. Sam ogólny zegar nie odpowiada na pytanie o instrument robota.

Odczyt i pytanie, na które faktycznie odpowiada
OdczytZnaczenieCzego nie potwierdza
TimeCurrent w OnTimerOstatnie kwotowanie w Market Watch.Świeżości konkretnej pary.
TimeTradeServerBieżący czas serwera obliczony przez terminal.Dostarczenia nowego kwotowania.
SymbolInfoTick dla symboluDane i czas ostatniej aktualizacji wskazanego instrumentu.Przyjęcia lub wykonania zlecenia.

TimeTradeServer jest obliczany w terminalu i zależy od ustawień czasu komputera. Dla symbolu pobierz SymbolInfoTick, sprawdź powodzenie i zapisz time_msc, Bid oraz Ask. Nie porównuj surowego czasu komputera z czasem serwera bez uzgodnienia skali. Ujemny wiek danych, brak czasu lub nieudany odczyt oznaczają niepewność, a nie świeże kwotowanie.

Jak rozpoznać pozornie świeże dane?

Własny model diagnostyczny. Wszystkie godziny poniżej należą do jednej umownej osi czasu serwera. Dane są wymyślonym przykładem, nie obserwacją brokera. Kontrola odbywa się o 12:00:00, a funkcję TimeCurrent odczytujemy w OnTimer. Nie wyznaczamy dopuszczalnego wieku kwotowania dla rynku.

Połączenie działa, ale wybrana para ma starsze dane

Połączenie działa, ale wybrana para ma starsze daneModel o godzinie 12:00:00: EUR/USD ma aktualizację z 11:59:59, GBP/JPY z 11:59:35. Aktualny zegar ogólny nie dowodzi świeżości GBP/JPY.Wspólna oś czasu serwera 11:59:3511:59:59 Ostatni tick GBP/JPY25 sekund bez aktualizacji Ostatni tick EUR/USD1 sekunda od aktualizacji Kontrola: 12:00:00Dwa symbole wymagają dwóch kontroli
Model o godzinie 12:00:00: EUR/USD ma aktualizację z 11:59:59, GBP/JPY z 11:59:35. Aktualny zegar ogólny nie dowodzi świeżości GBP/JPY.

EUR/USD aktualizuje się o 11:59:59, a GBP/JPY ostatnio o 11:59:35. Ogólny odczyt ma zaledwie sekundę, lecz dane docelowej pary mają 25 sekund względem przyjętej osi. Robot sprawdzający tylko TimeCurrent mógłby przeoczyć różnicę. Wniosek nie brzmi „broker ma awarię”: trzeba jeszcze ustalić sesję, dostępność symbolu i warunki programu.

Powtórz zapis po odstępie mierzonym licznikiem upływu czasu. Jeśli ten sam time_msc się utrzymuje, masz konkretną informację o braku nowej aktualizacji w odczytach. To nadal nie jest pomiar opóźnienia pojedynczego ticka od źródła do Twojego komputera. Zegar serwera i szacowany czas klienta nie dają samodzielnie takiej dokładności.

Jak odróżnić ciszę rynku od problemu programu?

Porównaj harmonogram kwotowań i harmonogram handlu dla danego instrumentu, z uwzględnieniem czasu serwera oraz przerw i świąt podanych przez brokera. Poza sesją starsza cena może być oczekiwanym stanem. Nie zakładaj, że godziny głównej pary walutowej obowiązują indeks albo metal z podobnej listy. W otwartej sesji powtarzający się brak danych wymaga wyjaśnienia, ale nie ma jednego limitu sekund odpowiedniego dla każdego instrumentu i strategii.

OnTick dotyczy symbolu wykresu, do którego podłączono robota. Kolejne zdarzenie NewTick nie jest dodawane do kolejki, jeśli takie zdarzenie już czeka lub trwa jego obsługa. Liczba wpisów OnTick nie musi zatem równać się liczbie ticków. W robocie wielowalutowym sprawdź osobno instrument wykresu i instrumenty faktycznie używane przez strategię.

„Działanie robota nie zostaje zatrzymane.” — MetaQuotes, dokumentacja MQL5, OnTick, tłumaczenie fragmentu o wyłączonym AutoTrading; dostęp 13 października 2026.

Wyłączony AutoTrading blokuje wysyłanie żądań handlowych przez robota; nie zatrzymuje jego obliczeń. Dlatego zapisuj osobno działanie programu, aktualizację danych, spełnienie warunków strategii i odpowiedź na żądanie. Opis OnTick wyjaśnia tę różnicę. Nie trzeba wykonywać próbnej transakcji, aby sprawdzić, czy program otrzymuje dane.

W logu rozróżnij również „brak sygnału”, „brak danych” i „brak zgody na handel”. Te wyniki wymagają innych działań. Zapis „robot milczy” nie wyjaśnia, czy program nie wykonał obliczeń, czy świadomie odrzucił wejście.

Co zapisać, zanim wznowisz wysyłanie zleceń?

Przygotuj jedną linię diagnostyczną: czas odczytu i jego skala; serwer i dokładny symbol; stan połączenia; wynik pobrania danych; czas ticka, Bid i Ask; status sesji; stan programu; ostatnia odpowiedź handlowa. Przykład: „12:00:00, oś serwera; GBP/JPY; odczyt udany; tick 11:59:35; sesja wymaga potwierdzenia; nowe wejścia wstrzymane”. Nie dopisuj hasła ani pełnego numeru rachunku do zgłoszenia.

Jeżeli wystąpił błąd lub niepewna odpowiedź podczas wysyłania, sprawdź pozycje, aktywne zlecenia i historię przed ponowieniem. Powrót świeżych danych nie mówi, co stało się z wcześniejszą dyspozycją. Rozpoznawanie takich odpowiedzi opisuje poradnik błędów zleceń MT4 i MT5. W czasie diagnozy istniejąca ekspozycja nadal wymaga kontroli; wyłączanie automatu nie potwierdza stanu jej ochrony.

Co zrobić jutro

  1. Zapisz rzeczywisty symbol i harmonogram. Otwórz specyfikację instrumentu na właściwym rachunku, zanotuj serwer oraz godziny kwotowań i handlu. Porównaj je z czasem incydentu. Otrzymasz odpowiedź, czy oczekiwanie na cenę w tym momencie miało uzasadnienie.
  2. Przygotuj dwa odczyty bez transakcji. Na demo zapisz czas konkretnego ticka, ceny, stan połączenia i status programu. Powtórz odczyt po znanym odstępie. Zaznacz brakujące informacje, zamiast traktować błąd pobrania jako zerowy wiek danych lub prawidłową cenę.
  3. Uzgodnij stan przed wznowieniem. Sprawdź pozycje, zlecenia i historię, a następnie potwierdź świeżość danych wymaganą przez własną strategię. Jeśli przyczyna pozostaje nieznana, przekaż zanonimizowany zapis programiście lub brokerowi. Ten poradnik diagnostyczny nie jest rekomendacją otwarcia pozycji.

Sprawdź, czy rozumiesz

Jedno krótkie ćwiczenie

Około 3 min · możesz spróbować ponownie

Kontrola o 12:00:00: TimeCurrent w OnTimer = 11:59:59; tick GBP/JPY = 11:59:35. Co potwierdza świeżość GBP/JPY?

  • Sam TimeCurrent, bo różnica to sekunda.
  • Nie mamy jej potwierdzenia; dane pary mają w modelu 25 sekund.
  • Zielony status połączenia wystarcza.
Sprawdź odpowiedź i wyjaśnienie

Nie mamy jej potwierdzenia; dane pary mają w modelu 25 sekund.

Tak. Sprawdź także sesję i własne wymagania strategii; 25 sekund nie jest uniwersalnym progiem awarii.

Następny temat: MT4 lub MT5 odrzuca zlecenie — co sprawdzić po błędzie? →

Jeśli po odzyskaniu danych program otrzymuje odmowę, rozpoznaj odpowiedź i uzgodnij stan przed ponowieniem.