MQL5 TUTORIAL GRUNDLAGEN – 39 SIMPLES CHART LABEL

video

In diesem Video wollen wir uns einmal anschauen, wie man ein dynamisches Chart Label, wie diese rote Schrift hier oben, auf einem Chart erstellen kann. Es handelt sich hierbei um ein Objekt, das sich verändert, wenn der Preis sich verändert. Und wir wollen uns einmal anschauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun, klicken Sie bitte auf dieses kleine Symbol hier oben oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplesChartLabel, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. Damit unser Chart Label etwas anzeigen kann, fangen wir damit an, dass wir den Ask Preis ermitteln. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir nutzen hier SYMBOL_ASK, da wir ja den Ask Preis benötigen. NormalizeDouble und _Digits gibt uns die Anzahl der Nachkommastellen. Das sind in diesem Fall fünf Nachkommastellen. Je nach Währungspaar kann sich das unterscheiden. Wir sehen aber, dass die Anzahl der Nachkommastellen hin und wieder variiert. Um unser Objekt zu erstellen nutzen wir ObjectCreate. Der erste Parameter hier steht für die Chart ID, oder in unserem Fall für das Hauptfenster. Der hat den Wert null. In unserem Fall ist das das Hauptfenster. Bei anderen Charts, in denen Oszillatoren genutzt werden, werden diese meistens in einem weiteren Fenster unterhalb des Charts dargestellt. Unser Objekt soll den Namen Label1 tragen. Hier geben wir den Typ des Objektes an. Wir nutzen OBJ_LABEL. Wenn man das einmal markiert und die F1 Taste drückt, dann sehen wir hier, dass es noch eine ganze Reihe anderer Objekt Typen gibt. Jeder dieser Objekt Typen unterstützt unterschiedliche Eigenschaften. Wenn wir hier einmal die letzten drei Parameter ausschneiden und ein Komma setzen, dann sehen wir hier auch die Auflistung der Parameter. Parameter eins war die Chart ID, Parameter zwei der Objekt Name. Wir sind gerade bei Parameter drei, das ist der Objekt Typ. Die nächsten drei Parameter stehen für ein Unterfenster, einen Datumswert und ein Preislevel. Diese Eigenschaften setzen wir in diesem Fall alle auf null. Danach nutzen wir ObjectSetString um die Schriftart zu setzen. Auch hier beziehen wir uns wieder auf die Chart ID null. Das Objekt mit dem Namen Label1. Diesmal ist die Objekteigenschaft OBJPROP_FONT. Und wir nutzen hier mal Impact. Nachdem wir definiert haben, wie unser Text angezeigt werden soll, müssen wir noch sagen, was angezeigt werden soll. Auch das geht mit ObjectSetString für Chart ID null, das Objekt Label1, setzen wir hier die OBJPROP_TEXT. Wir möchten gerne den Text Ask Price mit einem Doppelpunkt, gefolgt von dem ermittelten Ask Preis anzeigen. Es gibt auch noch die Methode ObjectSetInteger. Hiermit wird ein Integer Wert gesetzt. Wiederum für die gleichen Objekt Eigenschaften setzen wir diesmal OBJPROP_XDISTANCE. Das ist die Distanz vom linken Bildschirmrand. Ich nutze hier fünf Pixel. Und danach wiederholen wir das Ganze noch mal für die Eigenschaft OBJPROP_YDISTANCE. Und setzen die Distanz zum oberen Rand auf zehn Pixel. Das war es soweit. Wenn Ihnen das hier zu schnell ging oder wenn Sie nicht verstanden haben, was der Code hier bewirken soll, dann möchten Sie sich vielleicht einmal die anderen Videos aus diesem Grundlagenkurs ansehen. Oder vielleicht ist sogar der Premiumkurs auf der Webseite interessant für Sie. Für den Moment klicken wir hier auf Kompilieren oder drücken die F7 Taste. Ich habe hier irgendwo einen Fehler gemacht. Hier ist ein Komma zu viel. Man kann das immer schön finden, indem man hier unten auf den Fehler klickt. Der Cursor springt direkt zu der Stelle wo der Fehler aufgetreten ist. Wiederholen wir den Kompiliervorgang erneut. Dann haben wir diesmal keine Fehler. Und wenn das bei Ihnen auch so ist, dann können Sie hier oben auf dieses kleine Symbol oder die F4 Taste drücken, um in den Metatrader zurückzukehren. Und im Metatrader öffnen wir ein neues Chartfenster. Hier unten im Navigator Bereich suchen wir nach dem neu erstellten Programm SimplesChartLabel und ziehen sie auf unser Chart, bestätigen das Ganze mit Okay. Und sobald hier die nächste Preisänderung hereinkommt, sehen wir hier oben unser Objekt auftauchen. Die Schriftgröße ist mir noch ein wenig klein. Packen wir das noch hinter die Schriftart und nutzen ObjectSetInteger um für unser Label Objekt die Schriftgröße auf 24 zu setzen. Das geht über die Eigenschaft OBJPROP_FONTSIZE. Noch einmal Kompilieren. Jetzt sieht unser Label schon deutlich besser aus. Und Sie haben in diesem kurzen Video gelernt, wie Sie ein dynamisches Label Objekt direkt auf Ihrem Chart programmieren können. Und Sie haben das selbst getan, mit diesen paar Zeilen hier in MQL5.