MQL4 TUTORIAL GRUNDLAGEN – 85 SIMPLER TAKE PROFIT POINT TEST

video
play-sharp-fill

In diesem Video wollen wir uns einmal anschauen, wie man den Take Profit Wert hier automatisiert berechnen, optimieren und handeln kann, in dem man einen Expert Advisor mit einer benutzerdefinierten Variablen dafür erstellt. Also lassen Sie uns einmal schauen, wie man so etwas in MQL4 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4-Taste auf Ihrer Tastatur. 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 SimplerProfitPointTest, klicke auf weiter, weiter und fertigstellen. Jetzt kann alles oberhalb der OnTick-Funktion hier gelöscht werden und auch die zwei Kommentarzeilen kommen weg. Wir starten damit, dass wir uns hier eine input-Variable erstellen. Dieser Zusatz input hier, der bewirkt, dass der Benutzer den Wert dieser Variable innerhalb der Expert Advisor Eigenschaften einstellen kann, ohne dass das neu kompiliert werden muss. Unsere Variable ist vom Typ integer und heißt UserProfitPointValue. Der Standardwert ist hier 30. In der OnTick-Funktion starten wir damit, dass wir uns eine Variable vom Typ string erstellen, die den Namen signal hat. Im Moment weisen wir noch keinen Wert zu, der wird gleich noch berechnet. Jetzt nutzen wir die integrierte Funktion iMA, die mit MQL4 kommt, um für das aktuelle Währungspaar auf dem Chart und die aktuell ausgewählte Zeiteinheit für 20 Kerzen, ohne eine Verschiebung für den SMA, also für Simple Moving Average, anhand der Schlusskurse den Wert für die Kerze 0 zu berechnen. Und wenn der aktuelle Wert kleiner ist als der Schlusskurs für Kerze 0, der eigentlich nicht existiert, denn dieser Wert hier berechnet uns den aktuellen Preis. Der würde erst dann zum Schlusskurs von Kerze 0, wenn Kerze 0 zu Kerze 1 wird, aber für dieses einfache Beispiel soll uns das so ausreichen. Jedenfalls, wenn diese Bedingung hier erfüllt ist, dann möchten wir gerne kaufen, also weisen wir den Begriff buy unserer Signalvariable zu. Im anderen Fall, wenn der Wert für den gleitenden Durchschnitt größer ist als der Schlusskurs von Kerze 0, dann möchten wir gerne verkaufen und in dem Fall weisen wir den Begriff sell unserer Signalvariable zu. So fern wir ein Kaufsignal haben, also unser Signal den Wert buy hat und der Rückgabewert für OrdersTotal gleich 0 ist, dann bedeutet das, wir haben ein Kaufsignal und wir haben keine geöffneten Positionen und in dem Fall nutzen wir OrderSend, um für das aktuelle Währungspaar eine Kaufposition für 10 Microlot zu eröffnen. Und dieser Ausdruck hier sorgt dafür, dass unsere benutzerdefinierte Variable für die Profitpunkte genutzt wird. Wir gehen hier vom Ask-Preis aus und multiplizieren unseren benutzerdefinierten Wert mit dem sogenannten Punktewert. Wenn man _Point einmal markiert und die F1-Taste drückt, dann lernen wir, dass wir hier den Punktewert für die jeweilige Währung haben und die wird mit unserem benutzerdefinierten Wert hier multipliziert. Wiederholen wir das Ganze nochmal für das Sell-Signal. Wenn wir also verkaufen möchten und wir ebenfalls keine geöffneten Positionen haben, dann nutzen wir OrderSend für das aktuelle Währungspaar, um zu verkaufen, und zwar auch wieder 10 Microlot. Und auch hier ist wieder die Formel für die benutzerdefinierte Berechnung der Take Profit Werte. Zum Schluss nutzen wir noch den Comment-Befehl für eine Ausgabe. Die wird uns das aktuelle Signal und den Wert für die UserProfitPointValue-Variable direkt auf dem Chart anzeigen. Das wars im großen Ganzen. Wenn Sie keine Ahnung haben, was diese Codezeilen hier bewirken sollen oder wenn Ihnen das alles zu schnell ging, dann möchten Sie sich vielleicht zunächst die anderen Videos in dieser Grundlagenserie noch einmal anschauen. Vielleicht ist aber auch der Premiumkurs interessant für Sie. Den finden Sie auf unserer Webseite. Und das hier war übrigens wieder eine Frage von einem Premiumkursmitglied. Und falls Sie bereits Premiummitglied sind und eine Idee für so ein Video haben, dann lassen Sie es mich einfach wissen. Für den Moment klicken wir hier auf Kompilieren oder drücken die F7-Taste. Das hat bei mir ohne Fehler funktioniert und wenn das bei Ihnen auch so ist, dann klicken Sie bitte hier oben oder drücken Sie die F4-Taste, um in den Metatrader zurückzukehren. Und im Metatrader öffnen wir jetzt ein leeres Chartfenster, klicken auf Einfügen, Indikatoren, Tendenz, Moving Average. Bitte wählen Sie hier 50 Kerzen aus, ohne einen Versatz. Die Methode ist simple für Simple Moving Average, anwenden auf Close, als Farbe wähle ich hier rot und klicke auf ok. Dann taucht mein gleitender Durchschnitt hier auf dem Chart auf und jetzt klicke ich mit der rechten Maustaste, wähle Vorlagen, Vorlage speichern und speichere das Ganze unter dem Namen tester.tpl ab. Den alten Wert können Sie hier ruhig ersetzen, denn tester.tpl ist das was wir sehen, wenn wir den Strategietester starten. Dazu klicken wir jetzt Ansicht, Strategietester oder drücken die Tastenkombination Steuerung und R. Bitte wählen Sie hier die neu erstellte Datei SimplerProfitPointTest.ex4 aus, markieren Sie die Option für den visuellen Modus, aber bevor wir jetzt starten, klicken wir auf Expert Advisor Optionen, Eingaben und ändern hier den benutzerdefinierten Wert für den Take Profit auf 29 Punkte, klicken auf OK und starten unseren Test. Hier läuft unser Expert Advisor auch schon los. Wir sehen hier oben, dass der UserProfitPointValue sich auf 29 verändert hat. Sie können das Ganze jetzt beschleunigen, ein ganzes Jahr lang Ergebnisse berechnen und im nächsten Durchlauf dann mit einem anderen Wert probieren, welcher Take Profit Wert für Sie am besten funktioniert, denn in diesem Video haben Sie gelernt, wie man einen Expert Advisor programmieren kann, der in der Lage ist, mit benutzerdefinierten Werten für den Take Profit automatisch zu handeln. Und Sie haben das selbst programmiert, mit diesen paar Zeilen hier in MQL4.