Wie kann ich MQL5 schneller und effektiver nutzen?

MQL5 bietet neben den Standardfunktionen, die viele Trader sicherlich aus anderen Programmiersprachen wie MQL4 kennen einen deutlich erweiterten Funktionsumfang für viele Dinge, die man als Trader im normalen Tagesablauf überhaupt nicht wahrnimmt.

So lassen sich beispielsweise sämtliche Charteinstellungen, die man sonst mit der Maus oder der Tastatur vornimmt auch über MQL5 programmtechnisch verändern. Das bedeutet, die Darstellung wird über Befehle gesteuert. So könnte man beispielsweise über MQL5 die Höhe des Charts in Pixeln auslesen oder verändern.

Dem Expert Advisor ist die Optik auf dem Chart aber egal. Für uns Menschen ist die Darstellungsweise notwendig, da wir keine andere Möglichkeit haben die Vielzahl der auf dem Chart angezeigten Daten anderweitig effektiv aufzunehmen.

MQL5 verfügt allein für die Darstellung von Charts und Objekten über einen Befehlssatz von mehreren Dutzend Funktionen.

Für den automatischen Handel mit dem Metatrader5 werden Sie aber selten den Wunsch verspüren, die Chartdarstellung programmtechnisch umzustellen, wenn man das auch mit zwei Mausklicks erledigen kann.

Macht es also Sinn, alle Funktionen und MQL5 vollständig zu lernen?

Meiner Meinung nach ist das Ziel eines automatischen Handelssystems nicht, besonders schönen Code zu schreiben. Mir geht es eher um die Profitabilität meines Systems. Dazu benötige ich ein paar Grundfunktionen, die für den automatischen Devisenhandel unverzichtbar sind.

Beispielsweise muss ich in der Lage sein eine Order zu öffnen, einen Profit zu realisieren oder eine Order wieder zu schliessen. Ich muss herausfinden können, wie mein aktueller Kontostand aussieht, wie viele Positionen ich gerade geöffnet habe und ob meine Kriterien für einen Einstieg oder Ausstieg erfüllt sind.

Man kann eine ganze Menge Zeit und Aufwand sparen, wenn man sich mit den Kernfunktionen beschäftigt, die für ein profitables Tradingergebnis tatsächlich eine Rolle spielen.

Für die optische Überprüfung dieser Werte reicht es in der Regel, mittels einer Textaufgabe auf dem Chart die Daten für den Trader vor dem Bildschirm bereitzustellen.

Ich nutze in der Regel dafür den Comment-Befehl, denn er bietet einige Vorteile.

Zunächst lassen sich mit Comment() sowohl Texte als auch Werte direkt übersichtlich auf dem Devisenchart darstellen. Dazu kommt, dass Comment auch ohne Casting in der Lage ist, Zahlenwerte wie Texte auszugeben. Und ausserdem lassen sich die Ausgaben sehr einfach formatieren.

Ein typischer Comment-Befehl könnte den aktuellen Kontostand, die Anzahl der geöffneten Positionen, den Gewinn pro Währungspaar oder auf Accountbasis darstellen.

Das funktioniert komplett ohne die Verwendung von grafischen Objekten. Natürlich kann MQL5 auch Pfeile, Labels oder Indikatoren zeichnen, allerdings nimmt dieses Thema einen beträchtlichen Zeitraum in Anspruch.

Diesen zeitlichen Aufwand kann man sich am Anfang sparen, denn den meisten Tradern geht es in erster Linie um schnelle und möglichst profitable Ergebnisse.

Neben dem Zeichnen von Objekten auf dem Chart ist die Objektorientierung und die Verwendung von Klassen ein weiteres Themengebiet, welches mit MQL5 eingeführt wurde.

Eine Klasse kann man sich wie einen Bauplan für ein konkretes Objekt vorstellen. So könnte eine Klasse mit dem Namen Fahrzeug als Vorlage für ein Auto oder ein Motorrad dienen.

Es macht Sinn, sich mit der objektorientierten Programmierung näher zu beschäftigen, wenn man sehr grosse und umfangreiche Teile des eigenen Quellcodes immer wieder verwenden will.

Da aber die meisten Kursteilnehmer in der Regel lediglich für den Eigenbedarf programmieren, kann man wiederverwendbaren Code auch als MQ5-Dateien in kleine Textmodule auslagern, die sich ebenfalls in weiteren Systemen jederzeit importieren und implementieren lassen.

Wenn man keine Objekte zeichnet und keine objektorientierte Programmierung von Klassen verwendet, dann kann man einen profitablen Expert Advisor mit 70 oder weniger Programmzeilen durchaus realisieren.

Viele der gängigen Einstiegsmöglichkeiten wie Bollinger Bänder, MacD, Storchastics oder RSI sind in MQL5 bereits als Funktion implementiert und liefern einen oder mehrere berechnete Werte zurück, anhand derer man Tradingentscheidungen treffen kann.

Beispielsweise lassen sich ansteigende oder absinkende Trends mit einem gleitenden Durchschnitt einfach feststellen, indem man den aktuellen Wert eines Moving Average von den Werten vor X Kerzen abzieht.

Daraus resultiert eine positive oder negative Zahl. Je nach Ergebnis kann man dann den entsprechenden Einstieg auslösen.

Oft braucht man sich der durchaus beeindruckenden Vielfalt an Funktionen in MQL5 gar nicht so zeitaufwendig zu widmen, denn viele Dinge gehen ganz einfach und in wenigen Minuten.

Letztendlich lassen sich dadurch unkompliziertere und besser lesbare Programme gestalten.