In diesem Video wollen wir uns einmal anschauen, wie man einen Trailing Stop für eine Buy Position programmieren kann. Man sieht hier, dass der Stop Loss hinter dem Preis herwandert. Also nachgezogen wird, wenn der Preis hier oben steigt. Und wir wollen uns einmal anschauen, wie man das in MQL5 programmieren kann. Um das zu tun, klicken Sie im Metatrader bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier wählen wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich verwende hier einmal den Namen SimplerBuyTrainlingStop. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der OnTick Funktion hier gelöscht werden. Auch die zwei Kommentarzeilen werden entfernt. Wir starten damit, dass wir die Datei Trade.mqh einbinden. Die gehört zum Lieferumfang von MQL5 dazu und bietet uns vereinfachte Handelsfunktionen. Wir starten damit, dass wir eine Instanz von CTrade erstellen, die den Namen trade bekommt. Die werden wir gleich verwenden, um eine Testposition zu eröffnen. Dazu müssen wir zunächst einmal den Ask Preis ermitteln. Das geht mit SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir verwenden SYMBOL_ASK, alles in Großbuchstaben. Und mit NormalizeDouble und _Digits ermitteln wir auch noch die Anzahl der Nachkommastellen. Denn je nach Währungspaar können das drei oder fünf Nachkommastellen sein. Danach prüfen wir, ob wir keine Positionen geöffnet haben. Das geht mit PositionsTotal. Und wenn der Rückgabewert null ist, dann eröffnen wir eine Testposition. Das soll ein Buy Trade für zehn Microlot sein. Das würde man auf einem Echtgeldkonto natürlich jetzt nicht so machen. Aber für unseren Testfall brauchen wir eine Position, damit wir den Trailing Stop ausprobieren können. Den rufen wir auf mit CheckTrailingStop und übergeben hier den ermittelten Ask Preis als Parameter. Aber diese Funktion hier muss jetzt noch programmiert werden. Für unseren Trailing Stop brauchen wir keinen Rückgabewert. Die Funktion soll ChecktrailingStop heißen. Und als Parameter übernimmt sie den Ask Preis, den wir hier oben übergeben haben. Zunächst definieren wir hier den gewünschten Stop Loss Wert von 150 Punkten. Denn wir möchten gerne vom aktuellen Ask Preis aus, 150 Punkte unterhalb unseren Stop Loss setzen. Dazu gehen wir zunächst einmal erst alle Positionen durch. Wir nutzen dafür PositionsTotal. Das ist eine Funktion, die uns die Anzahl der offenen Positionen zurückgibt. Und von dieser Anzahl zählen wir jetzt mit einer for Schleife komplett runter, bis keine Position mehr übrig ist. Für jede Position ermitteln wir das aktuelle Positionssymbol, also das Währungspaar, in dem die Position eröffnet wurde. Und wenn das aktuelle Währungspaar auf dem Chart und das Währungspaar der geöffneten Position übereinstimmen, dann möchten wir gerne den Stop Loss prüfen. Dazu brauchen wir aber erst noch ein paar Eigenschaften der Position. Die erste Eigenschaft ist die Ticket Nummer. Die kann ermittelt werden mit PositionGetInteger, POSITION_TICKET, bitte alles in Großbuchstaben schreiben. Es handelt sich hier um einen Datentyp ulong. Das steht für unsigned long integer. Außerdem brauchen wir noch den aktuellen Stop Loss Wert für die Position. Den ermitteln wir mit PositionGetDouble. POSITION_SL liefert uns als Wert den aktuellen Stop Loss. Und wenn der aktuelle Stop Loss für die Position mehr als 150 Punkte unter dem Ask Preis ist, wenn als der CurrentStopLoss kleiner ist als der gewünschte Stop Loss von 150 Punkten, den wir hier oben definiert haben, dann nutzen wir trade.PostitionMedify für das aktuelle Ticket und ziehen unseren aktuellen Stop Loss um zehn Punkte nach oben. Zum Schluss machen wir hier noch alle Schleifen zu. Wenn man eine Klammer hier markiert, kann man ganz gut erkennen, zu welchen anderen Klammer sie gehört. Und das war es im Großen und Ganzen. Wenn Ihnen das zu schnell war oder wenn Sie nicht verstehen,