In diesem Video wollen wir uns einmal anschauen, wie man für einen Sell Trade einen Trailing Stop programmieren kann, der automatisch nachgezogen wird, wenn der Kurspreis hier sinkt. Um das zu tun, klicken Sie bitte auf dieses kleine Symbol hier oben oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier mal den Namen SimplerSellTrainlingStop. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und wir entfernen auch die zwei Kommentarzeilen. Innerhalb der OnTick Funktion prüfen wir zunächst einmal, ob wir keine offenen Positionen haben. Und wenn OrdersTotal einen Wert von kleiner eins zurückliefert, dann ist das der Fall. Wir brauchen aber eine Position, weil wir sonst nicht überprüfen können, ob unser Trailing Stop überhaupt funktioniert. Darum nutzen wir hier den OrderSend Befehl, um einen Sell Trade für zehn Microlot zu eröffnen. Natürlich würde man das nicht ohne ein entsprechendes Signal auf einem Echtgeldkonto tun. Danach gehen wir alle Orders durch. OrdersTotal liefert uns die Anzahl aller derzeit existierenden Orders. Mit dieser Vorschleife hier gehen wir von dieser Anzahl aus, jede einzelne Position durch. Dazu nutzen wir den Befehl OrderSelect für die aktuelle Positionsnummer. Wir nutzen SELEKT BY POSITION und wir nutzen MODE_TRADES, alles in Großbuchstaben bitte. Es gäbe auch noch MODE_HISTORIE. Damit könnte man beispielsweise die bereits geschlossenen Positionen durchgehen. Das macht aber im Falle eines Trailing Stops keinen Sinn. Im Anschluss müssen wir prüfen, ob das Währungspaar für die offene Order mit dem Währungspaar auf unserem Chart übereinstimmt. Und außerdem möchte ich auch noch wissen, ob der OrderType auf OP_SELL steht. Denn OP_SELL steht für eine Verkaufsposition. Und wenn das alles zutrifft, dann möchten wir überprüfen, ob unser OrderStopLoss entweder auf null steht, oder ob er sich mehr als 150 Punkte vom aktuellen Bid Preis entfernt befindet. Und wenn das der Fall ist, dann möchten wir ihn verändern. Das machen wir mit Hilfe der Funktion OrderModify für das aktuelle OrderTicket, das zum entsprechenden Order Eröffnungspreis geöffnet wurde, setzen wir den neuen Stop Loss auf 150 Punkte oberhalb des Bid Preises. Den Wert für den Take Profit der Order lassen wir unverändert. Wir brauchen auch keinen Ablauftermin. Und wir nutzen keine Farbe. Das sieht jetzt alles vielleicht etwas kompliziert aus. Und wenn Sie nicht verstehen, was der Code hier so macht, dann möchten Sie sich vielleicht vorher noch die anderen Videos aus dieser Grundlagenserie anschauen. Vielleicht ist aber auch der Premiumkurs interessant für Sie. Wir beenden das Ganze jetzt hier, indem wir noch die offenen Schleifen schließen. Also bitte keine Klammerfehler machen. Danach können Sie hier auf Kompilieren klicken oder die F7 Taste drücken. Wir bekommen hier keine Fehler, nur eine Warnung, dass wir den Rückgabewert für OrderModify überprüfen könnten. Für diese einfache Beispiel soll uns das aber so reichen. Und wenn Sie alles haben, dann können Sie jetzt hier oben klicken oder die F4 Taste drücken, um in den Metatrader zurückzukehren. Im Metatrader nehmen wir jetzt ein ganz einfaches Chart, ohne jeden Indikator, klicken mit der rechten Maustaste hinein, wählen Vorlagen, Vorlage speichern und speichern das Ganze als tester.tpl. Denn das ist die Ansicht, die wir im Strategietester sehen werden. Der aktuelle Wert kann überschrieben werden. Wenn Sie soweit sind, klicken Sie danach auf Ansicht, Strategietester oder drücken Sie die Tastenkombination Strg+R. Hier wählen wir jetzt die neuerstellte Datei SimplerSellTrailingStop.ex4 aus. Bitte markieren Sie auch hier den Haken für den visuellen Modus und starten Sie Ihren Test. Schon läuft unser Expert Advisor los. Und in wenigen Sekunden sollten wir hier oben den Trailing Stop hinterherlaufen sehen. Unser Expert Advisor funktioniert also. Und Sie haben in diesem kurzen Video gelernt, wie Sie für einen Sell Trade einen auftomatischen Trailing Stop programmieren können. Und Sie haben das selbst programmiert, mit diesen paar Zeilen hier, im MQL4.
Podcast: Play in new window | Download