Claude Code für MQL5 Expert Advisors mit Kompilier-Schleife.
Claude Code kann MQL5-Code für Expert Advisors schreiben und ihn über den Kommandozeilen-Compiler von MetaEditor auch selbst kompilieren. Der entscheidende Baustein ist eine Kompilier-Schleife: Claude Code ruft metaeditor64.exe /compile mit der Option /log auf, liest das Compiler-Log, behebt die gemeldeten Fehler und kompiliert erneut, bis der Code fehlerfrei übersetzt. Stand Oktober 2026 hat MetaQuotes mit Build 6060 zusätzlich einen eigenen KI-Assistenten und MCP-Unterstützung in MetaTrader 5 eingebaut. Beide Wege ergänzen sich. Dieser Artikel zeigt den Aufbau Schritt für Schritt, wie Sie MQL5-Konventionen als Skill und in einer CLAUDE.md festhalten, wo der eingebaute Assistent die bessere Wahl ist und warum fehlerfrei kompilierter Order-Code noch lange kein sicherer Order-Code ist. Ein Expert Advisor (EA) ist dabei ein MQL5-Programm, das im MetaTrader-5-Terminal automatisch Handelsentscheidungen trifft und Orders sendet.
Kann Claude Code MQL5 überhaupt?
Claude Code ist das agentische Coding-Werkzeug von Anthropic: Es liest ein Projekt, bearbeitet Dateien und führt Befehle in der Shell aus, wahlweise im Terminal, in VS Code, in JetBrains-IDEs oder in der Desktop-App. MQL5 ist für das Modell eine Programmiersprache wie andere auch. Sie ähnelt C++, und Claude Code schreibt die typischen Bausteine eines Expert Advisors: Event-Handler wie OnInit, OnTick und OnDeinit, Eingabeparameter mit input und Handelslogik mit der Klasse CTrade aus der Standardbibliothek.
Das Problem liegt woanders. Ohne Compiler arbeitet jedes Sprachmodell blind. Gerade bei MQL5 kommen dann typische Fehler zustande: Reste aus MQL4, etwa die vordefinierten Variablen Bid und Ask oder OrderSend mit der alten MQL4-Signatur, dazu falsch geschriebene Konstanten und unpassende Parametertypen. Solche Fehler fallen beim Lesen kaum auf, beim Kompilieren sofort.
Deshalb bekommt Claude Code den Compiler als Werkzeug an die Hand. Dafür brauchen Sie:
- Windows mit MetaTrader 5: MetaEditor wird mit dem Terminal installiert. Auf macOS läuft MetaTrader 5 laut MetaQuotes in einer Wine-Umgebung, einer Kompatibilitätsschicht für Windows-Programme. Die Kompilierung per Kommandozeile muss dort ebenfalls über Wine laufen, was zusätzlichen Einrichtungsaufwand bedeutet.
- Claude Code mit einem Claude-Abo oder einem Konto in der Anthropic Console.
- Eine Shell: Auf nativem Windows empfiehlt Anthropic Git for Windows, damit Claude Code Bash nutzen kann. Ohne Git for Windows verwendet Claude Code PowerShell.
- Einen Projektordner unter Versionskontrolle, damit jede Änderung als Diff, also als Gegenüberstellung von alter und neuer Fassung, nachvollziehbar bleibt.
MetaEditor per Kommandozeile: kompilieren, Log, Syntaxprüfung.
MetaEditor lässt sich als reiner Compiler starten, ohne dass die Oberfläche bedient werden muss. Die Dokumentation von MetaQuotes beschreibt dafür diese Schalter:
| Aufruf | Wirkung |
|---|---|
/compile:"…\Datei.mq5" | kompiliert eine einzelne Quelldatei |
/compile:"…\Ordner" | kompiliert alle Quelldateien im Ordner, ohne Unterordner; Dateien mit passender kompilierter Version werden übersprungen |
/log | schreibt ein Compiler-Log <Dateiname>.log in den Ordner der Quelldatei |
/s /log | prüft nur die Syntax, ohne zu kompilieren; das Ergebnis steht im Log |
/include:"…\MQL5" | nutzt einen anderen MQL5-Ordner für Include-Dateien (.mqh) und Ressourcen |
Der Schalter /include ist wichtig, wenn Ihr Projekt nicht im Datenordner des Terminals liegt, sondern zum Beispiel in einem eigenen Git-Repository. Include-Dateien sucht MetaEditor dann unter dem angegebenen Ordner im Unterordner Include.
Die Dokumentation legt weder Exit-Codes noch das genaue Format der Logdatei fest. Verlassen Sie sich deshalb nicht auf den Rückgabewert des Prozesses, sondern lassen Sie das Log auslesen. Ein kleines PowerShell-Skript im Projekt bündelt den Aufruf, damit Claude Code nicht jedes Mal Pfade zusammensetzen muss:
# scripts/compile.ps1 – kompiliert eine MQL5-Datei und gibt das Compiler-Log aus
param([Parameter(Mandatory)][string]$Datei)
$MetaEditor = "C:\Program Files\MetaTrader 5\metaeditor64.exe" # Pfad anpassen
$MqlRoot = "C:\Projekte\mein-ea\MQL5" # Ordner mit Include\
$Quelle = (Resolve-Path $Datei).Path
Start-Process -FilePath $MetaEditor -Wait -ArgumentList @(
"/compile:`"$Quelle`"", "/include:`"$MqlRoot`"", "/log")
$Log = [IO.Path]::ChangeExtension($Quelle, ".log")
if (Test-Path $Log) { Get-Content $Log } else { Write-Error "Kein Log gefunden: $Log" }Bevor Sie den Ablauf automatisieren, bauen Sie einmal absichtlich einen Fehler ein und sehen sich das Log selbst an. So wissen Sie, wie Fehler, Warnungen und das Endergebnis bei Ihrer Installation aussehen.
Die Kompilier-Schleife: Claude Code liest Fehler und korrigiert.
Mit dem Skript wird aus „Code schreiben“ ein überprüfbarer Arbeitsablauf. Claude Code arbeitet ihn in einer Schleife ab:
- Es ändert eine
.mq5- oder.mqh-Datei. - Es ruft
scripts/compile.ps1mit der Haupt-EA-Datei auf. - Es liest das Log: Fehlermeldungen mit Datei, Zeile und Beschreibung.
- Es behebt die Ursache und kompiliert erneut.
- Die Schleife endet bei 0 Fehlern. Warnungen, etwa zu impliziten Typumwandlungen, werden einzeln bewertet und nicht pauschal ignoriert.
Den Rahmen setzen Sie im Auftrag. Typisches Beispiel: „Implementiere den Trailing-Stop laut docs/regelwerk.md. Kompiliere nach jeder Änderung mit scripts/compile.ps1. Fertig ist die Aufgabe erst, wenn das Log 0 Fehler zeigt. Ändere keine Eingabeparameter ohne Rückfrage.“ Wer sich nicht auf die Disziplin des Modells verlassen will, nutzt Hooks: Das sind Shell-Befehle, die Claude Code vor oder nach bestimmten Aktionen ausführt, zum Beispiel ein Kompilierlauf nach jeder Dateiänderung.
Ein Detail aus der Praxis: Bei der Ordner-Kompilierung überspringt MetaEditor Dateien, die bereits eine passende kompilierte Version haben. Wer sichergehen will, dass Änderungen in Include-Dateien wirklich ankommen, kompiliert gezielt die Haupt-EA-Datei.
Die Schleife hat eine klare Grenze. Der Compiler prüft Syntax und Typen, nicht die Handelslogik. Und ein Modell, das unbedingt „0 Fehler“ erreichen soll, kann Fehler auch durch Abschwächung „lösen“: Rückgabewerte werden ignoriert, Casts eingefügt, Prüfungen auskommentiert. Deshalb gehört nach jeder Schleife ein Blick auf den Diff dazu, nicht nur auf das Compiler-Ergebnis.
MQL5-Konventionen als Skill und in der CLAUDE.md festhalten.
Damit Claude Code nicht in jeder Sitzung neu raten muss, wie Ihr Projekt funktioniert, gibt es zwei Ablageorte. Die CLAUDE.md im Projektordner liest Claude Code zu Beginn jeder Sitzung. Dort stehen dauerhafte Regeln. Ein Skill ist ein Ordner mit einer Datei SKILL.md, im Projekt unter .claude/skills/<name>/. Claude Code kennt laufend nur Name und Beschreibung, lädt den vollständigen Inhalt bei Bedarf und lässt sich auch direkt mit /name aufrufen. Skills eignen sich für wiederholbare Abläufe.
Ein Auszug aus einer CLAUDE.md für ein MQL5-Projekt:
# MQL5-Projekt: Regeln für Claude Code - Sprache: MQL5, kein MQL4 (keine Bid/Ask-Variablen, kein OrderSend mit MQL4-Signatur) - Handel nur über CTrade aus <Trade\Trade.mqh>, jede Order mit Magic Number - Nach jedem Handelsaufruf ResultRetcode() prüfen und ins Journal schreiben - In OnInit den Kontomodus prüfen (ACCOUNT_MARGIN_MODE), Positionen per Ticket auswählen - Volumen auf SYMBOL_VOLUME_MIN, _MAX und _STEP normalisieren, Preise auf _Digits - Kompilieren: scripts/compile.ps1 <Datei>, fertig erst bei 0 Fehlern - Tabu: Zugangsdaten, Terminal-Einstellungen, Live-Konten
Und ein schlanker Skill für die Kompilier-Schleife:
--- name: mql5-build description: Kompiliert MQL5-Dateien mit MetaEditor und behebt Compilerfehler. Verwenden nach jeder Änderung an .mq5- oder .mqh-Dateien. --- 1. scripts/compile.ps1 mit der Haupt-EA-Datei aufrufen. 2. Log lesen, Fehler nach Datei und Zeile ordnen. 3. Ursache beheben. Keine Prüfungen entfernen, keine Rückgabewerte ignorieren. 4. Erneut kompilieren, bis 0 Fehler. Warnungen einzeln bewerten. 5. Bericht: geänderte Dateien, verbleibende Warnungen, offene Fragen.
Die Aufteilung hat einen praktischen Grund: Regeln, die immer gelten, gehören in die CLAUDE.md. Abläufe mit Schritten und Abbruchkriterien gehören in einen Skill. Die Magic Number in der Regelliste ist eine Kennzahl, an der ein EA seine eigenen Orders und Positionen erkennt. Eine zweite Skill-Datei mit einer Prüfliste für Order-Code, wie sie im übernächsten Abschnitt steht, lohnt sich ebenfalls. Grundlagen für robuste EAs finden Sie in meinen MQL5-Praxis-Tipps.
Claude Code oder der eingebaute MT5-KI-Assistent?
Seit Build 6060 vom 23.07.2026 hat MetaTrader 5 native Unterstützung für das Model Context Protocol (MCP), einen offenen Standard, über den KI-Agenten auf Daten und Funktionen zugreifen. Dazu kommt ein KI-Assistent in Terminal und MetaEditor. Im Editor erzeugt er laut MetaQuotes MQL5-Programme, analysiert Code, findet Fehler und hilft beim Refactoring. Anmelden können Sie sich mit einem MQL5.community-Konto, das automatisch den kostenlosen Plan „MQL5 Lite“ erhält, oder Sie hinterlegen eigene API-Schlüssel, unter anderem von OpenAI, Anthropic, Gemini, DeepSeek oder Ollama. Externe Systeme wie Claude Code und OpenAI Codex lassen sich per MCP anbinden. Spätere Builds erweitern die Funktionen: Build 6180 (03.09.2026) liest Strategy-Tester-Berichte und Logs, Build 6230 (24.09.2026) bereitet Testläufe mit EA-Parametern vor und kann EAs auf Charts starten und entfernen.
| Kriterium | Claude Code mit Kommandozeilen-Compiler | MT5-KI-Assistent (ab Build 6060) |
|---|---|---|
| Arbeitsort | Projektordner mit Git, beliebiger Editor | MetaEditor und Terminal |
| Modelle | Claude-Modelle von Anthropic | MQL5-Lite-Plan oder eigene API-Schlüssel verschiedener Anbieter |
| Eigene Abläufe | CLAUDE.md, Skills, Hooks, Skripte | Abläufe innerhalb der MetaTrader-Oberfläche |
| Terminal, Tester, Logs | nur über eine MCP-Anbindung an MetaTrader 5 | direkt integriert, Tester-Berichte seit Build 6180 |
| Handelsrechte | keine, solange kein Zugang zum Terminal besteht | konfigurierbar: erlauben, verbieten oder manuelle Bestätigung |
Ein Entweder-oder ist das nicht. Für die Entwicklung im Repository mit Versionskontrolle, Reviews und wiederholbaren Builds ist Claude Code mit dem Kommandozeilen-Compiler der sauberere Weg. Beim Auswerten von Testerberichten direkt im Terminal kann der eingebaute Assistent helfen. Wenn Sie Claude Code per MCP an das Terminal anbinden, dann nur an eine Installation mit Demokonto und mit verbotenem KI-Handel.
Typische Fehlerbilder in KI-generiertem Order-Code.
Fehlerfrei kompiliert heißt nicht korrekt. Die folgenden Fehlerbilder übersteht der Compiler problemlos, und sie gehören deshalb in jede Prüfliste für KI-generierten Order-Code:
- Netting oder Hedging: Auf Netting-Konten gibt es je Symbol nur eine Position, auf Hedging-Konten mehrere.
PositionSelect(symbol)wählt auf Hedging-Konten laut Dokumentation die Position mit dem niedrigsten Ticket. Ein EA, der auf einem Netting-Konto entwickelt wurde, verwaltet auf einem Hedging-Konto so womöglich die falsche Position. Abhilfe: Kontomodus überACCOUNT_MARGIN_MODEprüfen und Positionen über Ticket und Magic Number auswählen, etwa mitPositionSelectByTicket. - Rückgabewert von OrderSend:
truebedeutet nur, dass die Grundprüfung der Strukturen bestanden ist, nicht, dass der Handel ausgeführt wurde. Entscheidend ist der Rückgabecode des Handelsservers (retcode). MetaQuotes empfiehlt außerdem, Anfragen vorab mitOrderCheckzu prüfen. - Volumen und Preise: Lotgrößen, die nicht auf Minimum, Maximum und Schrittweite des Symbols normalisiert sind, Preise ohne Rundung auf die Nachkommastellen, Stop-Abstände unterhalb des Mindestabstands des Brokers.
- Ausführungsart: fest eingetragener Filling-Modus, also die Regel für Teilausführungen, den der Broker für das Symbol nicht zulässt.
- Doppelte Orders: Signal wird auf jedem Tick statt einmal je neuer Kerze ausgewertet, oder der EA prüft nicht, ob bereits eine eigene Position offen ist, etwa nach einem Neustart des Terminals.
- Fehlerbehandlung: gar keine Reaktion auf abgelehnte Orders oder Verbindungsabbrüche, oder umgekehrt Wiederholungen ohne Obergrenze.
Claude Code eignet sich gut, um bestehenden Code genau auf diese Punkte zu prüfen. Ein Review-Auftrag mit der Prüfliste als Skill geht den Code Punkt für Punkt durch und benennt die betroffenen Stellen. Die Entscheidung, ob ein Fund ein echter Fehler ist, bleibt bei Ihnen.
Grenzen und Risiken: was nicht automatisiert werden sollte.
Die Kompilier-Schleife beschleunigt die Entwicklung. Sie verschiebt aber auch das Risiko: Es entsteht schneller mehr Code, der geprüft werden muss. Diese Grenzen sollten Sie ziehen:
- Kein Live-Konto in Reichweite: Claude Code arbeitet im Projektordner, nicht an einem Terminal mit echtem Geld. Zugangsdaten gehören nicht in das Repository. Im MetaTrader-KI-Assistenten lässt sich KI-Handel verbieten oder an eine manuelle Bestätigung knüpfen; nutzen Sie diese Einstellung.
- Keine Bildschirm-Steuerung von Handelsplattformen: Bei der Computer-Use-Funktion in Claude Cowork, mit der Claude Programme am Bildschirm bedient, sind Investment-, Trading- und Krypto-Anwendungen laut Anthropic standardmäßig gesperrt. Das ist eine sinnvolle Voreinstellung, kein Hindernis, das man umgehen sollte.
- Berechtigungen bewusst vergeben: Aktuelle Versionen von Claude Code starten im Terminal und in VS Code standardmäßig im Auto-Modus. Dann prüft ein Klassifikator die Aktionen, statt Sie jedes Mal zu fragen. Im manuellen Modus fragt Claude Code dagegen vor Shell-Befehlen und Dateiänderungen nach. Auto-Modus und pauschale Freigaben gehören nicht auf einen Rechner, auf dem gleichzeitig ein Terminal mit Live-Konto läuft.
- Überanpassung: Wenn Varianten und Optimierungsläufe fast nichts mehr kosten, steigt die Gefahr, eine Strategie so lange an historische Daten anzupassen, bis der Backtest glänzt. Ein guter Backtest ist kein Beleg für künftige Ergebnisse. Bei gehebelten Produkten ist ein Totalverlust möglich.
- Verantwortung: Die Handelslogik müssen Sie selbst verstehen. Ein EA, dessen Order-Code niemand gelesen hat, gehört nicht auf ein echtes Konto, egal wer ihn geschrieben hat.
Hinzu kommt der schnelle Wandel der Werkzeuge. MetaQuotes hat zwischen Juli und September 2026 mehrere Builds mit neuen KI-Funktionen veröffentlicht, Modelle von Anthropic wechseln ebenfalls in kurzen Abständen. Ein Build-Skript im Repository sorgt dafür, dass Ihr Ablauf reproduzierbar bleibt, auch wenn sich die Werkzeuge ändern.
Review, Strategy Tester, Demokonto: der sichere Weg zum Live-Betrieb.
Der Weg vom ersten Prompt bis zum Live-Betrieb lässt sich in klare Schritte gliedern:
- Projekt aufsetzen: Repository anlegen,
compile.ps1, CLAUDE.md und den Build-Skill einrichten. - Regelwerk aufschreiben: Einstieg, Ausstieg, Positionsgröße und Risikogrenzen als Text, bevor Code entsteht. Im Plan-Modus von Claude Code lässt sich die Umsetzung zuerst nur planen.
- Kompilier-Schleife: bis 0 Fehler, Warnungen bewertet.
- Review: Diff mit der Prüfliste für Order-Code lesen, von Ihnen oder einer zweiten Person.
- Strategy Tester: mit realen Ticks testen, Zeiträume außerhalb der Optimierung prüfen, Journal auf abgelehnte Orders durchsehen.
- Demokonto: mehrere Wochen beim Zielbroker, mit dessen Kontomodus, Ausführungsarten und Latenzen. Ein EA kann über
ACCOUNT_TRADE_MODEerkennen, ob er auf einem Demo- oder Echtgeldkonto läuft, und den Echtgeldbetrieb erst nach ausdrücklicher Freigabe per Eingabeparameter erlauben. - Live mit kleinem Volumen: Überwachung, Alarme und ein Notaus, der alle eigenen Orders stoppt.
Wenn Sie den Ablauf weiter automatisieren wollen, ist der nächste Schritt eine Pipeline, die jeden Commit kompiliert und testet. Wie das für Trading-Strategien aussieht, beschreibe ich unter CI/CD für Trading-Strategien. Wenn Sie die Umsetzung nicht selbst übernehmen wollen, finden Sie meinen Ansatz unter Trading-Automatisierung.
Häufige Fragen.
Kann Claude Code MQL5-Code kompilieren?
Ja, indirekt. Claude Code führt Shell-Befehle aus und kann damit den Kommandozeilen-Compiler von MetaEditor aufrufen: metaeditor64.exe mit /compile und /log. Das Compiler-Log liest Claude Code anschließend aus, behebt die gemeldeten Fehler und kompiliert erneut. Voraussetzung ist eine MetaTrader-5-Installation auf Windows oder unter Wine. Ein kleines Skript im Projekt, das Compiler-Aufruf und Log-Ausgabe bündelt, macht den Ablauf zuverlässig.
Brauche ich Windows, um MQL5 mit Claude Code zu entwickeln?
Für das Kompilieren ja, oder eine Wine-Umgebung, in der MetaTrader 5 laut MetaQuotes auch auf macOS läuft. Claude Code selbst läuft auf Windows, macOS und Linux. Auf nativem Windows empfiehlt Anthropic Git for Windows, damit Claude Code Bash nutzen kann; ohne Git for Windows verwendet es PowerShell. Am einfachsten ist ein Windows-Rechner oder eine Windows-VM, auf der Terminal, MetaEditor und Claude Code zusammen laufen.
Ist der KI-Assistent in MetaTrader 5 eine Alternative zu Claude Code?
Teilweise. Seit Build 6060 vom 23.07.2026 kann der Assistent in MetaEditor MQL5-Code erzeugen, analysieren und Fehler finden, seit Build 6180 auch Strategy-Tester-Berichte lesen. Claude Code ist stärker, wenn Sie im Git-Repository mit eigenen Regeln, Skills und Skripten arbeiten. Beide lassen sich kombinieren, denn MetaTrader 5 erlaubt die Anbindung externer Agenten wie Claude Code über MCP.
Kann Claude Code einen bestehenden Expert Advisor überprüfen?
Ja, ein Code-Review ist ein guter Einsatz. Geben Sie Claude Code eine Prüfliste mit: Kontomodus Netting oder Hedging, Auswertung des Rückgabecodes nach OrderSend, Normalisierung von Volumen und Preisen, Schutz vor doppelten Orders und Fehlerbehandlung. Die Funde sollten Sie selbst bewerten und Änderungen anschließend im Strategy Tester und auf einem Demokonto prüfen, bevor der EA wieder echtes Geld handelt.
Sollte Claude Code meinen Expert Advisor auf dem Live-Konto starten dürfen?
Nein. Ein Coding-Agent gehört in den Projektordner, nicht an ein Terminal mit echtem Geld. Wenn Sie Claude Code per MCP an MetaTrader 5 anbinden, nutzen Sie eine Installation mit Demokonto und verbieten KI-Handel in den Einstellungen oder verlangen eine manuelle Bestätigung. Den Schritt in den Live-Betrieb gehen Sie selbst, nach Review, Strategy Tester und mehreren Wochen auf einem Demokonto.
Quellen und Stand.
- Compiling MQL programs in other development environments — MetaQuotes (MetaEditor-Hilfe)
- MetaTrader 5 Build 6060: AI Integration, Passkey, and Code Management Improvements in MetaEditor — MetaQuotes
- MetaTrader 5 Release Notes (u. a. Build 6180 vom 03.09.2026 und Build 6230 vom 24.09.2026) — MetaQuotes
- Claude Code overview — Anthropic
- Extend Claude with skills — Anthropic
- Choose a permission mode — Anthropic
- OrderSend – MQL5 Reference — MetaQuotes
- Account Properties (ACCOUNT_MARGIN_MODE, ACCOUNT_TRADE_MODE) – MQL5 Reference — MetaQuotes
- Symbol Properties (SYMBOL_VOLUME_MIN/MAX/STEP, SYMBOL_FILLING_MODE) – MQL5 Reference — MetaQuotes
- Let Claude use your computer in Cowork — Anthropic Help Center
Stand: 6. Oktober 2026. Produkte, Funktionen und Preise ändern sich schnell; maßgeblich sind die Angaben der Anbieter und Behörden.
Sie wollen Ihren Expert Advisor mit KI-Unterstützung sauber entwickeln und testen lassen? Unverbindlich anfragen — wir klären Regelwerk, Entwicklungsumgebung, Testumfang und den Weg über das Demokonto in den Live-Betrieb. Mehr zu meinem Angebot: Trading-Systeme entwickeln lassen.