Einzelnen Beitrag anzeigen
  #5 (permalink)  
Alt 20.01.19
MA-EA MA-EA ist offline
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.178
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Danke, aber das scheint ein mathematisches Problem zu sein. Und ich habs mit Mathe nun echt nicht so am Hut.

Schaun wir noch mal mit Taschenrechner durch.

Ein paar dafür wichtige Deklarationen.
Code:
double M_REQ=MarketInfo(Symbol(),MODE_MARGINREQUIRED); // nötige Margin für 1 Lot (100.000 Units)
 double A_BAL=AccountBalance();
Erst mal ausrechnen, wie viel Mindest-Lot in ein ganzes Lot passen.
In meinem Fall 0.01, also einfach 1 * 0,01 = (man sehe und staune) 0,01.
Code:
double OneL_MinL = 1 * Min_L;
Bei nem Hebel von 100 brauch ich theoretisch 1000 Euro für nen ganzes Lot. Also nötige Margin für 1 Lot / 0,01 oben = 10,00. Die brauch ich wohl fürs Mindest-Lot 0.01.
Code:
MREQ_MinL = M_REQ * OneL_MinL;
Dann weiter mit 1.0% vom Kontostand. Sagen wir mal € 1275,25 / 100 = € 12,75
Code:
double OnePercAccBal = A_BAL / 100;
Jetzt will ich mal vom Kontostand pro Order 1,25% einsetzen.
€ 12,75 * 1,25% = € 15,93(75)
Code:
double OnePercAccBal_AutoLotPerc = OnePercAccBal * Auto_Lotsize_Perc;
Das mal diesen Mindest-Lot 0.01 ergibt irgendwie Quatsch.
15,93 * 0.01 = 0,1593 L
Code:
Lots = OnePercAccBal_AutoLotPerc * Min_L
Das müsste 0.01 oder 0.02 Lot ergeben, aber nie über 0.1 Lot.

Hilft da NormalizeDouble oder *Point?


Oder bin ich hier irgendwie ganz auf dem Holzweg?