MQL5 TUTORIAL GRUNDLAGEN 96 SIMPLES MOVING TEXT OBJEKT

video
play-sharp-fill

 

In diesem Video wollen wir uns einmal anschauen, wie man ein solches bewegtes Textobjekt hier erstellen kann. Das zeigt uns den aktuellen Niedrigstpreis der aktuellen Kerze an und verändert jeweils den Text entsprechend. Also lassen Sie uns einmal schauen, wie man so etwas mit MQL 5 programmieren kann. Um das zu tun, klicken Sie im Metatrader bitte hier oben auf dieses kleine Symbol 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 SimplesMovingTextObjekt, klicke auf weiter, weiter und fertigstellen. Jetzt kann alles oberhalb der OnTick-Funktion hier gelöscht werden und wir entfernen auch die zwei Kommentarzeilen. Im ersten Schritt nutzen wir MqlRates, um uns ein Array mit Preisdaten zu erstellen. MqlRates speichert neben den Informationen über Preise, Volumen und Spread nämlich auch Zeitpunkte und die benötigen wir gleich, wenn wir das Objekt bewegen wollen. Danach nutzen wir ArraySetAsSeries, um das aktuelle Array von der aktuellen Kerze an abwärts zu sortieren und mit dem Befehl CopyRates füllen wir jetzt unser Preis Array mit Daten, und zwar für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir starten hier mit der aktuellen Kerze 0. Kopieren uns die Daten für drei Kerzen und speichern sie in unserem PriceInfo-Array. Jetzt können wir unser Objekt erstellen. Das geht mit der Funktion ObjectCreate. Wenn man die einmal markiert und F1 drückt, dann sieht man, dass es da jede Menge Parameter gibt. Der erste Parameter hier steht für das aktuelle Währungspaar. Der zweite Parameter ist der Name des Objektes. Der dritte Parameter ist der Objekttyp. Wir haben hier OBJ_TEXT und wenn man da mal F1 drückt, dann sieht man, es gibt noch jede Menge andere Objekttypen. Wir werden diesen Objekttyp hier nutzen. Der ist in der Lage, solche Texte hier auszugeben. Die letzten drei Parameter stehen auf 0. Wenn ich die einmal ausschneide, dann sieht man, dass der Parameter hier, der fett markiert ist, für das aktuelle Fenster steht. Das ist in unserem Fall Fenster 0. Wir nutzen hier eine 0. Das ist das Hauptfenster mit den Kerzen. Und außerdem muss ich hier einen Zeitpunkt und einen Preis übergeben. Das mache ich aber nicht. Ich hab beides auf 0 gesetzt, denn wir werden gleich Objekt Move nutzen, um das Objekt entsprechend zu bewegen. Vorher ändern wir noch ein paar Objekteigenschaften. Das geht zum Beispiel mit ObjectSetInteger. Für die Chart-ID 0 möchten wir für das Objekt mit dem Namen MovingText diese Eigenschaft für die font size, also die Schriftgröße verändern und die setzen wir hier auf 8. Wir nutzen ebenfalls ObjectInteger, um für die Objekteigenschaft Color, also die Farbe, die Farbe auf Rot zu setzen. Wenn wir das markieren und F1 drücken, dann sehen wir, es gibt jede Menge Farben die zur Auswahl stehen. Und damit unsere Schrift vertikal angezeigt wird, setzen wir jetzt den Objektwinkel. Das geht mit ObjektSetDouble. Auch hier für das Chart 0 und das Objekt mit dem Namen MovingText, möchten wir diesmal die Objekteigenschaft OBJPROP_ANGLE, also Winkel verändern. Und die setzen wir hier auf 90 Grad. Und letztendlich brauchen wir ja noch den Objekttext. Den setzen wir mit der Funktion ObjectSetString. Auch hier sind die ersten Parameter identisch. Die Eigenschaft, die wir ändern möchten, heißt OBJPROP_TEXT. Hier verwenden wir den Text LOW gefolgt von einem Doppelpunkt und dieser Ausdruck hier wird uns den aktuellen Low Price für die aktuelle Kerze liefern. So weit sind die Objekteigenschaften fertig. Und jetzt verschieben wir das Objekt mit ObjectMove. Auch hier sind die ersten beiden Parameter gleich. Parameter 3 ist der Ankerpunkt. Grundsätzlich kann man sagen, dass es die Ausrichtung des Objektes ist. Der folgende Parameter steht für den Zeitpunkt der aktuellen Kerze 0. Und das Objekt soll auf dem Low Price für die Kerze 0 gezeichnet werden. So weit so gut. Das war´s. Wenn Ihnen das hier zu schnell ging oder wenn Sie keine Ahnung haben, was all diese Codezeilen hier bewirken möchten, dann haben Sie vielleicht Lust, sich einmal den Premiumkurs anzuschauen. Den finden Sie auf unserer Webseite. Oder Sie schauen sich zunächst die anderen Grundlagenvideos aus dieser Videoserie an. Das hier war übrigens wieder ein Vorschlag von einem Premiumkurs Mitglied. Und wenn Sie bereits Premiummitglied sind und eine Idee für so ein Video haben, dann sagen Sie mir doch einfach Bescheid. Für den Moment klicken wir hier auf Ansicht, Werkzeugleiste und klicken auf Kompilieren. Alternativ können Sie auch die F7-Taste drücken. Das hat hier ohne Fehler funktioniert und wenn das bei Ihnen auch so ist, dann können Sie jetzt hier oben klicken oder die F4-Taste drücken, um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester oder Sie drücken die Tastenkombination Steuerung und R. Bitte wählen Sie hier die neu erstellte Datei SimplesMovingTextObjekt.ex5 aus, markieren Sie die Option für den visuellen Modus und starten Sie Ihren Test. Hier sehen wir, dass unser Objekt gezeichnet wird. Immer wenn sich der Preis ändert, wird auch der ausgegebene Text hier angepasst. Unser Expert Advisor funktioniert also. Und wenn Sie Lust haben Quelltexte für solche Programme herunterzuladen oder ein Premiummitglied werden möchten, dann besuchen Sie doch einfach unsere Webseite, denn in diesem kurzen Video haben Sie bereits gelernt, wie man so ein dynamisches Textobjekt programmieren kann. Und sie haben das selbst getan, mit diesen paar Zeilen hier in MQL5.