Скачать MetaTrader 5

Ошибка открытия ордера в новом терминале: invalid lots amount for OrderSend function

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Нужен программист? Оставь заказ и он сам тебя найдет!
Evgeniy Zhdan
5537
Evgeniy Zhdan 2014.04.08 20:13 

Здравствуйте! Скажите, пожалуйста, чем вызвана ошибка в работе советника -  invalid lots amount for OrderSend function    . В старом терминале советник работает, а в новом нет. В коде ошибки нет. Лот передается как 0.100000 ну я не знаю сколько нулей (демо-счет). Я уже пробовал нормализовать лот до 0.10 - все равно ошибка. В чем может быть дело?

                      // этот код исполняется 
 if(CountSellSYM_1()==0 && CountBuySYM_1()==0 && frUP >0 && frLOW ==0)
     {
      ticket=OrderSend(symbol_1,OP_SELL,NormalizeDouble(Lots,2),Bid,Slippage,0,0,name,Magic2,0,Red);
      if(ticket>0) // && TakeProfit > 0)
        {
        Print ("Продажа по " + symbol_1 + " прошла успешно.");
        }
     }
 //   а при выполнении этого - invalid lots amount for OrderSend function

  if(CountSellSYM_1()==1 && CountSellSYM_2()==0)
   {
      ticket_opp = OrderSend(symbol_2,OP_SELL,NormalizeDouble(Lots,2),Bid,Slippage,0,0,name,Magic2,0,Red); 
      if(ticket_opp>0)  Print ("Продажа по " + symbol_2 + " прошла успешно.");
   } 

 Принт перед ордер сендом второго ордера пишет Lots = 0.01

Т.е. все нормально. Может быть у кого то случался такой казус? Как его решили? 

Andrey F. Zelinsky
31364
Andrey F. Zelinsky 2014.04.08 20:17  
Цена Bid для какого символа?
Evgeniy Zhdan
5537
Evgeniy Zhdan 2014.04.08 20:25  
abolk:
Цена Bid для какого символа?
для текущего.... Но каким боком она к лоту??
Andrey F. Zelinsky
31364
Andrey F. Zelinsky 2014.04.08 20:31  

Bid -- это цена графика, к которому прикреплён советник. И символ графика может отличаться и от символа symbol_1, и от символа symbol_2. Во втором случае уж точно отличается.

Получается, что идёт продажа по хрен знает какой цене.

Вот и боком она к лоту. 

Evgeniy Zhdan
5537
Evgeniy Zhdan 2014.04.08 20:42  
abolk:

Bid -- это цена графика, к которому прикреплён советник. И символ графика может отличаться и от символа symbol_1, и от символа symbol_2. Во втором случае уж точно отличается.

Получается, что идёт продажа по хрен знает какой цене.

Вот и боком она к лоту. 

Спасибо!
BINOW
67
BINOW 2014.12.19 08:46  
Помогите пожалуйста разобраться с такой же ошибкой.
Файлы:
Alexey Viktorov
6847
Alexey Viktorov 2014.12.19 09:54  
enfinitum:
Помогите пожалуйста разобраться с такой же ошибкой.

Надо нормализовать размер лота

lot = NormalizeDouble(min_lot*x, MathLog10(MarketInfo(_Symbol, MODE_LOTSTEP)));
BINOW
67
BINOW 2014.12.19 10:13  
AlexeyVik:

Надо нормализовать размер лота

Спасибо
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий