MT5-Fehlercodes erklärt: 10016, 10018, 10019, 10027, 10030 und die Lösung
Inhalt (7)
Inhalt
MT5- / MQL5-Fehlercodes: Retcodes 10004–10031 und Laufzeitfehler
MT5 meldet zwei Arten von Fehlern: 5-stellige Trade-Retcodes (z. B. 10027 AutoTrading deaktiviert, 10030 nicht unterstützter Füllmodus, 10016 ungültige Stops, 10019 nicht genügend Geld) und 4-stellige Laufzeitfehler aus GetLastError() (z. B. 4401, 4756) — die folgende Tabelle ordnet jedem Code seine Lösung zu.
Schnellübersicht: Code → Bedeutung → Lösung
Nummern und Konstantennamen folgen der offiziellen MQL5-Referenz (Rückgabecodes des Handelsservers und Laufzeitfehler).
Trade-Retcodes (MqlTradeResult.retcode)
| Code | Konstante | Bedeutung | Lösung | Details |
|---|---|---|---|---|
| 10004 | TRADE_RETCODE_REQUOTE | Requote — der Kurs hat sich vor der Ausführung bewegt | Die zulässige Abweichung (Deviation) vergrößern oder zum aktuellen Kurs erneut senden | Off Quotes & Requotes |
| 10006 | TRADE_RETCODE_REJECT | Anfrage abgelehnt | Meist ein weiter Spread oder ein schneller Markt; den EA bei einem späteren Tick erneut versuchen lassen | — |
| 10013 | TRADE_RETCODE_INVALID | Ungültige Anfrage | Ein Feld der Anfrage (Aktion, Ordertyp, Symbol) ist falsch; vor dem Senden mit OrderCheck() prüfen | — |
| 10014 | TRADE_RETCODE_INVALID_VOLUME | Ungültiges Volumen in der Anfrage | Das Lot auf Minimum, Maximum und Schrittweite des Symbols runden (SYMBOL_VOLUME_MIN / MAX / STEP) | — |
| 10015 | TRADE_RETCODE_INVALID_PRICE | Ungültiger Preis in der Anfrage | Den Preis auf die Nachkommastellen und die Tick-Größe des Symbols normalisieren; sicherstellen, dass eine Pending-Order auf der richtigen Seite des Marktes liegt | — |
| 10016 | TRADE_RETCODE_INVALID_STOPS | Ungültige Stops in der Anfrage | SL/TP weiter entfernt als den Stops-Level des Brokers und auf der richtigen Seite des Kurses setzen | Invalid Stops |
| 10017 | TRADE_RETCODE_TRADE_DISABLED | Handel ist deaktiviert | Den Handelsmodus des Symbols unter Spezifikation prüfen und ob Sie mit dem Handelspasswort (nicht dem Investor-Passwort) angemeldet sind; andernfalls den Broker fragen | — |
| 10018 | TRADE_RETCODE_MARKET_CLOSED | Markt ist geschlossen | Warten, bis die Handelssitzung des Symbols öffnet | Markt geschlossen |
| 10019 | TRADE_RETCODE_NO_MONEY | Nicht genügend Geld, um die Anfrage auszuführen | Die Lotgröße verringern, Positionen schließen oder Geld einzahlen | Nicht genügend Geld |
| 10021 | TRADE_RETCODE_PRICE_OFF | Keine Kurse zur Verarbeitung der Anfrage | Die Verbindung prüfen und ob das Symbol derzeit quotiert wird, dann erneut versuchen | Off Quotes & Requotes |
| 10026 | TRADE_RETCODE_SERVER_DISABLES_AT | Autotrading vom Server deaktiviert | Der Broker sperrt den algorithmischen Handel auf diesem Konto; den Broker kontaktieren | AutoTrading deaktiviert |
| 10027 | TRADE_RETCODE_CLIENT_DISABLES_AT | Autotrading vom Client-Terminal deaktiviert | Den Button Algo-Trading einschalten und Algo-Trading in den Optionen sowie in den Eigenschaften des EA erlauben | AutoTrading deaktiviert |
| 10030 | TRADE_RETCODE_INVALID_FILL | Ungültiger Order-Füllmodus | type_filling auf einen Modus setzen, den das Symbol unterstützt (FOK / IOC / Return) | Nicht unterstützter Füllmodus |
| 10031 | TRADE_RETCODE_CONNECTION | Keine Verbindung zum Handelsserver | Die Statusleiste der Verbindung, das VPS-Netzwerk und den Serverstatus des Brokers prüfen | — |
Laufzeitfehler (GetLastError())
| Code | Konstante | Bedeutung | Lösung | Details |
|---|---|---|---|---|
| 4001 | ERR_INTERNAL_ERROR | Unerwarteter interner Fehler | Nicht auf eine einzelne Ursache festgelegt: vor der zu prüfenden Funktion ResetLastError() aufrufen und das Terminal neu starten oder aktualisieren, falls der Fehler bestehen bleibt | — |
| 4401 | ERR_HISTORY_NOT_FOUND | Angeforderte Historie nicht gefunden | Vor dem Auslesen HistorySelect() für einen Zeitraum aufrufen, der den Deal oder die Order enthält | — |
| 4752 | ERR_TRADE_DISABLED | Handel durch Expert Advisors verboten | Algo-Trading einschalten und in den Eigenschaften des EA „Algo-Trading erlauben“ anhaken | AutoTrading deaktiviert |
| 4756 | ERR_TRADE_SEND_FAILED | Senden der Handelsanfrage fehlgeschlagen | OrderSend() hat false zurückgegeben; den eigentlichen Grund in MqlTradeResult.retcode ablesen (oft 10027, 10030 oder 10016) | — |
Sie kommen von MT4? MT4 verwendet für dieselben Situationen andere, meist 3-stellige Nummern (134, 130, 132, 136, 4109 …). Jeder Abschnitt unten nennt die MT4-Entsprechung laut der offiziellen MQL4-Referenz. Beachten Sie, dass die Nummer 4109 in MT5 ERR_CHART_WRONG_PROPERTY bedeutet (ein Chart-Fehler), keinen Handelsfehler.
Unsere 3 Haupt-EAs (alle Langzeit-Backtest- und öffentlichen Forward-Zahlen veröffentlicht)
📧 Kostenloser E-Mail-Kurs (8 E-Mails) + Paket mit 13 MT5-Indikatoren nur für Abonnenten
* Datenschutz streng geschützt. Sie können jederzeit kündigen.
So rufen Sie den Experts-Tab auf
Klicken Sie im unteren Bereich von MT5 auf den Reiter Experts, um ein chronologisches Protokoll aller EA-Aktivitäten zu sehen.
Anzeigeformat:
2026.05.18 10:00:01.234 GOLD VIPER XAUUSD,M30: [ERROR] 10016
Datum/Zeit EA-Name Symbol Zeitrahmen Meldung
Wenn ein Fehler erscheint, ermitteln Sie die Ursache anhand der Codenummer in der Tabelle oben.
Häufige Fehlercodes und ihre Lösungen
10019 — Nicht genügend Geld (TRADE_RETCODE_NO_MONEY)
MT4-Entsprechung: 134 ERR_NOT_ENOUGH_MONEY. ERR_NO_MONEY ist eine weit verbreitete Kurzform für dieselbe Situation.
Beispielmeldungen: "Order failed: not enough money"
"No money"
Ursache: Unzureichende Margin — der EA kann keine neue Position eröffnen.
Lösung:
- Überprüfen Sie im MT5-Reiter Handel das aktuelle Margin-Level
- Liegt das Margin-Level nahe bei oder unter 100 %, erwägen Sie eine zusätzliche Einzahlung
- Senken Sie die Einstellung
RiskPercentdes EA, um die Positionsgröße zu verringern - Schließen Sie einige offene Positionen manuell, um Margin freizugeben
📖 Warum der Fehler auch bei scheinbar ausreichendem Kontostand erscheint und welcher MQL5-Code ihn verhindert, lesen Sie in Not enough money in MT5 — Ursachen und Lösungen.
10027 — AutoTrading vom Client deaktiviert (TRADE_RETCODE_CLIENT_DISABLES_AT)
Zugehöriger MT5-Laufzeitfehler: 4752 ERR_TRADE_DISABLED. MT4-Entsprechung: 4109 ERR_TRADE_NOT_ALLOWED.
Beispielmeldungen: "AutoTrading disabled by client"
"Trade is not allowed"
Ursache: Der automatische Handel ist in MT5 ausgeschaltet.
Lösung:
- Klicken Sie in der MT5-Symbolleiste auf den Button Algo-Trading, um ihn einzuschalten (er sollte grün werden)
- Gehen Sie zu Extras → Optionen → Expert Advisors → Algo-Trading erlauben aktivieren, dann MT5 neu starten
Dieser Fehler tritt häufig auf, wenn MT5 nach einem VPS-Neustart automatisch startet.
📖 Die vollständige Berechtigungskette (Einstellungen in den Optionen, Algo-Trading erlauben pro Chart, Investor-Passwort und der Unterschied zwischen 10027 und 10026) finden Sie in AutoTrading deaktiviert in MT5 — die vollständige Lösung.
10018 — Markt geschlossen (TRADE_RETCODE_MARKET_CLOSED)
MT4-Entsprechung: 132 ERR_MARKET_CLOSED.
Beispielmeldung: "Market closed"
Ursache: Der EA hat außerhalb der Handelszeiten (Wochenende oder Feiertag) versucht, einen Trade zu eröffnen.
Lösung: Kein Handlungsbedarf. Der Markt ist am Wochenende geschlossen, und jeder Einstiegsversuch in diesem Zeitfenster erzeugt diesen Fehler; der EA nimmt den Betrieb automatisch wieder auf, sobald der Markt öffnet.
📖 Sie sehen den Fehler an Wochentagen? Handelssitzungen des Symbols, Serverzeit und Close-only-Modus behandelt Market closed (10018/132) — Ursachen und Lösungen.
10016 — Ungültige Stops (TRADE_RETCODE_INVALID_STOPS)
MT4-Entsprechung: 130 ERR_INVALID_STOPS.
Beispielmeldung: "Invalid stops"
Ursache: Der SL-Wert (Stop Loss) oder TP-Wert (Take Profit) verletzt die Mindest-Stop-Level-Anforderung des Brokers.
Lösung:
- Prüfen Sie den Stop-Level des Brokers (Mindestabstand des SL): Rechtsklick auf das Symbol in MT5 → Spezifikation → Feld Stops level
- Stellen Sie sicher, dass der SL-Abstand des EA größer ist als der Stop-Level
- Dieser Fehler tritt am häufigsten in Phasen geringer Volatilität auf, wenn die ATR-Werte sehr klein sind
📖 Wie Stop-Level tatsächlich funktionieren, worin sich 10016 und 130 unterscheiden und welcher MQL5-Code den Fehler dauerhaft verhindert, lesen Sie in Invalid Stops (10016/130) — die vollständige Lösung.
10021 — Keine Kurse (TRADE_RETCODE_PRICE_OFF)
MT4-Entsprechung: 136 ERR_OFF_QUOTES.
Beispielmeldung: "Off quotes"
Ursache: Vom Broker-Server wird kein Kurs empfangen — ein Verbindungsproblem.
Lösung:
- Überprüfen Sie den Verbindungsstatus in der MT5-Statusleiste am unteren Bildschirmrand
- Wenn die Verbindung getrennt ist, starten Sie MT5 neu
- Prüfen Sie die Server-Statusseite Ihres Brokers auf Störungen
- Kontrollieren Sie die Netzwerkverbindung Ihres VPS
📖 Den Unterschied zu Requotes (10004/138), die Abstimmung der Deviation und eine Retry-Implementierung finden Sie in Off Quotes & Requotes (10021/10004) — die vollständige Lösung.
📖 Sie erhalten direkt nach einem Brokerwechsel Unsupported filling mode (10030)? Das ist ein anderes Problem — siehe Unsupported filling mode (10030) — so beheben Sie den Fehler.
10012 — Zeitüberschreitung der Anfrage (TRADE_RETCODE_TIMEOUT)
MT4-Entsprechung: 128 ERR_TRADE_TIMEOUT.
Beispielmeldung: "Request canceled by timeout"
Ursache: Die Order ist wegen Serverüberlastung oder Netzwerkverzögerung abgelaufen.
Lösung:
- Dies tritt am häufigsten direkt nach wichtigen Nachrichten auf, wenn die Serverlast hoch ist
- Der EA versucht es in der Regel beim nächsten Tick erneut — kein Handlungsbedarf
- Tritt der Fehler häufig auf, überprüfen Sie die Netzwerkumgebung Ihres VPS oder ziehen Sie einen anderen Broker in Betracht
10006 — Anfrage abgelehnt (TRADE_RETCODE_REJECT)
Beispielmeldung: "Request rejected"
Ursache: Der Broker hat die Order abgelehnt — typischerweise, weil der Spread die Grenzen überschreitet oder sich der Kurs zu schnell bewegt.
Lösung:
- Überprüfen Sie die Einstellung
MaxSpreadPoints; dieser Fehler ist häufig, wenn sich die Spreads deutlich ausweiten - Während und unmittelbar nach Nachrichten ist dies erwartetes Verhalten — Sie können es ignorieren
- Tritt der Fehler häufig auf, erhöhen Sie den Wert von
MaxSpreadPointsleicht
"Margin level too low"
Beispielmeldung: "Margin level too low. Skip signal."
Ursache: Die EA-Einstellung UseMarginCheck = true hat erkannt, dass das Margin-Level unter MinMarginLevel (z. B. 200 %) gefallen ist, daher werden neue Einstiege automatisch blockiert.
Lösung:
- Dies ist ein normales Schutzverhalten — kein Fehler
- Die Einstiege werden automatisch fortgesetzt, sobald sich das Margin-Level erholt
- Grundlegende Abhilfe: mehr Geld einzahlen oder
RiskPercentsenken
"No signal on this bar" oder "Wait for next bar"
Das sind keine Fehler — es sind Debug-Protokolleinträge.
"No signal. ATR=1245, EMA(50)=1998.23"
Der EA bewertet den Chart bei jeder Kerze und protokolliert, wenn die Einstiegsbedingungen nicht erfüllt sind. Das ist normaler Betrieb.
Fehlerklassifikation nach Priorität
| Priorität | Fehler | Maßnahme |
|---|---|---|
| Kritisch | 10019 Nicht genügend Geld (MT4: 134) | Sofort Geld einzahlen oder die Lotgröße verringern |
| Kritisch | 10027 AutoTrading deaktiviert / 4752 (MT4: 4109) | Algo-Trading einschalten |
| Warnung | 10016 Ungültige Stops (MT4: 130) | SL-Einstellungen überprüfen |
| Warnung | 10030 Ungültiger Füllmodus | Einen Füllmodus setzen, den das Symbol unterstützt |
| Warnung | 10021 Keine Kurse (MT4: 136) wiederholt | Verbindung prüfen |
| Normal | 10018 Markt geschlossen (MT4: 132) nur am Wochenende | Kein Handlungsbedarf |
| Normal | 10012 Zeitüberschreitung (MT4: 128) vereinzelt | Kein Handlungsbedarf |
| Normal | Margin level too low | Normaler Schutz bei niedriger Margin |
Den Experts-Tab effizient auslesen
Protokolle filtern
Klicken Sie mit der rechten Maustaste in den Experts-Tab und wählen Sie Filter, um nur die Protokolle eines bestimmten EA oder Fehlertyps anzuzeigen.
Speicherort der Protokolldateien
Die MT5-Protokolldateien werden hier gespeichert:
C:\Users\[Benutzername]\AppData\Roaming\MetaQuotes\Terminal\[ID]\MQL5\Logs\
Die Dateien werden automatisch nach Datum angelegt. Öffnen Sie diesen Ordner, wenn Sie Fehler untersuchen.
Zusammenfassung
Die meisten EA-Fehler lassen sich in vier Kategorien einteilen:
- Unzureichende Margin (10019) — Mehr Geld einzahlen oder die Lotgröße verringern
- AutoTrading aus (10027 / 4752) — Den Button Algo-Trading anklicken, um es einzuschalten
- Verbindungsprobleme (10021 / 10031) — MT5 neu starten oder das VPS-Netzwerk prüfen
- Normales Verhalten — Kein Handlungsbedarf (Marktschließung am Wochenende, Spread-Vermeidung usw.)
Machen Sie es sich zur Gewohnheit, den Experts-Tab täglich zu prüfen, damit Sie kritische Fehler (10019 und 10027) schnell erkennen, bevor sie Probleme verursachen.
FAQ
F: Wo kann ich Fehlercodes nachschlagen?
Die offizielle MQL5-Referenz listet jeden Code auf: Rückgabecodes des Handelsservers für den Bereich 10004–10046 und Laufzeitfehler für den Bereich 4xxx. Sie können auch in der integrierten Hilfe von MT5 suchen (Taste F1).
F: Was ist der Unterschied zwischen einem Retcode und GetLastError()?
Ein Retcode (10004–10046) ist die Antwort des Handelsservers auf eine Order und wird in MqlTradeResult.retcode gespeichert. GetLastError() gibt einen Laufzeitfehler des MQL5-Programms selbst zurück (4xxx und 5xxx). Wenn OrderSend() fehlschlägt, erhalten Sie oft beides: 4756 von GetLastError() und zusätzlich einen Retcode, der den tatsächlichen Grund nennt.
F: Sollte ich den EA stoppen, wenn häufig Fehler auftreten?
Wenn 10018 (Markt geschlossen) oder 10012 (Zeitüberschreitung) gelegentlich auftreten, müssen Sie den EA nicht stoppen. Wiederholt sich jedoch 10019 (nicht genügend Geld), pausieren Sie den EA, überprüfen Sie Ihre Margin-Situation und starten Sie ihn neu, sobald das Problem behoben ist.
F: Es erscheint ein „Invalid account“-Fehler.
Möglicherweise sind Ihre MT5-Anmeldedaten (Servername, Login-ID oder Passwort) falsch. Gehen Sie zu Datei → Konto eröffnen, um sich erneut anzumelden.
F: Es werden keine Fehler angezeigt, aber der EA eröffnet keine Trades.
Wenn es weder Fehler noch Einstiege gibt, wartet der EA einfach darauf, dass seine Einstiegsbedingungen erfüllt werden — das ist völlig normal. EAs steigen nicht bei jeder Kerze ein; sie steigen nur ein, wenn alle Bedingungen zusammenpassen. Geben Sie ihm etwas Zeit. Ein H1-EA, der ein- bis dreimal pro Tag einsteigt, arbeitet normal.
Verwandt
2026-07-07
MT5 „Invalid Stops“ (10016 / Fehler 130): 6 Ursachen und je eine Lösung
2026-07-07
MT5 AutoTrading deaktiviert (10027 / 10026): 4 Schalter prüfen
2026-07-07
MT5-Fehler 10030 „Unsupported Filling Mode“: FOK/IOC des Symbols prüfen
2026-07-07
MT5 „Market Closed“ (10018 / 132) an einem Werktag: Ursachen und Lösung
📧 Kostenloser E-Mail-Kurs (8 E-Mails) + Paket mit 13 MT5-Indikatoren nur für Abonnenten
* Datenschutz streng geschützt. Sie können jederzeit kündigen.
Fragen zu EAs oder Forex?
Stelle sie im Trading-Forum von Nattzy (kostenlose Registrierung). Auch Fragen über diesen Artikel hinaus sind willkommen – etwa zu EA-Einstellungen oder zur Brokerwahl.
Auf Nattzy fragen ↗