MQL4 TUTORIAL GRUNDLAGEN – 33 SO SCHLIESSEN SIE SELL POSITIONEN TEILWEISE

video

In diesem Video wollen wir uns einmal anschauen, wie man eine Positionsgröße durch eine Teilschließung verändern kann. In diesem Fall geht es um Sell Positionen, die immer hier um jeweils einen Mikrolot verringert werden, sobald sich der Preis in unserer Richtung bewegt. Und wir wollen uns mal anschauen, wie man das in MQL4 programmieren kann. Um das zu tun, klicken Sie bitte 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 einmal den Namen SimplerSellPositionModify, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. In der OnTick Funktion möchten wir zunächst prüfen, ob wir offene Positionen haben. Wir nutzen dazu OrdersTotal. Und sofern der Wert kleiner ist als eins, machen wir weiter. In unserem Fall eröffnen wir hier eine Testposition in der Größe von zehn Mikrolot. Auf einem Echtgeldkonto würde man das natürlich nicht so programmieren. Aber wir benötigen hier eine Position, die wir später verändern können. Wir nutzen also OrderSend, um für das aktuelle Währungspaar eine Verkaufsposition in der Größe von zehn Mikrolot zu eröffnen. Und für die Teilschließung gehen wir zunächst einmal alle offenen Orders durch. In unserem Fall wird das nur eine Position sein. Aber auf einem Echtgeldkonto könnten durchaus mehrere Positionen geöffnet sein. Wir zählen also hier mit einer Vorschleife alle Orders runter, wählen jeweils mit OrderSelect für den aktuellen Schleifenzähler eine Order aus. Als Parameter nutzen wir hier SELECT_BY_POS und MODE_TRADES. Danach prüfen wir noch, ob das aktuelle Währungssymbol mit dem Symbol, also dem Währungspaar auf unserem aktuellen Chart übereinstimmt. Und da wir ja nur Verkaufspositionen verändern möchten, prüfen wir auch noch den OrderType ab. Und sofern der Rückgabewert OP_SELL entspricht, dann wissen wir, dass es sich um eine Sell Position handelt. In diesem Schritt prüfen wir ab, ob die AccountEquity größer ist als die AccountBalance. Also ob unser Nettoguthaben unser Bruttoguthaben übersteigt. Und wenn das der Fall ist, dann nutzen wir OrderClose, um einen Teil der Positionen zu schließen. Dazu müssen wir einige Parameter übergeben. Der erste Parameter ist das OrderTicket. Parameter Nummer zwei ist die Lot Größe für die Schließung. In unserem Fall wird die bestehende Position um jeweils einen Mikrolot reduziert. Und zwar jeweils zum Ask Preis. Dieser Parameter hier ist die Slippage, also der Toleranzwert. Wir möchten nur dann schließen, wenn sich der Preis zwischen unserem Auftrag und der tatsächlichen Schließung nicht zu weit wegbewegt. Und der letzte Parameter hier steht für eine Farbe. Bei einer Teilschließung wird die nicht benötigt. Also nutzen wir hier die Konstante CLR_NONE, schließen die Klammer hier noch. Das hier ist eigentlich die schließende Klammer für die Funktion. Wir müssen aber die If-Schleife und die Vorschleife noch zumachen. Man kann das hier ganz gut erkennen. Wenn man eine geschweifte Klammer markiert, dann wird die andere, dazugehörende Klammer so leicht grau dargestellt. Damit kann man Klammerfehler ganz gut verhindern. Das was es soweit. Wenn Sie nicht wissen, was dieser ganze Code hier bewirken soll, oder wenn Ihnen das zu schnell ging, dann möchten Sie sich vielleicht vorher noch die anderen Videos aus diesem Grundlagenkurs hier anschauen. Oder vielleicht ist auch der Premium Kurs für Sie interessant. Wir sind soweit fertig. Darum klicken wir jetzt hier oben auf Kompilieren. Das hat bei mir ohne Fehler funktioniert. Und wenn das bei Ihnen auch der Fall ist, dann klicken Sie doch hier oben auf dieses kleine Symbol oder drücken Sie die F4 Taste, um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester oder drücken die Tastenkombination Strg+R. Hier wählen wir jetzt die neu erstellte Datei SimplerSellPositionModify.ex4 aus. Bitte markieren Sie hier den visuellen Modus und starten Sie Ihren Test. Und hier legt der Expert Advisor auch schon los und fängt an, Positionsgrößen zu reduzieren. Und Sie haben in diesem kurzen Video gelernt, wie man einen eigenständigen Expert Advisor oder eine Funktion programmieren kann, um bestehende Positionsgrößen zu verändern. Und Sie haben das selbst programmiert, mit diesen paar Zeilen hier in MQL4.