MQL4 TUTORIAL GRUNDLAGEN – 30 SO SCHLIESSEN SIE ALLE BUY POSITIONEN

video
play-sharp-fill

In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor dazu bringen kann, alle geöffneten Positionen automatisch zu schließen. Dazu werden hier auf diesem Chart immer Positionen eröffnet. Und sobald die Positionsanzahl zehn erreicht ist, werden alle Positionen über eine Funktion geschlossen. Wir wollen uns jetzt einmal anschauen, wie man so etwas mit MQL4 programmieren kann. Dazu klicken Sie bitte auf diesen kleinen Button 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 SimplerPositionCloser, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen können weg. Wir starten in der OnTick Funktion damit, dass wir prüfen, ob wir weniger als zehn geöffnete Positionen haben. Die Funktion OrdersTotal liefert uns die Gesamtanzahl für Orders und Positionen. Und solange das Ergebnis kleiner ist als zehn, möchten wir hier Testpositionen eröffnen. Das geht mit dem OrderSend Befehl für das aktuelle Währungspaar auf dem Chart. Wir möchten gerne Buy Positionen erstellen. Und wenn wir genau zehn Positionen haben, wenn also die Funktion OrdersTotal uns den Wert zehn zurückliefert, dann nutzen wir die Funktion CloseBuyPositions um alle offenen Buy Positionen zu schließen. Diese Funktion gibt es noch gar nicht. Darum werden wir die jetzt programmieren. Die Funktion soll CloseBuyPositions heißen. Wir nutzen hier keinen Rückgabetyp. Zunächst gehen wir mit einer Vorschleife alle offenen Positionen durch. Und solange, wie wir noch vorhandene Positionen finden, zählen wir runter. Mit OderSelect wählen wir uns dann eine Position aus. Diese Variable I ist der aktuelle Positionszähler. Wir nutzen SELECT_BY_POS und MODE_TRADES. Zur Sicherheit ermitteln wir noch das aktuelle Währungspaar für die Position. Wenn man das später im Echtbetrieb vergisst, dann kann es passieren, dass man auch Positionen für komplett andere Währungspaare schließt, wenn für dieses Währungspaar eine bestimmte Bedingung erfüllt ist. Darum prüfen wir hier, ob das aktuelle Währungspaar auf dem Chart mit dem Währungspaar für unsere Position übereinstimmt. Außerdem möchten wir gerne wissen, ob der OrderType OP_BUY ist. Das bedeutet, wir haben eine Kaufposition. Und wenn alle diese Bedingungen erfüllt sind, dann nutzen wir OrderClose um das aktuelle OrderTicket mit der aktuellen Lotzahl für den aktuellen Bid Preis zu schließen. Unsere Slip-Pitch geben wir hier mit drei an, damit wir einen Toleranzwert haben, falls sich während der Ausführung der Preis noch ändern sollte. Das hier wäre eine Angabe für eine Farbe. Die brauchen wir in diesem Fall nicht. Zu guter Letzt müssen wir hier noch die Vorschleife und die Funktion mit einer abschließenden Klammer beenden. Und falls Ihnen das hier alles zu schnell ging oder Sie nicht genau wissen, was der Code hier so macht, dann möchten Sie sich vielleicht noch die anderen Videos in diesem Grundlagenkurs anschauen. Oder vielleicht ist auch der Premium Kurs interessant für Sie. Wir sind soweit fertig und klicken jetzt hier auf Kompilieren. Das sollte ohne Fehler funktionieren. Und wenn das bei Ihnen auch so ist, dann klicken Sie bitte 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 Strg+R. Hier wählen wir jetzt die neu erstellte Datei SimplerBuyPositionCloser.ex4 aus. Bitte aktivieren Sie hier den visuellen Modus und starten Sie einen Test. So sieht das Ganze jetzt aus. Hier werden Position eröffnet. Und immer, wenn die Positionsanzahl überschritten wird, werden alle Position gleichzeitig geschlossen. Dieses Video ist entstanden aufgrund einer Idee von einem Premiumkurs Mitglied. Und falls Sie auch Ideen haben, die man in solchen Videos hier verarbeiten könnte, dann schreiben Sie mir doch einfach ein E-Mail. Denn in diesem kurzen Video haben Sie gelernt, wie Sie mit MQL4 einen Expert Advisor programmieren können, der in der Lage ist, alle geöffneten Buy Positionen gleichzeitig zu schließen. Und Sie haben das selbst programmiert, mit diesen paar Zeilen hier in MQL4.