MQL5 Tutorial - Automatisch traden mit Metatrader5

MQL5 TUTORIAL GRUNDLAGEN – 112 SIMPLES BUY PERCENTAGE RISIKO


Listen Later

In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor programmieren kann, der in der Lage ist, aufgrund von prozentuellen Verlustwerten Positionen zu schließen. Also lassen Sie uns einmal schauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun, klicken Sie bitte im Metatrader hier oben auf dieses kleine Symbol oder drücken Sie die F4-Taste. 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 SimplesBuyPercentageRisiko, klicke auf weiter, weiter und fertigstellen. Jetzt kann hier alles oberhalb der OnTick-Funktion gelöscht werden und auch die zwei Kommentarzeilen werden entfernt.   Wir starten mit einem include-Befehl für die Datei trade.mqh. Die enthält die Klasse CTrade von der wir uns hier eine Instanz erstellen. Außerdem benötigen wir noch eine input-Variable vom Typ double für den Risikoprozentwert. Dieser Zusatz input wird es ermöglich, dass das der Benutzer ohne Neukompilierung verändern kann. Und wir brauchen noch eine Variable vom Typ double für den maximalen Positionsverlust, den wir erlauben. Innerhalb der OnTick-Funktion starten wir damit, dass wir zunächst den Ask-Preis berechnen. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart und wir nutzen hier SYMBOL_ASK mit Hilfe von NormalizeDouble und _Digits stellen wir sicher, dass wir die richtige Anzahl von Nachkommastellen für das jeweilige Währungspaar automatisch berechnen. Im nächsten Schritt berechnen wir hier die Balance, also das Bruttoguthaben. Das übernimmt die Funktion AccountInfoDouble und hier übergeben wir als Parameter ACCOUNT_BALANCE.   Damit wir auch prüfen können, ob unser Expert Advisor funktioniert benötigen wir eine Testposition. Das macht man natürlich nur auf einem Demokonto. Falls wir also keine offene Position haben, dann nutzen wir hier trade.Buy um eine Testposition für zehn Microlot zu eröffnen. Es handelt sich hier um eine buy, also eine Kauf-Position. Kommen wir zum eigentlichen interessanten Teil. Wir gehen hier mit einer Vorschleife alle offenen Positionen durch. Für jede dieser gefundenen Positionen benutzen wir PositionGetTicket für den aktuellen Schleifenzähler, um die Ticketnummer für unsere Position zu ermitteln. Danach ermitteln wir mit PositionGetDouble den Profit der Position. Wenn man das einmal markiert und die F1-Taste drückt, dann sieht man, dass der Profit nicht den SWAP, also die Gebühren für das Halten einer Position über Nacht enthält. Falls sie längerfristig Positionen halten, sollten Sie das auch berücksichtigen. Für unser einfaches Beispiel soll das aber so reichen.   Jetzt berechnen wir den maximalen Positionsverlust. Wir nehmen unser Bruttoguthaben, also die Balance und teilen es durch 100. Das multiplizieren wir dann mit dem Wert den der Benutzer als Risiko eingegeben hat. Und falls Sie sich hier vorne über den Teil wundern, wir müssen das Ganze als negativen Wert berechnen, denn ein Verlust ist negativ. Danach baue ich hier noch zwei Print-Ausgaben ein. Die werden uns im Journal den Positionsprofit und den Wert für den maximalen Positionsverlust angeben. Denn immer, wenn der Positionsprofit niedriger ist als das was wir als maximalen Positionsverlust erlauben, dann nutzen wir trade.PositionClose, um unser jeweiliges Ticket zu schließen. Bitte vergessen Sie nicht die schließende Klammer hier für den Vorloop einzusetzen. Und zum Schluss gönnen wir uns noch eine Comment-Ausgabe. Die wird uns auf dem Chart den Wert für die Balance, den maximalen Positionsverlust und den prozentualen Risikowert ausgeben.   Das wars auch schon so weit. Wenn Ihnen das hier zu schnell ging oder wenn Sie keine Ahnung haben, was alle diese Codezeilen hier bedeuten, dann möchten Sie sich vielleicht zunächst eines der Grundlagenvideos noch einmal anschauen. Vielleicht ist aber auch der Premiumkurs interessant für Sie. Den finden Sie auf unserer Webseite.
...more
View all episodesView all episodes
Download on the App Store

MQL5 Tutorial - Automatisch traden mit Metatrader5By MQL5 Tutorial - Automatisch traden mit Metatrader5