Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Есть вопросы по реализации идеи? Обсуди их на форуме!
rescuer-net
50
rescuer-net 2013.08.12 09:55 

Подскажите, как остановить работу советника на несколько секунд?

именно в секундах, не в тиках и барах.

пример:

----------

условие

{

условие

{

действие

}

пауза на 10 сек


и по новой....

Igor Konyashin
3126
Igor Konyashin 2013.08.12 10:08  
Mauzer.VII
46
Mauzer.VII 2013.08.12 10:25  

Я думаю что вам как пример подойдёт выполнение функции Fun_Error

int Fun_Error (int Error)                        // Ф-ия обработ ошибок
  {
   switch(Error)
     {                                          // Преодолимые ошибки            
      case  4:Print("Торговый сервер занят. Пробуем ещё раз..");
         Sleep(3000);                           // Простое решение
         return(1);                             // Выход из функции
      case 135:Alert("Цена изменилась. Пробуем ещё раз..");
         RefreshRates();                        // Обновим данные
         return(1);                             // Выход из функции
      case 136:Alert("Нет цен. Ждём новый тик..");
         while(RefreshRates()==false)           // До нового тика
            Sleep(1);                           // Задержка в цикле
         return(1);                             // Выход из функции
      case 137:Alert("Брокер занят. Пробуем ещё раз..");
         Sleep(3000);                           // Простое решение
         return(1);                             // Выход из функции
      case 146:Alert("Подсистема торговли занята. Пробуем ещё..");
         Sleep(500);                            // Простое решение
         return(1);                             // Выход из функции
         // Критические ошибки
      case  2:Print("Общая ошибка.");
         return(0);                             // Выход из функции
      case  5:Print("Старая версия терминала.");
         Work=false;                            // Больше не работать
         return(0);                             // Выход из функции
      case 64:Print("Счет заблокирован.");
         Work=false;                            // Больше не работать
         return(0);                             // Выход из функции
      case 130:Alert("Неправильные стопы.");
         return(0);                             // Выход из функции      
      case 133:Alert("Торговля запрещена.");
         return(0);                             // Выход из функции
      case 134:Alert("Недостаточно денег для совершения операции.");
         return(0);                             // Выход из функции
      default:Print("Возникла ошибка ",Error); // Другие варианты   
         return(0);                             // Выход из функции
     }
  }
Paladin80
706
Paladin80 2013.08.12 10:46  
rescuer-net:

Подскажите, как остановить работу советника на несколько секунд?

именно в секундах, не в тиках и барах.

пример:

----------

условие

{

условие

{

действие

}

пауза на 10 сек

и по новой....

----------

условие

{

условие

{

действие

}

sleep (10*1000) // пауза на 10 сек

и по новой....
rescuer-net
50
rescuer-net 2013.08.12 10:56  
СПАСИБО ВСЕ ОГРОМНОЕ!!!!!!!!
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий