专家: 做货币对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:


检查指标名称--它试图加载带空格的 "SpyControl panel MCM",而上传的是带下划线的 "spy_control_panel_mcm"。

 
Lizar:
如果没有日志和代码,很难理解为什么无法创建指标,尤其是在一切正常的情况下。再检查一下间谍程序的路径,也许间谍程序的路径有误或类似的问题。
感谢您的帮助,Renat 说得没错,在上传到 mql5.com 服务器的过程中,文件中出现了下划线而不是空格,我删除了文件名中的空格,修改了 OnTick(stringsymbol).mqh 中的文件名,并将其发送检查,等待结果....。
 
Olegts:
感谢您的帮助,Renat 是对的,在上传到服务器 mql5.com 时,文件中的下划线而不是空格,我删除了文件名中的空格,在 OnTick(string symbol).mqh 中更正了文件名,并将其发送检查,等待结果....。
有了。
 
Lizar:
成功了
没有错误!非常感谢你提供了多货币模式,因为我一直在为 OnTimer() 而苦恼。我不知道空格的问题出现在哪里,是在我的 Opera 还是在服务器上,但 Renat 很有眼光,他发现了其中的区别!
 
Olegts:
没有错误!非常感谢你的多货币模式,因为我一直在为 OnTimer() 问题而苦恼。我不知道空格的问题出现在哪里,是我的 Opera 还是服务器上的问题,但 Renat 很有眼光--他发现了不同之处!
不客气。我也喜欢这种工作方式。
 
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 完全可以在测试器中调用。

该网站使用cookies。了解有关我们Cookies政策的更多信息。