Přeskočit na obsah
Windea.cz
  1. Úvod
  2. Návody pro MetaTrader 4

Řešení chyb MT4 a EA

Při problému v MT4 nejprve najděte přesnou zprávu a čas události. Podle nich rozlišíte, zda se EA nenačetl, nemá potřebná oprávnění, nebo server odmítl konkrétní požadavek.

Návod je pro desktopový MetaTrader 4 na Windows. Než začnete měnit nastavení, poznamenejte si, co nefunguje a co problému předcházelo. Pro ověření nového EA použijte demo účet.

1. Uložte zprávu dříve, než začnete zasahovat

V okně Terminal (Terminál) otevřete Experts (Strategie) pro zprávy EA a Journal (Deník) pro události terminálu, například připojování k serveru. Najděte záznamy kolem okamžiku problému a zachovejte i několik okolních řádků.

V kontextové nabídce příslušné karty použijte Open (Otevřít). Tím se aktuální záznamy zapíší do souboru a otevře se složka logů. EA logy najdete v MQL4\Logs, logy terminálu v logs pod jeho datovou složkou; soubory jsou rozdělené podle data.

Nezaměňujte log s nastavením robota nebo s historií účtu. Dokumentace karty Experts (Strategie) a karty Journal (Deník).

2. Začněte podle příznaku

EA není v Navigátoru

Ověřte datovou složku otevřenou přímo z cílového terminálu a soubor EX4 v MQL4\Experts. Máte-li pouze MQ4, zkontrolujte výsledek kompilace. Potom obnovte seznam v Navigátoru. Podrobný postup je v návodu k instalaci EA do MT4.

EA se objeví, ale nepřipojí se ke grafu

Přečtěte zprávu z okamžiku načítání. Porovnejte dodané soubory, jejich umístění a případnou licenci s dokumentací autora. Chybějící knihovna a odmítnutá licence vyžadují jiné řešení; plošné povolení DLL nebo přeinstalace MT4 nemusí odstranit příčinu.

EA běží, ale neobchoduje

Zkontrolujte připojení, správný účet, symbol a časový rámec, nastavení konkrétního EA a AutoTrading (Automatické Obchodování) celého terminálu. Potom ověřte, zda vůbec nastaly vstupní podmínky robota. Smajlík ani nepřítomnost chyby nejsou důkazem, že má robot právě teď otevřít obchod. Dokumentace oprávnění EA.

3. Kód čtěte spolu s okolní zprávou

Následují vybrané kódy MT4 pro obchodní požadavky. Stejné číslo ve zprávě jiné knihovny nebo Windows může mít jiný význam. Kód sám neurčuje přesný zásah do programu nebo účtu.

Vybrané kódy z dokumentace MQL4
KódVýznamCo ověřit nebo předat autorovi
6Bez spojení se serveremStav připojení a server uvedený v Deníku.
130Neplatné úrovně stopůPožadované ceny a pravidla symbolu v okamžiku odmítnutí.
131Neplatný objemPožadovaný objem, minimum, maximum a krok objemu symbolu.
132Zavřený trhObchodní dobu konkrétního symbolu u brokera.
133Obchodování zakázánoOmezení účtu, symbolu a přesnou odpověď serveru.
134Nedostatek prostředkůObjem a parametry odmítnutého požadavku, stav účtu v daný čas.
136Chybí kotaceDostupnost kotací a zprávy serveru v daný okamžik.
146Obchodní kontext je zaneprázdněnýSouběh obchodních požadavků, například více EA v jednom terminálu; koordinaci musí řešit příslušné programy.

Úplný přehled obchodních kódů MQL4. U chyby 130 nepředpokládejte, že nulová hodnota minimální vzdálenosti stopů vždy znamená žádné omezení: server může používat dynamická pravidla. Dokumentace vlastností symbolu.

Neopakujte odmítnuté požadavky bez zjištění příčiny. Zvlášť u časového limitu požadavku (kód 128, ERR_TRADE_TIMEOUT) nejprve ověřte jeho skutečný výsledek, aby další pokus nezadal stejnou operaci znovu.

4. Připravte podklady pro podporu

  • Název a verzi EA, verzi MT4 a informaci, zda problém nastal na demo nebo reálném účtu.
  • Symbol, časový rámec, čas události včetně časového pásma a popis očekávaného a skutečného chování.
  • Přesný text chyby a několik okolních řádků z příslušného logu.
  • Relevantní parametry programu a poslední změnu před vznikem problému.

Před odesláním odstraňte hesla, tokeny, licenční klíče a nepotřebné údaje o účtu. Pokud posíláte snímek, ponechte čitelnou hlášku a název příslušné karty. Autor EA řeší chování programu; broker může ověřit serverové odmítnutí, dostupnost symbolu nebo spojení.

Zpět na návody pro MetaTrader 4