Mql5 ist ja eine objektorientierte Sprache und in diesem Beispiel möchten wir einmal ein solches Objekt erstellen.
Das hier oben ist ein Label oder in unserem Fall haben wir es Textobjekt genannt und es zeigt uns in einer bestimmten Schriftgröße und einer bestimmten Schriftart den aktuellen Ask Preis an.
Solche Objekte zu erstellen ist gar nicht schwer.
Neben den Textobjekten gibt es auch Linien, Pfeile oder sonstige Dinge, die man direkt auf dem Chart ausgeben kann.
Wie aber lässt sich ein solches Objekt erstellen damit wir es in unseren Expert Advisor einsetzen können?
Dazu klicken wir hier oben auf diesem kleinen Button oder drücken die F4 Taste.
Das ruft dann hier den MetaEditor auf und im MetaEditor klicken wir auf Datei –Neu – Expert Advisor aus Vorlage – weiter.
Hier vergeben wir den Namen SimplesObjektLabel, klicken auf weiter – weiter – fertig stellen und jetzt kann alles oberhalb der Ontick Funktion hier gelöscht werden.
Auch die Kommentarzeilen werden entfernt und da wir ja etwas brauchen, dass unser Label anzeigen kann, holen wir uns im ersten Schritt den Ask Preis.
Der Ask Preis ist der Preis, der gefordert wird wenn wir eine Position kaufen wollen.
Wir holen uns den aktuellen Ask Preis über SymbolInfoDouble.
Das liest für das aktuelle Währungspaar mit dieser Konstante SYMBOL ASK den aktuellen Preis aus und mit dieser Konstante hier – digits – bekommen wir die passende Anzahl von Nachkommastellen, denn wie man hier sieht, gibt es Währungspaare mit drei Nachkommastellen und hier gibt es welche mit 5 Nachkommastellen.
Und jetzt setzen wir die Objekteigenschaften für unser Textobjekt ein.
Wir erstellen also ein Objekt mit ObjectCreate für das aktuelle Währungspaar, es soll den Namen TextObjekt bekommen.
Und mit OBJ_LABEL sagen wir Mql5, dass wir gerne einen Text bearbeiten möchten.
Wenn wir an dieser Stelle F1 drücken dann sieht man, dass es auch massenweise andere Objekttypen gibt.
Das hier beispielsweise wäre ein Pfeil nach oben, das hier ist unser Label und das hier wäre beispielsweise ein Button und die Arrow Funktion hier kann einen Pfeil nach oben oder unten erzeugen.
Wir benötigen kein separates Fenster, also nehmen wir für diesen Parameter eine 0, wir sind auch nicht zeitbezogen und unser Objekt muss auch nicht an einer bestimmten Stelle für einen Preis angezeigt werden.
Also stellen wir auch das auf Null und danach wählen wir uns eine entsprechende Schriftart aus.
Das geht mit der Funktion ObjectSetString, für das aktuelle Währungspaar und unser TextObjekt und mit OBJPROP_FONT setzen wir die Schriftart auf Arial.
Danach setzen wir die Schriftgröße ein mit der Funktion ObjectSetInteger für das aktuelle Währungspaar und für unser TextObjekt nutzen wir die konstante OBJPROP_FONTSIZE und entscheiden uns für eine Schriftgröße von 24.
Damit unser Label was anzeigen kann, setzen wir jetzt noch den Text ein.
Das geht wieder mit ObjectSetString für das aktuelle Währungspaar und für unser TextObjekt nutzen wir die konstante OBJPROP_TEXT und geben hier den Text Ask Preis und den Ask Wert aus den wir hier oben in der Variable berechnet haben.
Jetzt bestimmen wir noch die Position, die Distanz vom linken Rand soll 5 sein, das setzen wir mit ObjectSetInteger für das aktuelle Währungspaar und unser TextObjekt mit OBJPROP_XDISTANCE auf den Wert 5.
Und die Distanz von oben setzen wir genauso, nur in diesem Fall nutzen wir OBJPROP_YDISTANCE für die y-Achse und hier verwenden wir mal den Wert 10.
So, das war‘s auch schon.
Jetzt kompilieren wir unseren Expert Advisor indem wir hier oben auf den kleinen Button oder auf die F7 Taste drücken und der Compiler warnt uns, dass wir hier Texte in Zahlen verwandelt haben und dass das zu einem Datenverlust führen könnte.
Aber für dieses einfache Beispiel hier soll uns das genügen.
Klicken wir also hier oben auf den Button oder drücken die F4 Taste um in den MetaTrader zurückzukehren.
Im Metatrader selbst klicken wir auf Ansicht – Strategietester oder drücken die Tastenkombination Steuerung+R.
Das ruft dann unten unseren Strategietester auf und da wählen wir als Datei SimplesObjektLabel.ex5 aus.
Jetzt brauchen wir noch irgendein Währungspaar und setzen die Option für die Visualisierung bevor wir unseren Test hier starten.
Und so sieht jetzt unser Expert Advisor bei der Arbeit aus.
Jetzt ändern wir im Quelltext einfach mal die Schriftart auf Courier und ich hätte gerne eine Schriftgröße von 48.
Dafür muss ich natürlich den Quelltext noch einmal kompilieren und wenn ich jetzt hier einen neuen Test starte, dann haben wir hier eine völlig andere Schriftart und einen viel größeren Text.
Okay, in diesem Video haben Sie gelernt wie Sie innerhalb von fünf Minuten einen einfachen Expert Advisor für Mql5 erstellen können, der Ihnen einen Text Label Objekt erstellt und Sie haben das in Mql5 mit diesen paar Zeilen hier selbst programmiert.
Download “MQL5 Tutorial - Simples Object Label mit MQL5” SimplesObjektLabel.txt – 128-mal heruntergeladen – 845,00 B