MQL4 Tutorial DEUTSCH – Simples Rechteck ausgeben

video
play-sharp-fill

In diesem Video geht es darum, wie man sich eine bestimmte Bandbreite in der Markteröffnungsphase hier auf dem Chart automatisch über ein gezeichnetes Rechteck anzeigen lassen kann. Gestern sprach mich ein guter Bekannter darauf an, dass er gerne ein Rechteck auf dem Chart zeichnen lassen möchte, das die letzten 30 Minuten seit der Markteröffnungsphase beinhaltet. Und wie man sieht, läuft jetzt hier oben die Zeit gegen 07.00 Uhr auf die Markteröffnungsphase zu. Und das Ende der Markteröffnungsphase wurde von uns so definiert, dass hier um 09.30 Uhr das entsprechende Rechteck gezeichnet wird. Das ist jetzt hier passiert. In diesem Rechteck sind alle Kerzen der letzten 30 Minuten enthalten. Wenn man mit der Maus ganz rechts an der Seite klickt, dann sieht man, dass das Rechteck genau um 09.30 Uhr gezeichnet wurde. Außerdem sehen wir hier die höchste Kerze, das ist in diesem Fall die vorletzte Kerze, und den Tiefstpreis der niedrigsten Kerze aus diesem Zeitraum. Und wir möchten uns in diesem Video einmal anschauen, wie man mit MQL4 auf dem Chart solche Rechtecke automatisch ausgeben lassen kann.
Um das zu tun, klicken Sie bitte im MetaTrader hier oben auf diesen kleinen Button, oder drücken Sie die F4-Taste. Das ruft dann hier den Meta-Editor auf; und hier klicken wir auf „Datei/ Neu/ Expert Advisor (Vorlage)/ Weiter“. Ich vergebe hier einmal den Namen „SimplesRechteck“, klicke auf „Weiter/ Weiter/ Fertigstellen“. Und jetzt kann alles oberhalb dieser OnTick-Funktion hier gelöscht werden. Die OnTick-Funktion wird immer dann aufgerufen, wenn wir eine Preisänderung auf dem Chart haben. Alles zwischen diesen beiden Klammern wird dann ausgeführt. Und da möchten wir im ersten Schritt das Ende für unsere Eröffnungsphase festlegen. Das soll um 09.30 sein. Nach dem letzten Doppelpunkt hier könnte ich noch Sekunden festlegen, aber falls wir mal 1 oder 2 Sekunden verpassen, reicht es aus, das in diesem Format hier anzugeben. Die entsprechende Variable trägt den Namen „EndeEroeffnungsPhase“. Sie ist vom Typ String, das wird also eine Textkette sein. Wir brauchen noch eine Textkette mit dem Namen „AktuelleZeit“. Und mit dieser Funktion hier erhalten wir die aktuelle Zeit von unserem Trading-Server. Die wird in diesem Format hier ausgegeben: Stunden, Minuten und Sekunden. Und wenn die Eröffnungsphase beendet ist, das wäre der Fall, wenn sich in der aktuellen Zeit auf dem Chart das Ende der Eröffnungsphase, also die Uhrzeit 09.30 Uhr finden lässt, dann möchten wir zunächst die höchste aus den 30 Kerzen ermitteln. Das geht mit der Funktion „iHighest“ für das aktuelle Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir nutzen hier „MODE_HIGH“. MODE_HIGH liefert uns den höchsten Preis. Gleich im Anschluss werden wir mit „MODE_LOW“ den niedrigsten Preis ermitteln. Wir tun das jeweils für 30 Kerzen und starten mit der aktuellen Kerze 0. Wenn man sich hier einmal das Chart anschaut, dann ist diese Kerze immer die Kerze 0. Das wäre Kerze 1, Kerze 2, Kerze 3. Und wir gehen halt 30 Kerzen zurück. Das Gleiche machen wir nochmal für die niedrigste Kerze. Die ermitteln wir mit der Funktion „iLowest“, auch wieder für das aktuelle Chart und die auf dem Chart ausgewählte Zeiteinheit. MODE_LOW liefert uns die niedrigste Kerze, von der aktuellen Kerze 0 für die letzten 30 Kerzen.
Mit der Comment-Funktion möchten wir gerne die aktuelle Zeit auf dem Chart ausgeben. Dazu geben wir den Text „Aktuelle Zeit“, gefolgt von der berechneten Zeit aus. Und wenn der gesuchte Wert in der aktuellen Uhrzeit gefunden wurde, wenn also 09.30 Uhr in unserer aktuellen Zeit hier enthalten ist: in diesem Fall ist der Wert von „EroeffnungsPhaseBeendet “ ungleich -1. Dann überprüfen wir, ob bereits ein Rechteck existiert und löschen es. Wenn es z.B. das Rechteck schon am Vortag gegeben hat, wird es mit dem Befehl „ObjectDelete“ vom Chart entfernt. Und mit „ObjectCreate“ erstellen wir jetzt ein Objekt mit dem Namen „Rechteck“. Der MetaTrader weiß, dass es sich um ein Rechteck handelt, indem wir „OBJ_RECTANGLE“ benutzen. Hier werden in der MQL4-Referenz die unterschiedlichen Objekt-Typen aufgeführt. Es gibt Pfeile oder Texte, oder wie in unserem Fall ein Rechteck. Das Rechteck wird auf dem aktuellen Chart innerhalb der Kerzen ausgegeben, und zwar von der aktuellen Kerze 0 bis zur Kerze 30 gezeichnet. Die Oberkante wird die höchste Kerze sein, und die Unterkante ist die niedrigste Kerze. Jetzt brauchen wir noch eine schließende Klammer für das Ende von unserem Programm.
Und danach können Sie hier oben auf Kompilieren klicken oder die F7-Taste drücken. Das sollte hier ohne Fehler und Warnungen funktionieren. Und wenn das in Ihrem Fall auch so ist, dann klicken Sie bitte hier oben oder drücken F4, um in den MetaTrader zurückzukehren. Und im MetaTrader klicken wir auf „Ansicht/ Strategietester“ oder drücken die Tastenkombination Strg+R. Das ruft dann hier den Strategietester auf. Hier wählen Sie bitte das Programm „SimplesRechteck.ex4“ aus, markieren die Option für den visuellen Modus und starten Ihren Test. Wenn Sie alles richtig gemacht haben, dann sollte jeweils ein Rechteck zum Ende der Markteröffnungsphase angezeigt werden. Gleich ist es hier wieder soweit. Und immer, wenn das Ende der Markteröffnungsphase erreicht ist, wird auf Ihrem Chart das Rechteck vom Vortag gelöscht und hier ein neues Rechteck gezeichnet, welches die Höchst- und Tiefstpreise der letzten 30 Minuten enthält.
Okay. Das war’s auch schon. In diesem Video haben Sie gelernt, wie Sie mit Hilfe von MQL4 zum Ende der Markteröffnungsphase ein Rechteck auf dem Chart ausgeben können. Und Sie haben das selbst programmiert, mit diesen paar Zeilen hier in MQL4.

Download “MQL4 TUTORIAL DEUTSCH - SIMPLES RECHTECK”

SimplesRechteck.txt – 284-mal heruntergeladen – 1,09 kB