Ошибки, баги, вопросы - страница 3588

 
Igor168 #:

Могли бы вы привести пример такого шлабаума для мультивалютного эксперта? 
Я пробовал, но вышло не очень. Объясню в чем у меня была загвоздка. Всего 9 пар. На текущем баре из 9 пар, есть три сигнала. Один сигнал эксперт отправит, следующие уже нет так как шлагбаум закрыт. На следующем баре, когда шлабаум снова открыт он отправит еще один сигнал. Остальные он не отправит. А мне нужно создать эксперта, который проанализировал все указанные ему инструменты, отправил по ним сигнал. Без повтора одного и того же сигнала и если на следующих барах появятся еще сигналы, то он отправит оповещения по этим сигналам 

Дождаться нового бара на всех парах, а потом проверить на них сигнал.

//+------------------------------------------------------------------+
bool NewBarBasket()
  {
   static datetime nextTime = 0;
   string Symb[3] = {"EURUSD", "GBPUSD", "AUDUSD"};
   MqlTick tick;
   int res = 0;
   for(int i = 0; i < 3; i++)
      if(SymbolInfoTick(Symb[i], tick))
         if(tick.ask != 0 && tick.bid != 0)
            if(tick.time >= nextTime)
               res++;

   if(res == 3)
     {
      int perSec = PeriodSeconds(PERIOD_CURRENT);
      nextTime = tick.time - tick.time % perSec + perSec;
      return true;
     }
   return false;
  }
//+------------------------------------------------------------------+