MQL5 ist eine speziell für die MetaTrader-Plattform entwickelte Programmiersprache, die es ermöglicht, automatisierte Handelsstrategien (Expert Advisors), Skripte und benutzerdefinierte Indikatoren zu erstellen. Sie basiert auf der Syntax von C++ und bietet eine Vielzahl von Funktionen, die speziell für den Handel entwickelt wurden.
Einige der Grundelemente von MQL5 sind:
int
(Ganzzahlen), double
(Gleitkommazahlen) und string
(Zeichenketten).for
, while
) und bedingte Anweisungen (if
, else
), die den Ablauf des Programms steuern.Für einen Expert Advisor sind speziellere Elemente wie OnTick()
und OnInit()
von großer Bedeutung, da sie die Aktionen des EAs in Abhängigkeit von Marktereignissen und Initialisierungen steuern.
Um eine Handelsstrategie in einen Expert Advisor umzuwandeln, musst du zunächst die Logik deiner Strategie in klare Regeln fassen. Diese Regeln bilden dann die Grundlage für deinen Code. Hier ist eine allgemeine Vorgehensweise:
Ein Beispiel für den Einstieg in den Code könnte so aussehen:
int OnInit() { // Initialisierung des EAs return INIT_SUCCEEDED; }
void OnTick() { // Hauptlogik des EAs, die bei // jedem Markttick ausgeführt wird if (SignalDetected()) { // Position eröffnen OrderSend(...); } }
Beim Programmieren eines EAs sind einige Funktionen und Variablen besonders wichtig, um Handelsentscheidungen zu treffen und Positionen zu managen:
OnInit()
: Diese Funktion wird einmalig beim Start des EAs aufgerufen und dient der Initialisierung von Variablen und Einstellungen.OnTick()
: Diese Funktion wird bei jedem neuen Markttick aufgerufen und enthält die Hauptlogik des EAs.OrderSend()
: Diese Funktion wird verwendet, um eine Handelsorder abzusenden und eine Position zu eröffnen.iCustom()
: Mit dieser Funktion kannst du benutzerdefinierte Indikatoren in deinen EA integrieren.Bevor du deinen Expert Advisor live auf den Märkten einsetzt, ist es wichtig, ihn gründlich zu testen. Dafür eignet sich der MetaTrader Strategy Tester. Hier ist eine Schritt-für-Schritt-Anleitung für das Backtesting:
Bei der Programmierung eines Expert Advisors können häufig Fehler auftreten, die zu unerwarteten Ergebnissen oder Verlusten führen können. Hier sind einige häufige Fehler und Tipps, wie du sie vermeidest: