Dokumentation zur Sprache des automatischen Handels

MQL5 Referenz

MetaQuotes Language 5 (MQL5) ist eine Hochsprache für die Entwicklung von technischen Indikatoren, Handelsrobotern und Hilfsprogrammen, die den Finanzhandel automatisieren. MQL5 wurde von MetaQuotes für ihre Handelsplattform entwickelt. Die Sprachsyntax ist sehr nah an C++ und ermöglicht es Programmierern, Anwendungen im Stil der objektorientierten Programmierung (OOP) zu entwickeln.

Zusätzlich zur MQL5-Sprache enthält das Handelsplattform-Paket auch die MetaEditor IDE mit hoch entwickelten Code-Schreibwerkzeugen, wie Templates, Snippets, Debugging, Profiling und Autovervollständigung, sowie die integrierte Dateiversionierung MQL5 Storage.

Die Sprachunterstützung ist auf der Website MQL5 Algotrading Community verfügbar, die eine riesige freie CodeBase und eine Fülle von Artikeln enthält. Diese Artikel decken alle Aspekte des modernen Handels ab, einschließlich neuronaler Netze, Statistik und Analyse, Hochfrequenzhandel, Arbitrage, Test und Optimierung von Handelsstrategien, dem Einsatz von automatisierten Handelsrobotern und mehr.

Händler und MQL5-Programmentwickler können im Forum miteinander kommunizieren, Anwendungen in Auftrag geben und selber entwickeln, indem sie den Freelance Service nutzen, oder geschützte Programme im Market der automatisierten Handelsanwendungen kaufen und verkaufen.

Die MQL5-Sprache bietet spezialisierte Handelsfunktionen und vordefinierte Ereignisbehandlungen zur Unterstützung von Programmierern bei der Entwicklung von Expert Advisors (EAs), die automatisch Handelsprozesse nach bestimmten Handelsregeln ausführen. Zusätzlich zu den EAs erlaubt MQL5 die Entwicklung von benutzerdefinierten technischen Indikatoren, Skripten und Bibliotheken.

Diese MQL5-Sprachreferenz enthält Funktionen, Operationen, reservierte Wörter und andere Sprachkonstruktionen, die in Kategorien unterteilt sind. Die Referenz enthält auch Beschreibungen der Klassen in der Standardbibliothek, die für die Entwicklung von Handelsstrategien, Bedienfeldern, benutzerdefinierten Grafiken und für den Dateizugriff verwendet werden.

Zusätzlich gibt es in der CodeBase die Bibliothek ALGLIB für die numerische Analyse, die zur Lösung verschiedener mathematischer Probleme verwendet werden kann.

 

Algo Trading Bücher

Etwas Neues zu lernen ist immer eine Herausforderung. Um Anfängern zu helfen, haben wir zwei umfassende Bücher über die MQL5-Programmierung veröffentlicht, die sich an alle richten, die das Erstellen von Handelsrobotern und Anwendungen für den algorithmischen Handel beherrschen wollen.

Diese Bücher bieten eine systematische und strukturierte Darstellung des Materials, um den Lernprozess erheblich zu erleichtern. Detaillierte Code-Beispiele, die Schritt für Schritt das Erstellen von Handelsrobotern und -anwendungen erklären, ermöglichen ein tieferes Verständnis der Varianten des algorithmischen Handels. Die Bücher enthalten zahlreiche praktische Übungen, die helfen, das erworbene Wissen zu festigen und die Programmierfähigkeiten in realen Handelsumgebungen zu entwickeln.

„MQL5-Programmieren für Händler", ist das vollständigste und detaillierteste Lehrbuch zu MQL5, das für Programmierer aller Stufen geeignet ist. Anfänger lernen die Grundlagen: Das Buch stellt Entwicklungswerkzeuge und grundlegende Programmierkonzepte vor. Auf der Grundlage dieses Materials werden Sie Ihre erste Anwendung auf der Handelsplattform MetaTrader 5 erstellen, kompilieren und ausführen. Nutzer mit Erfahrung in anderen Programmiersprachen können sofort mit dem Anwendungsteil fortfahren: Erstellen von Handelsrobotern und analytischen Anwendungen in MQL5.

„Neuronale Netze für den algorithmischen Handel mit MQL5", ist ein Leitfaden für die Verwendung von Methoden des maschinellen Lernens in Handelsrobotern für die Plattform MetaTrader 5. Sie werden schrittweise in die Grundlagen der neuronalen Netze und deren Anwendung im algorithmischen Handel eingeführt. Im Laufe des Kurses werden Sie Ihre eigene KI-Lösung aufbauen und trainieren und nach und nach neue Funktionen hinzufügen. Zusätzlich zum Erlernen von MQL5 werden Sie Python- und OpenCL-Programmierkenntnisse erwerben und integrierte Matrix- und Vektormethoden erforschen, die die Lösung komplexer mathematischer Probleme mit prägnantem und effizientem Code ermöglichen.

 

Artikel über die Entwicklung von Handelsanwendungen

MQL5 Artikel sind eine ausgezeichnete Quelle, um das volle Potenzial der Sprache zu erforschen und decken eine breite Palette praktischer algorithmischer Handelsaufgaben ab. Zur einfachen Navigieren sind alle Artikel in Abschnitte wie Beispiel, Expert Advisors, Machine Learning und weitere gegliedert. Jeden Monat werden Dutzende von neuen Artikeln auf der Website der MQL5 Algotrading Community veröffentlicht, geschrieben von Händlern für Händler. Lesen und diskutieren Sie diese Artikel, um den modernen algorithmischen Handel zu beherrschen. Für Anfänger haben wir eine Liste von 16 empfohlenen Artikeln für ein schnelles Eintauchen in MQL5 zusammengestellt.
 

Arten von MQL5-Anwendungen

MQL5-Programme sind in fünf spezialisierte Typen unterteilt, die auf den von ihnen implementierten automatisierten Handelsaufgaben basieren:

  • Der Expert Advisor ist ein automatisiertes Handelssystem, das mit einem Chart verbunden ist. Ein Expert Advisor enthält Ereignisbehandlungen, um auf vordefinierte Ereignisse zu reagieren, die die entsprechenden Elemente der Handelsstrategie durchführen. Zum Beispiel, das Ereignis der Programminitialisierung und Deinitialisierung, neue Ticks, Timer-Ereignisse, Änderungen der Tiefe des Marktes, auf dem Chart und benutzerdefinierte Ereignisse.
    Neben der Berechnung der Handelssignale auf der Grundlage der implementierten Regeln, können Expert Advisors auch den Handel automatisieren und die Aufträge direkt an den Handelsserver senden. Expert Advisor werden in <Terminal_Directory>\MQL5\Experts. gespeichert.
  • Der benutzerdefinierte Indikator ist ein technischer Indikator, der von einem Benutzer zusätzlich zu den in die Handelsplattform integrierten Standardindikatoren entwickelt wurde. Benutzerdefinierte Indikatoren, wie auch Standardindikatoren, können nicht automatisch handeln, sondern nur analytische Funktionen umsetzen und bereitstellen. Benutzerdefinierte Indikatoren können Werte anderer Indikatoren für Berechnungen verwenden und können von einem Expert Advisor aufgerufen werden.
    Sie werden im Verzeichnis <Terminal_Directory>\MQL5\Indicators gespeichert.
  • Das Script ist ein Programm, das nur einmal ausgeführt wird. Im Gegensatz zu einem Expert Advisor behandeln Skripte kein Ereignis außer Trigger, Initialisierung und Deinitialisierung. Der Code eines Skripts muss die Funktion OnStart() enthalten.
    Skripte werden in <Terminal_DIrectory>\MQL5\Scripts gespeichert.
  • Dienst (Service) ist ein Programm, das im Gegensatz zu Indikatoren, Expert Advisors und Skripten nicht an ein Chart gebunden sein muss, damit es läuft. So wie Skripte reagieren Dienste nicht auf Ereignisse außer ihrem Start. Um einen Dienst zu starten, sollte dessen Code in der Funktion OnStart stehen. Die Dienste akzeptieren keine anderen Ereignisse außer den Start, aber sie sind in der Lage, nutzerdefinierte Ereignisse mit EventChartCustom an einen Chart zu senden. Dienste werden im <Terminal_Directory>\MQL5\Services. gespeichert.
  • Die Bibliothek ist eine Ansammlung von benutzerdefinierten Funktionen. Bibliotheken sind dazu gedacht, häufig verwendete Algorithmen benutzerdefinierter Programme aufzunehmen und für eine vielfältige Verwendung zur Verfügung zu stellen.
    Bibliotheken befinden sich in <Terminal_Directory>\MQL5\Libraries.
  • Die Include-Datei ist ein Quelltext der am häufigsten verwendeten Blöcke von benutzerdefinierten Programmen. Solche Dateien werden in die Quelltexte von Expert Advisors, Scripts, benutzerdefinierten Indikatoren und Bibliotheken während der Kompilierung eingebunden. Die Verwendung von eingebundenen Dateien ist wegen der zusätzlichen Belastung beim Aufruf von Bibliotheksfunktionen besser als die Verwendung von Bibliotheken.
    Include-Dateien können im gleichen Verzeichnis gespeichert werden, in dem sich die Originaldatei befindet. In diesem Fall wird die Anweisung #include mit doppelten Anführungszeichen verwendet. Eine andere Möglichkeit ist, die Include-Dateien im Verzeichnis <Terminal_Directory>\MQL5\Include zu speichern. In diesem Fall muss #include mit spitzen Klammern verwendet werden.

 

© 2000-2024, MetaQuotes Ltd