Bitte haben Sie nicht die MQL4 Version?
bool UseMaximumPercentageatRisk = true; double MaximumPercentageatRisk =1;
bool IsMicroAccount = true ; //for accounts allowing 0.01 lots
double GetLots(double lotsize_bn) { int tmpdecimal=1; if(IsMicroAccount) { tmpdecimal=2; } double old_lot=lotsize_bn; if((NormalizeDouble(AccountFreeMargin()*(MaximumPercentageatRisk/100)/1000.0,tmpdecimal)<lotsize_bn) && UseMaximumPercentageatRisk) { lotsize_bn=NormalizeDouble(AccountFreeMargin()*(MaximumPercentageatRisk/100)/1000.0,tmpdecimal); if(lotsize_bn<MarketInfo(Symbol(),MODE_MINLOT)) { lotsize_bn=MarketInfo(Symbol(),MODE_MINLOT); Print("RPTrade-Lot adjusted from ",old_lot," to minimum size allowed by the server of ",lotsize_bn," but it DOES NOT comply with Maximum Risk condition. User interaction is required!"); } else { Print("RPTrade-Lot adjusted from ",old_lot," to ",lotsize_bn," to comply with Maximum Risk condition. Each trade can risk only ",MaximumPercentageatRisk,"% of free margin."); } } return (lotsize_bn); }
Sollte so ähnlich sein ;-)
R.
I was looking at your code in MQL5 for "Maximum Percentage of Equity Risk".
I have some doubts regarding to how to use it. I have the mqh file in the include file and use #include <RPTrade.mqh> at the expert that I want to use.
Can you elaborate more on how to use this code in a expert advisor please? I'm new to coding. I have made expert advisors, but I don't know how to call a class or function in another file.
Ich muss die Funktion GetLots (lotsize) richtig aufrufen? Und in meiner Bestellanforderung muss ich den Wert "Losgröße" für die Lose verwenden?
Ich danke Ihnen!
Hallo Patagonia2015,
Zuerst müssen Sie die 2 Inputs zu Ihrem EA hinzufügen:
bool UseMaximumPercentageRisk=true; double MaximumPercentageRisk=25;
Dann müssen Sie die Funktion GetLots() aufrufen und die gewünschte Losgröße in die Klammern setzen, zum Beispiel call:
double MyLotSize; MyLotSize = GetLots (100);
Und je nachdem, was Sie als MaximumPercentageRisk und Ihren Kontostand eingegeben haben , werden Sie die richtige Größe erhalten.
Zum Beispiel, wenn MaximumPercentageRisk = 1; und Ihr Eigenkapital = 1000$, wird die Funktion 0,01 Lot zurückgeben.
Handeln Sie mit geringem Risiko, die Märkte sind wirklich wild ;-)
Hallo, vielen Dank für die Bereitstellung dieser Informationen.
Ich bin ein Anfänger, aber ich würde gerne in der Lage sein, eine Möglichkeit zu haben, mit meiner Losgröße konsistent zu sein, und ich würde gerne wissen, wie ich Ihren Code verwenden kann, um das zu tun?
Vielen Dank im Voraus
Zum Beispiel, wenn MaximumPercentageRisk = 1; und Ihr Eigenkapital = 1000$, wird die Funktion 0.01 Lot zurückgeben.
Handeln Sie mit geringem Risiko, die Märkte sind wirklich wild ;-)
Ichdachte, es ginge darum, dass Sie die passenden Lots auf der Grundlage des von Ihnen gewählten Risikos und des aktuellen Kontostands erhalten.
Einwenig Klarheit wäre sehr willkommen. Vielen Dank
Entschuldigung, Sie haben mich etwas verwirrt, als Sie sagten: "Sie müssen die Funktion GetLots() aufrufen und die gewünschte Lotsize in die Klammern setzen."
Ichdachte, es ginge darum, dass Sie die passenden Lots basierend auf dem von Ihnen gewählten Risiko und dem aktuellen Kontostand erhalten.
Einwenig Klarheit wäre sehr willkommen. Danke
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Maximaler Prozentsatz des Equityrisikos:
Autor: Remi Passanello