Советник отказал на МТ4 - страница 2

 

digits больше нету есть MODE_DIGITS

 

void __open(string name,int Идентификатор,int cmd,double Лот,double open,double stop,double take,string comment="",color cl=CLR_NONE){

   bool is_open=true;   

   int j=0;

   int digit=MarketInfo(name,MODE_DIGITS);

   

   while(is_open && j<100){

   j++;

   

   if(OrderSend(name,cmd,Лот,NormalizeDouble(open,digit),0,NormalizeDouble(stop,digit),NormalizeDouble(take,digit),comment,Идентификатор,0,cl)==-1){

      int err=GetLastError();

      

      switch(err){

         case 0:

         case 1: {is_open=false; break;}      

         case ERR_REQUOTE: {Print("Реквот"); Sleep(5000);} break;

         case ERR_INVALID_STOPS: {Print("Неверный стоп уровень(",name,", ",cmd,", ",Лот,", ",open,", ",stop,", ",take,");"); } break;

         case ERR_INVALID_TRADE_VOLUME: {Print("Неверный лот(",name,", ",cmd,", ",Лот,", ",open,", ",stop,", ",take,");");} break;

         case ERR_INVALID_PRICE: {Print("Неверная цена(",name,", ",cmd,", ",Лот,", ",open,", ",stop,", ",take,");");} break;

         case ERR_TRADE_NOT_ALLOWED: {Print("Торговля не разрешена. Необходимо включить опцию \"Разрешить советнику торговать\" в свойствах эксперта.");} break;

         default: {is_open=false; Print("Ошибка: ",err," order_open(",name,", ",cmd,", ",Лот,", ",open,", ",stop,", ",take,");");} break;

      }

            

      

      if(cmd==OP_BUY){RefreshRates(); open=MarketInfo(name,MODE_ASK); }

      if(cmd==OP_SELL){RefreshRates(); open=MarketInfo(name,MODE_BID); }

      

      

   }else{

      is_open=false;

      break;

      }

      

   }

}

 

Есть digit это не он случайно без S
 
В ошибе пишет "Неверный стоп уровень"
 

На демке 5 знаковой у брокера - тоже не работает

 

2012.10.10 19:20:05  EURUSD,M1: Неверный уровень стопа(EURUSD, 0, 0.48, 1.2864, 1.2823, 0);

 

 

Разобрался.....

 

Спасибо Yedelkin  

Причина обращения: