График М1 пропажа баров

 

Доброго времени суток!

Недавно попытался написать советника, все подчти норм получилось, открывает сделки по времени.

Проблема теперь во времени,например надо открыть сделку в 8 34 а бара такого нет посмотрел на минутке идет сначало 8 33 потом сразу 8 35, поанализировал еще график, заметил что некоторых минут так же нет.

Подскажите пожалуйста, как сделать повторное открытие сделки к примеру через минуту и т.д. пока не откроеться 1 сделка.

 
Какая разница какое время открытия имеет бар? Это просто следующий.
 

В тестере советник совершает сделки и даже показывает не плохой результат

Запустил на реальном счете, в редакторе скомпилировал загрузил сет.Но он не торгует (просто не открывает сделки)

В чем причина?!

 
Ошибки в журнале есть ?
 
DanLett:

В чем причина?!

Думаю, здесь помогут быстрее всего. Только не пишите им, они злятся))
 
в журнале нет ошибок ...
 
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++|
extern string ____0___ = "+++++Время SELL-а+++++++++++++";         //|
extern int sH=8;                                                   //|
extern int sM=35;                                                  //|
extern int sH2=11;                                                 //|
extern int sM2=5; 
extern int sH3=11;                                                 //|
extern int sM3=5;                                                 //|
extern string ____1___ = "+++++Время BUY-а++++++++++++++";         //|
extern int bH=17;                                                  //|
extern int bM=55;                                                  //|
extern int bH2=16;                                                 //|
extern int bM2=5; 
extern int bH3=16;                                                 //|
extern int bM3=5;                                                 //|
extern string ____4___ = "+++++Все остальное++++++++++++";         //|
extern int Tp=34;                                                  //|  
extern int Sl=55;                                                  //|
extern double Prosadka=22;                                         //|           
extern string ____5___ = "йоу!)";                                  //|     
extern color Cvet=Red;                                             //|
int ticket;                                                        //|      
                                                       
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++|

int start()
  {
   if((OrdersTotal()==0 && Hour()==sH && Minute()==sM)||(OrdersTotal()==0 && Hour()==sH2 && Minute()==sM2)||
    (OrdersTotal()==0 && Hour()==sH3 && Minute()==sM3))
      {
     
      OrderSend(Symbol(),OP_SELL,LotsOptimized(),Bid,0,Ask+Sl*Point,Ask-Tp*Point,"DLSexp",123,0,Cvet);//открываем сделку
      } 
      
      else   
         
   if((OrdersTotal()==0 && Hour()==bH && Minute()==bM)||(OrdersTotal()==0 && Hour()==bH2 && Minute()==bM2) ||
    (OrdersTotal()==0 && Hour()==bH3 && Minute()==bM3))
      {
   
      OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,0,Bid-Sl*Point,Bid+Tp*Point,"DLSexp",124,0,Cvet);//открываем сделку
      } 
         
   }       


 //++++++++++++ОПТИМИЗАЦИЯ ЛОТА+++++++++++++++
  double LotsOptimized()
  {
  double lot;
  lot=NormalizeDouble(AccountFreeMargin()/100.0/Prosadka,2);
  
  if(lot<0.01)
  return(0.01);
  else return(lot);
  }
  //++++++++++++++++++++++++++++++++++++++++++
     
 int init()
 {
 Comment("TP=",Tp,"\n","SL=",Sl);//Коментим в левом верхнем углу
 }    
 
       
 
Может в коде ошибка, хотя компилируется.на тесте торгует, а в реалке не торгует.
 
Помогите плис разобраться...
 
DanLett:

Слишком жесткие условия ставите. Они могут и не выполняться
 
DanLett:
Макс, но вы же должны понимать, что открывать ордера по времени - это слишком просто, чтобы натянуть рынок.
Причина обращения: