Arra lennék kiváncsi, hogy ti hogyan számoljátok ki a lot méretet ha a tőke 1-2%-át kockáztatjátok és a StopLoss is ismert. Az én megoldásom így néz ki:
double Lots(double RiskPercent, double Balance, int SL)
{
if (SL<1) return (0);
double MinLots = NormalizeDouble(MarketInfo(Symbol(),MODE_MINLOT),2);
double MaxLots = NormalizeDouble(MarketInfo(Symbol(),MODE_MAXLOT),2);
double LotStep = NormalizeDouble(MarketInfo(Symbol(),MODE_LOTSTEP),2);
double pipValue = MarketInfo(Symbol(), MODE_TICKVALUE);
double LotSize = Balance * RiskPercent / 100.0 / (SL * pipValue);
LotSize = MathRound(LotSize/LotStep)*LotStep; // LotSize-t LotStep-el oszthatóra "kerekíti"
LotSize = MathMax(MathMin(MaxLots,LotSize),MinLots); // min<=lotsize<=max
LotSize = NormalizeDouble(LotSize,2);
return (LotSize);
}