return value of 'OrderSend' should be checked "8008" 33 13

 
Прошу прощение за хламление OrderSend(Symbol(),OP_BUYSTOP,lot,iHigh(Symbol(),PERIOD_D1,1)+SPREAD,3,iHigh(Symbol(),PERIOD_D1,1)-SL*Point,iHigh(Symbol(),PERIOD_D1,1)+TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Aqua); return value of 'OrderSend' should be checked 8008 33 13
 

Поставьте перед вызовом:

bool check = 
 
OrderSend(Symbol(),OP_SELLSTOP,lot,iLow(Symbol(),PERIOD_D1,1),3,iLow(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iLow(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);
Спасибо вот еще вопрос где можно по учится павлик      return value of 'OrderSend' should be checked "8008" 37 10


 
AZIK_REDKO:
Спасибо вот еще вопрос где можно по учится павлик      return value of 'OrderSend' should be checked "8008" 37 10


К сожалению, не могу понять, какой именно вопрос Вы задаете. "Где можно поучиться ...." чего? Павлик - это мужское имя (Павел).
 
         OrderSend(Symbol(),OP_SELLSTOP,lot,iLow(Symbol(),PERIOD_D1,1),3,iLow(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iLow(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);

return value of 'OrderSend' should be checked   "8008"  37      10

         OrderSend(Symbol(),OP_SELLLIMIT,lot,iHigh(Symbol(),PERIOD_D1,1),3,iHigh(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iHigh(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);

return value of 'OrderSend' should be checked   "8008"  44      10

         OrderSend(Symbol(),OP_BUYLIMIT,lot,iLow(Symbol(),PERIOD_D1,1)+SPREAD,3,iLow(Symbol(),PERIOD_D1,1)-SL*Point,iLow(Symbol(),PERIOD_D1,1)+TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Aqua);

return value of 'OrderSend' should be checked   "8008"  47      10


как можно эти исправить ошибки ? первое помогло bool check =  
 
AZIK_REDKO:
как можно эти исправить ошибки ? первое помогло bool check =  

И дальше то же самое. Только уже не нужно объявлять переменную check. Пишите:

bool check = OrderSend...
...
check = OrderSend...
...
check = OrderSend...
 
Игорь у меня такой вопрос почему робот на демо-счете работает , а на реальном-счете при тестер не работает .
 
AZIK_REDKO:
Игорь у меня такой вопрос почему робот на демо-счете работает , а на реальном-счете при тестер не работает .
Трудно сказать. Приложите код эксперта, посмотрим. В крайнем случае (если нет возможности привести код эксперта) посмотрите, что в логах. Возможно, там есть сообщения об ошибках.
 
#property copyright "TO"

extern int TYPE=0;
extern int TP = 20;
extern int SL = 50;
extern double lot=0.01; // сумма ставки в $
extern int Magic_Number=639713;

int init(){   return(0);}
int deinit(){   return(0);}
//===================================================================

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {
   double SPREAD=MarketInfo(Symbol(),MODE_SPREAD)*Point;
   double STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL)*Point;
   if(Orders_Total(Magic_Number,Symbol())==0)
     {
      //Установка ордеров
      if(TYPE<=0)
        {
         // Здесь установим STOP-ордера
         if(iHigh(Symbol(),PERIOD_D1,1)+SPREAD-STOPLEVEL>Ask)
      bool check = OrderSend(Symbol(),OP_BUYSTOP,lot,iHigh(Symbol(),PERIOD_D1,1)+SPREAD,3,iHigh(Symbol(),PERIOD_D1,1)-SL*Point,iHigh(Symbol(),PERIOD_D1,1)+TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Aqua);
         Alert(GetLastError());                      // Сообщение об ошибке
         Alert("Невозможно установить OP_BUYSTOP, цена слишком близка или выше High");
         if(iLow(Symbol(),PERIOD_D1,1)+STOPLEVEL<Bid)
         check = OrderSend(Symbol(),OP_SELLSTOP,lot,iLow(Symbol(),PERIOD_D1,1),3,iLow(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iLow(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);
         else Alert("Невозможно установить OP_SELLSTOP, цена слишком близка или ниже Low");
        }
      if(TYPE>=1)
        {
         // Здесь установим LIMIT-ордера
         if(iHigh(Symbol(),PERIOD_D1,1)-STOPLEVEL>Bid)
         check = OrderSend(Symbol(),OP_SELLLIMIT,lot,iHigh(Symbol(),PERIOD_D1,1),3,iHigh(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iHigh(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);
         else Alert("Невозможно установить OP_SELLLIMIT, цена слишком близка или выше High");
         if(iLow(Symbol(),PERIOD_D1,1)+STOPLEVEL<Ask)
         check = OrderSend(Symbol(),OP_BUYLIMIT,lot,iLow(Symbol(),PERIOD_D1,1)+SPREAD,3,iLow(Symbol(),PERIOD_D1,1)-SL*Point,iLow(Symbol(),PERIOD_D1,1)+TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Aqua);
         else Alert("Невозможно установить OP_BUYLIMIT, цена слишком близка или ниже Low");
        }
     }
   return(0);
  }
//---- Возвращает количество ордеров указанного эксперта(Маджик,Символ) ----//
int Orders_Total(int mn,string sym)
  {
   int num_orders=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      bool check = OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(OrderMagicNumber()==mn && sym==OrderSymbol())
         num_orders++;
     }
   return(num_orders);
  };
//+------------------------------------------------------------------+
вот
 
AZIK_REDKO:
вот

В принципе каких-то грубых ошибок, которые бы не дали возможность советнику работать, нет. Хотя, конечно, много, чего не учтено (проверок почти нет). Если немного подрихтовать код, чтобы видеть реальные ошибки, то код станет таким:

#property copyright "TO"

extern int TYPE=0;
extern int TP = 20;
extern int SL = 50;
extern double lot=0.01; // сумма ставки в $
extern int Magic_Number=639713;

int init(){   return(0);}
int deinit(){   return(0);}
//===================================================================

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {
   double SPREAD=MarketInfo(Symbol(),MODE_SPREAD)*Point;
   double STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL)*Point;
   if(Orders_Total(Magic_Number,Symbol())==0)
     {
      //Установка ордеров
      if(TYPE<=0)
        {
         // Здесь установим STOP-ордера
         if(iHigh(Symbol(),PERIOD_D1,1)+SPREAD-STOPLEVEL>Ask)
         {
            int ticket = OrderSend(Symbol(),OP_BUYSTOP,lot,iHigh(Symbol(),PERIOD_D1,1)+SPREAD,3,iHigh(Symbol(),PERIOD_D1,1)-SL*Point,iHigh(Symbol(),PERIOD_D1,1)+TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Aqua);
            if (ticket < 0)
               Alert("Ошибка установки ордера Buy Stop: ", GetLastError());                      // Сообщение об ошибке
         }
         else
            Alert("Невозможно установить OP_BUYSTOP, цена слишком близка или выше High");
         if(iLow(Symbol(),PERIOD_D1,1)+STOPLEVEL<Bid)
         {
            ticket = OrderSend(Symbol(),OP_SELLSTOP,lot,iLow(Symbol(),PERIOD_D1,1),3,iLow(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iLow(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);
            if (ticket < 0)
               Alert("Ошибка установки ордера Sell Stop: ", GetLastError());                      // Сообщение об ошибке
         }
         else 
            Alert("Невозможно установить OP_SELLSTOP, цена слишком близка или ниже Low");
        }
      if(TYPE>=1)
        {
         // Здесь установим LIMIT-ордера
         if(iHigh(Symbol(),PERIOD_D1,1)-STOPLEVEL>Bid)
         {
            ticket = OrderSend(Symbol(),OP_SELLLIMIT,lot,iHigh(Symbol(),PERIOD_D1,1),3,iHigh(Symbol(),PERIOD_D1,1)+SPREAD+SL*Point,iHigh(Symbol(),PERIOD_D1,1)+SPREAD-TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Magenta);
            if (ticket < 0)
               Alert("Ошибка установки ордера Sell Limit: ", GetLastError());                      // Сообщение об ошибке
         }
         else 
            Alert("Невозможно установить OP_SELLLIMIT, цена слишком близка или выше High");
         if(iLow(Symbol(),PERIOD_D1,1)+STOPLEVEL<Ask)
         {
            ticket = OrderSend(Symbol(),OP_BUYLIMIT,lot,iLow(Symbol(),PERIOD_D1,1)+SPREAD,3,iLow(Symbol(),PERIOD_D1,1)-SL*Point,iLow(Symbol(),PERIOD_D1,1)+TP*Point,NULL,Magic_Number,iTime(Symbol(),PERIOD_D1,0)+PERIOD_D1*60,Aqua);
            if (ticket < 0)
               Alert("Ошибка установки ордера Buy Limit: ", GetLastError());                      // Сообщение об ошибке
         }
         else 
            Alert("Невозможно установить OP_BUYLIMIT, цена слишком близка или ниже Low");
        }
     }
   return(0);
  }
//---- Возвращает количество ордеров указанного эксперта(Маджик,Символ) ----//
int Orders_Total(int mn,string sym)
  {
   int num_orders=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      bool check = OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if(OrderMagicNumber()==mn && sym==OrderSymbol())
         num_orders++;
     }
   return(num_orders);
  };
//+------------------------------------------------------------------+

 Здесь тоже далеко до совершенства, но работать во многих случаях будет (у меня работает).

Просто смотрите, какие ошибки выдает эксперт. 

 
пробовал на реальном счете в тестер стратегий он ставок не показывал . в журнале стратегий пишет  эти ошибки 
 Expertaddddd EURUSD,M15: OrderSend error 130
Expertaddddd EURUSD,M15: Alert("Невозможно установить OP_BUYSTOP, цена слишком близка или выше High");

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