Перепроверьте пожалуйста код перенесенный с MQL4 на MQL5

 

Всем привет, ребят я тут перенес маленький кусочек кода с MQL4 на MQL5

MQL4

double LotSize(int SL, double MR)// SL-StopLoss MR-MaxRisk
{
   if (SL == 0) return(0); // исключение деления на ноль
   double Free    =AccountBalance();
   double LotVal  =MarketInfo(Symbol(),MODE_TICKVALUE);//стоимость 1 пункта 1 лота
   double Min_Lot =MarketInfo(Symbol(),MODE_MINLOT);
   double Max_Lot =MarketInfo(Symbol(),MODE_MAXLOT);
   double Step    =MarketInfo(Symbol(),MODE_LOTSTEP);
   double Lot     =MathFloor((Free*MR/100)/(SL*LotVal)/Step)*Step;
   if(Lot<Min_Lot)  Lot=Min_Lot;
   if(Lot>Max_Lot)  Lot=Max_Lot;
   return(Lot);
}

MQL5

   if (SL == 0) return(0); // исключение деления на ноль
   double Free    =AccountBalance();
   double LotVal  =SymbolInfoDouble(symbol,SYMBOL_TRADE_TICK_SIZE);//стоимость 1 пункта 1 лота
   double Min_Lot =SymbolInfoDouble(symbol,SYMBOL_VOLUME_MIN);
   double Max_Lot =SymbolInfoDouble(symbol,SYMBOL_VOLUME_MAX);
   double Step    =SymbolInfoDouble(symbol,SYMBOL_VOLUME_STEP);
   double Lot     =MathFloor((Free*MR/100)/(SL*LotVal)/Step)*Step;
   if(Lot<Min_Lot)  Lot=Min_Lot;
   if(Lot>Max_Lot)  Lot=Max_Lot;
   return(Lot);


Правельно ли я перенес константы

MODE_TICKVALUE -> SYMBOL_TRADE_TICK_SIZE

MODE_MINLOT -> SYMBOL_VOLUME_MIN

И т.д.


Просто хочу проверку третей стороной :)

 
0x41:

Всем привет, ребят я тут перенес маленький кусочек кода с MQL4 на MQL5

MQL4

MQL5


Правельно ли я перенес константы

MODE_TICKVALUE -> SYMBOL_TRADE_TICK_SIZE

MODE_MINLOT -> SYMBOL_VOLUME_MIN

И т.д.


Просто хочу проверку третей стороной :)

Запустите этот код в мт4 и сверьте.

И не совсем правЕльно

Замените AccountBalance() на 

AccountInfoDouble(ACCOUNT_BALANCE)
Причина обращения: