It give the "Lots" we entered to lot first, and then give a value to lot again according to account free margin, the previous value is covered by it right? so is that necessary to enter a Lots at the EA start ?
It's from the sample Moving Average EA in MT4 program.
I took course of C programming...and back here again lol..
inputdouble Lots =0.1; //at the ea start, enter the parameter 0.1 here//and then there is a "lot" in the block following, there are two assignments for"lot", then what's the 1st assignment for?double LotsOptimized()
{
double lot=Lots; // the 1stint orders=OrdersHistoryTotal(); // history orders totalint losses=0; // number of losses orders without a break//--- select lot size
lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/1000.0,1); // the 2nd//--- calcuulate number of losses orders without a breakif(DecreaseFactor>0)
{
for(int i=orders-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)==false)
{
Print("Error in history!");
break;
}
if(OrderSymbol()!=Symbol() || OrderType()>OP_SELL)
continue;
//---if(OrderProfit()>0) break;
if(OrderProfit()<0) losses++;
}
if(losses>1)
lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
}
//--- return lot sizeif(lot<0.1) lot=0.1;
return(lot);
}
It give the "Lots" we entered to lot first, and then give a value to lot again according to account free margin, the previous value is covered by it right? so is that necessary to enter a Lots at the EA start ?
It's from the sample Moving Average EA in MT4 program.
I took course of C programming...and back here again lol..
Thank you for help!