Советники: Мультивалютный обработчик событий OnTick(string symbol) - страница 2

 
2011.08.24 12:40

1. Copy
   indicators\spy_control_panel_mcm.ex5 ok
   indicators\ds.ex5 ok
   include\ontick(string_symbol).mqh ok
   include\ctrade.mqh ok
   experts\atcrollback.ex5 ok

2. Compile

3. Configuration
   atcrollback on EURUSD:M12 every tick 2011.01.01-2011.08.01


4. Start
   finished in 0 min 9 sec


5. Statistics
loading of Spy Control panel MCM EURUSD,M12 failed
2011.01.01 00:00:00   expert removed because custom indicator 'Spy Control panel MCM' cannot load [4802]
tester stopped because OnInit critical error
   5 kb of log files
   there are no trading operations


4 errors

У меня все работает, выложил на проверку на чемп. вот такие дела:(
я так понял шпион не запустился, в чем может быть причина? там обязательно mq5 выкладывать, или ex5 достаточно?

 
Olegts:


Что-то трудно понять без лога и кода почему индикатор не возможно создать, тем более у вас всё работает. Перепроверте путь к шпионам, может путь не тот указан к шпиону или еще что-то подобное. 
 
Olegts:


Проверьте имя индикатора - загружаться пытается "Spy Control panel MCM" с пробелами, а закачан "spy_control_panel_mcm" с подчеркиваниями.

 
Lizar:
Что-то трудно понять без лога и кода почему индикатор не возможно создать, тем более у вас всё работает. Перепроверте путь к шпионам, может путь не тот указан к шпиону или еще что-то подобное. 
Спасибо за помощь, Renat прав, в процессе загрузки на сервер mql5.com у файла появились подчеркивания вместо пробелов, убрал пробелы в названии, в  OnTick(string symbol).mqh подправил название, отправил на проверку, жду результата...
 
Olegts:
Спасибо за помощь, Renat прав, в процессе загрузки на сервер mql5.com у файла появились подчеркивания вместо пробелов, убрал пробелы в названии, в  OnTick(string symbol).mqh подправил название, отправил на проверку, жду результата...
Понял.
 
Lizar:
Понял.
No errors! Спасибо огромное за мультивалютный режим, а то все с OnTimer() мучался. Уж не знаю где проблема с пробелами проявилась, то ли в моей Opera, то ли на сервере, у  Рената глаз-алмаз - нашел отличия!
 
Olegts:
No errors! Спасибо огромное за мультивалютный режим, а то все с OnTimer() мучался. Уж не знаю где проблема с пробелами проявилась, то ли в моей Opera, то ли на сервере, у  Рената глаз-алмаз - нашел отличия!
Пожалуйста. Мне тоже нравится эта схема работы.
 
Lizar:
Пожалуйста. Мне тоже нравится эта схема работы.
Константин, здравствуйте. Если у Вас найдётся немного свободного времени, зайдите, пожалуйста, вот в эту тему - Результаты тестирования мультивалютных экспертов. Ваше слово было бы весьма кстати. Спасибо за Ваши труды.
 
tol64:
Константин, здравствуйте. Если у Вас найдётся немного свободного времени, зайдите, пожалуйста, вот в эту тему - Результаты тестирования мультивалютных экспертов. Ваше слово было бы весьма кстати. Спасибо за Ваши труды.
Ладно. Посмотрю.
 

Код с статье устарел. Полдня потерял в борьбе с ветряными мельницами. В частности:

void EventCustom(ENUM_CHART_EVENT_SYMBOL event,double price)
  {
   if(!testing) EventChartCustom(chart_id,custom_event_id,(long)event,price,_Symbol);
   else
     {
      if(GlobalVariableSet(_Symbol+"_custom_id",custom_event_id)==0) return;
      if(GlobalVariableSet(_Symbol+"_event",event)==0) return;
      if(GlobalVariableSet(_Symbol+"_price",price)==0) return;
      GlobalVariableSet(_Symbol+"_flag",2);
     }
   return;
  }



void OnTick()
  {
   if(_testing_)
     {
      for(int i=0;i<_symbols_total_;i++)
        {
         string __symbol__=_symbol_[i];
         if(MathAbs(GlobalVariableGet(__symbol__+"_flag")-2)<0.1)
           {
            GlobalVariableSet(__symbol__+"_flag",1);
            OnTick(__symbol__);
           }
        }   
     }   
  }



всё это "шаманство" с глобальными переменными - лишнее. OnCalculate распрекрассно вызывается внутри тестера.