Habe mich zwischenzeitlich nochmals mit "dem Teil" beschäftigt, da mir alles sehr unübersichtlich und einfach "viel zu viel" erschien.
Und das ist so weit das Resultat:
Code:
//--- MoneyManagement -------------------------+
double LotsOptimized()
{
double lot=Lots;
//--- select lot size
lot=NormalizeDouble(AccountFreeMargin() *MaximumRisk / 100, 2);
//--- calculate number of openOrders
if(ATR_ProfitFactor>0)
{
int zaehler;
int openOrders = 0;
int anzahlOrders = OrdersTotal();
for(zaehler = 0; zaehler < anzahlOrders; zaehler++)
{
OrderSelect(zaehler, SELECT_BY_POS, MODE_TRADES);
if (OrderSymbol() == Symbol())
{
if (OrderMagicNumber() == MagicNumber)
{
openOrders++;
}
}
}
if(openOrders>0)
//-- MathPow(double base,double exponent); = bereits im Editor implementiert
//-- Formel für Zahlenreihe der Verdopplung: a(openOrders) = 2 *2(hoch openOrders - 1)
lot = NormalizeDouble(lot *2 *MathPow(2,openOrders - 1),2);
}
//--- return lot size
if(lot<0.01) lot=0.01;
return(lot);
}
//--------------------------------------------+
In der sehnlichen Hoffnung, dass dieser Ansatz besser und unkomplizierter zum Ziel führt (max. 3 - 4 openOrder mit jeweiliger lot-Verdopplung), bin ich auf die Reaktion der Profis gespannt.
Vorerst schon einmal ein "Dankeschön" an traderdoc!
LG. piptrade