MQL5 TUTORIAL GRUNDLAGEN – 34 SO ERMITTELN SIE DIE HOECHSTE KERZE

video

In diesem Video wollen wir einmal herausfinden, wie man die höchste der letzten einhundert Kerzen ermitteln kann. Und wir werden zusätzlich eine horizontale Linie darüber zeichnen. Also lassen Sie uns herausfinden, wie man so etwas mit MQL5 programmieren kann. Dazu klicken wir im Metatrader auf dieses kleine Symbol hier oben oder drücken 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 SimpleHoechsteKerze, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der OnTick Funktion entfernt werden. Und auch die zwei Kommentarzeilen hier werden gelöscht. Zunächst erstellen wir uns mit MqlRates ein Array für unsere Preisinformationen. Danach wird das Array mit ArraySetAsSeries von der aktuellen Kerze an abwärts sortiert. Jetzt füllen wir das Array mit Preisdaten. Das geht mit CopyRates für das aktuelle Währungspaar auf dem Chart und die auf dem Chart eingestellte Zeiteinheit. Wir starten bei Kerze null. Wir benötigen die Preisdaten für einhundert Kerzen. Und die speichern wir in unserem PriceInformation Array. Um die höchste Kerze zu ermitteln brauchen wir eine Variable. Ich nenne die hier mal HighestCandle. Die Variable hat einen Integer Wert, also es handelt sich um einen ganzzahligen Inhalt. Denn wir werden damit zunächst einmal die Nummer der höchsten Kerze ermitteln. Außerdem hätte ich gerne ein Array für die höchsten Preise. Das bekommt den Namen High. Es ist vom Typ double, denn es wird auch Nachkommastellen aufnehmen für die Preisdaten. Dieses Array wird jetzt von der aktuellen Kerze an abwärts sortiert, indem wir ArraySetAsSeries benutzen. Und jetzt nutzen wir CopyHigh um für das aktuelle Währungspaar auf dem Chart und die dort eingestellte Zeiteinheit von Kerze null für einhundert Kerzen die Höchstpreise zu kopieren. Das ermöglicht uns mit der Funktion ArrayMaximum die höchste von einhundert Kerzen in unserem High Array zu berechnen. Und für diese Kerze erstellen wir jetzt mit ObjectCreate auf dem aktuellen Chart eine Linie mit dem Namen Line1. Es soll eine horizontale Linie werden. Darum nutze ich hier OBJ_HLINE. Wenn man das einmal markiert und F1 drückt, dann sieht man hier die unterschiedlichen Objekttypen, die erstellt werden können. Das Objekt soll auf dem aktuellen Chart erscheinen. Das ist hier dieser Parameter für den Index des Fensters. Wir starten von Kerze null und platziert werden soll unsere horizontale Linie bitte auf dem Höchstpreis der höchsten Kerze aus unserem PriceInformations Array. Mit Hilfe von ObjectSetInteger kann man noch Objekteigenschaften verändern. Zum Beispiel hier die Farbe. Wir tun das für das aktuelle Chartfenster und unsere Linie mit dem Namen Line1. Wir möchten gerne die Eigenschaft für die Farbe verändern. Hier haben wir clrGreen gewählt. Das ist eine von zahlreichen Farben, die man hier auswählen kann. Ändern wir das mal auf Magenta. Es lassen sich auch noch andere Eigenschaften verändern. Zum Beispiel hier die Objektbreite. Ich hätte gerne eine etwas dickere Linie von drei Pixeln. Und damit unser Objekt auch immer an der richtigen Stelle gezeichnet wird, nutzen wir hier ObjectMove für das aktuelle Chart, um unsere horizontale Linie im Hauptfenster, angefangen von Kerze null, beim höchsten Preis der letzten hundert Kerzen einzuzeichnen. Zum Schluss hätte ich gerne noch eine Ausgabe auf dem Chart. Das übernimmt der Comment Befehl. Der wird uns die Nummer der höchsten Kerze und den entsprechenden Preis auf unserem Chart anzeigen. Das war es soweit. Wenn Ihnen das hier zu schnell war oder Sie nicht verstehen, was all diese Code Zeilen hier bewirken sollen, dann möchten Sie sich vielleicht noch die anderen Videos aus dieser Grundlagenserie anschauen. Oder vielleicht ist sogar der Premium Kurs interessant für Sie. Den finden Sie auf der Webseite. Für den Anfang klicken wir hier auf Kompilieren oder drücken die F7 Taste. Das hat hier ohne Fehler funktioniert. Ich habe nur zwei Warnungen, weil ich einen Text Wert zu einer Nummer konvertiert habe. Und wenn auch Sie keine Fehler haben, dann können Sie hier oben klicken oder die F4 Taste drücken, um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester oder drücken die Tastenkombination Ctrl+R. Hier wählen wir bitte die neu erstellte Datei SimpleHoechsteKerze.ex5 aus. Bitte markieren Sie hier die Option für die Visualisierung und starten Sie Ihren Test. Und so sieht das Ganze jetzt im laufenden Betrieb aus. Oberhalb der höchsten der letzten einhundert Kerzen wird unsere magentafarbene Linie gezeichnet und immer wieder verschoben. Und Sie haben in diesem kurzen Video gelernt, wie Sie das für den Metatrader 5 automatisieren und programmieren können. Und Sie haben das selbst getan mit diesen paar Zeilen hier im MQL5.