MQL5 не срабатывает стоп в тестере

 

Стоп выставляют так


 if(PositionGetDouble(POSITION_SL)==0)

        {

     

           if (curPos>0)

           cTrade.PositionModify(Symbol(),levelWork-Stop,NULL);

           if (curPos<0)

           cTrade.PositionModify(Symbol(),levelWork+Stop,NULL);

        }


А вход происходит так


void BuyStop(double volume,double price,string comment)

  {

   SymbolInfoTick(Symbol(),last_tick);

   MqlTradeRequest request={0};

   request.action=TRADE_ACTION_PENDING;      // установка отложенного ордера

   request.magic=magic;                  // ORDER_MAGIC

   request.symbol=Symbol();                      // инструмент

   request.volume=volume;                          // объем в 0.1 лот

   request.sl=0;                                // Stop Loss не указан

   request.tp=0 ;                                // Take Profit не указан 

   //request.comment=comment;

   request.type=ORDER_TYPE_BUY_STOP;   

        request.type_filling = ORDER_FILLING_RETURN;

   request.type_time = ORDER_TIME_SPECIFIED_DAY;

   datetime cur_time = TimeTradeServer();

   ulong a_time = ulong( cur_time ) + 172800; //прибавил сутки

   request.expiration = datetime( a_time );

    request.deviation=devi;     

   request.price=price;//last_tick.ask+slip*Point(); 

   MqlTradeResult result={0};

   OrderSend(request,result);

  

   //Alert("Покупка! "+result.retcode+" "+price);


  }


Делается робот для ММВБ

Файлы:
image_l1q.png  137 kb
 
Причина обращения: