MQL5 Tutorial - Automatisch traden mit Metatrader5

MQL5 TUTORIAL GRUNDLAGEN – 59 SIMPLE BENUTZERDEFINIERTE KAUFSPANNE


Listen Later

In diesem Video wollen wir uns einmal anschauen, wie man einen individuellen Bereich anlegen kann. In dem ein Expert Advisor kaufen darf. In diesem Fall geht es um den EUR, USD. Unser oberes Limit ist bei 1.16. Das untere Limit liegt bei 1.14. Und wir wollen uns jetzt einmal anschauen wie man so etwas in MQL5 programmieren kann. Um das zu tun klicken Sie im Metatrader auf dieses kleine Symbol 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 mal den Namen SimpleKaufspanne. Klicke auf weiter, weiter und fertigstellen. Jetzt kann alles oberhalb dieser OnTick-Funktion gelöscht werden. Und auch die beiden Kommentarzeilen werden entfernt. Wir starten mit einem include-Befehl. Damit importieren wir uns die Inhalte der Datei Trade.mqh. Danach erstellen wir uns eine Instanz von der Klasse CTrade. Die bekommt den Namen trade und wir werden die später nutzen, um eine Position zu eröffnen. Zunächst definieren wir hier einmal eine Benutzervariable. Die kann vom Benutzer im Strategietester angepasst werden, ohne dass man da etwas fest programmieren müsste. Diese Variable ist für das obere Limit. Bekommt den Namen UpperLimit. Der Zusatz input sorgt dafür, dass der Benutzer während der Laufzeit des Programmes, also im Betrieb mit dem Strategietester, den Wert für diese Variable anpassen kann. Der Initialwert hier ist 10. Und es handelt sich um eine Variable vom Typ double, damit hier auch Fließkommazahlen verarbeiten kann. Das Ganze wiederholen wir jetzt nochmal für unser unteres Limit. Und außerdem legen wir hier eine globale Variable für den Ask-Preis fest. Der Grund dafür ist einfach. Wir werden den Ask-Preis sowohl in der OnTick-Funktion als auch in einer benutzerdefinierten Funktion benötigen. Im ersten Schritt berechnen wir den Ask-Preis in der OnTick-Funktion. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir nutzen SYMBOL_ASK und mit NormalizeDouble und _Digits stellen wir sicher, dass auch die richtige Anzahl von Nachkommastellen für das jeweilige Währungspaar berechnet werden. Danach prüfen wir ob uns die Funktion PositionsTotal den Wert 0 zurückliefert. Das wäre der Fall, wenn wir keine geöffnete Position haben. Anschließend möchten wir gerne abfragen, ob der Preis sich in dem erlaubten Bereich bewegt. Dazu nutzen wir eine benutzerdefinierte Funktion. Die wird uns den Wert true oder false zurückgeben. Und wenn unsere Abfrage positiv ist, dann nutzen wir hier trade.Buy, um einen Position in der Größe von 10 Microlot zu kaufen. Am Ende der OnTick-Funktion hätte ich gerne noch eine Chartausgabe. Das übernimmt hier der Comment-Befehl. Der wird uns das obere und das untere Limit anzeigen, so wie den Ask-Preis und ob sich der Preis im gewünschten Preisbereich befindet. Damit das Ganze funktioniert müssen wir diese Funktion hier noch erstellen. Die Funktion wird bool, also einen binären Wert zurückliefern. True steht in diesem Fall für wahr. False steht für falsch. Man könnte aber auch die Zahlen 1 oder 0 verwenden. Zunächst einmal definieren wir eine boolesche Variable, die diesen Rückgabewert aufnimmt. In diesem Fall heißt sie ReturnValue. Und sie bekommt von uns zunächst einen negativen Rückgabewert zugewiesen. Danach prüfen wir, ob sich der Ask-Preis im erlaubten Preisbereich befindet. Das wäre der Fall, wenn der Ask-Preis kleiner ist als unser oberes Limit, aber größer als das untere Limit. Und wenn das zutrifft, dann setzen wir den Wert für unsere Rückgabevariable auf wahr. Zum Schluss nutzen wir den return-Befehl, um unsere Rückgabevariable an das Hauptmodul zurückzugeben. Das war´s im Großen und Ganzen. Falls Sie nicht verstehen, was diese Codezeilen hier bewirken sollen oder Falls Ihnen das Alles zu schnell war, dann möchten Sie sich vielleicht zunächst eines der anderen Videos aus unserer Grundlagenserie anschauen. Oder vielleicht ist auch der Premiumkurs auf unserer Webse...
...more
View all episodesView all episodes
Download on the App Store

MQL5 Tutorial - Automatisch traden mit Metatrader5By MQL5 Tutorial - Automatisch traden mit Metatrader5