错误、漏洞、问题 - 页 2321 1...231423152316231723182319232023212322232323242325232623272328...3184 新评论 fxsaber 2018.11.09 15:34 #23201 我明白,你可以自己检查... 在测试器中,谁的事件先产生,是滴答还是定时器? 例如,定时器应在12:00:00.000时被调用。而且有一个同样时间的勾。哪个先被触发,是OnTimer还是OnTick? Pavel Kozlov 2018.11.09 16:13 #23202 Vladimir Pastushak: 我的收藏夹里 有几百个主题,都被清空了。在我不知情的情况下。你好! 请再次检查。你的最爱就在那里。 Slava 2018.11.09 16:18 #23203 fxsaber:我明白,你可以自己检查... 在测试器中,谁的事件先产生,是滴答还是定时器? 例如,定时器应在12:00:00.000时被调用。而且有一个同样时间的勾。哪个先被触发,是OnTimer还是OnTick?定时器先行 fxsaber 2018.11.09 16:19 #23204 Slava:首先是计时器谢谢你,好办法。 Vladimir Pastushak 2018.11.09 18:27 #23205 Pavel Kozlov:你好! 请再次检查。你喜欢的主题已经到位。谢谢你,一切都回来了。 [删除] 2018.11.10 22:44 #23206 关于交易、自动交易系统和交易策略测试的论坛 不同的结果。如何?为什么?该相信什么? Sergey Tabolin, 2018.11.10 12:15 运行一个完整的蛮力运行。文件正在被写入。而所有的时间都是不同的长度。也许是因为TF,但TF不应该以任何方式影响结果!对于进一步的iniit,什么都不去! 如何,为什么?或者是测试器的一个小故障? //+------------------------------------------------------------------+ //| KrL_write_func.mq5 | //| Copyright 2018, Tabolin S.N. | //| https://www.mql5.com/ru/users/vip.avos | //+------------------------------------------------------------------+ #property copyright "Copyright 2018, Tabolin S.N." #property link "https://www.mql5.com/ru/users/vip.avos" #property version "1.00" //+------------------------------------------------------------------+ typedef void(*TFunc)(void); TFunc entry_func[7]; //+------------------------------------------------------------------+ enum f_entry { no_f, // не использовать reb, // отскок brd1, // пробой 1 brd2, // пробой 2 lim, // лимитный lw, // недельный cust, // пользовательский }; input f_entry func_entry_1 = reb; // 1-я функция условий входа input f_entry func_entry_2 = brd1; // 2-я функция условий входа input f_entry func_entry_3 = brd2; // 3-я функция условий входа input f_entry func_entry_4 = lim; // 4-я функция условий входа input f_entry func_entry_5 = lw; // 5-я функция условий входа input f_entry func_entry_6 = cust; // 6-я функция условий входа //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { if(paramIncorrect()) return(INIT_PARAMETERS_INCORRECT); else { string filename = "KR\\func.txt"; int filehandle = FileOpen(filename,FILE_WRITE|FILE_READ|FILE_TXT|FILE_ANSI|FILE_COMMON); if(filehandle != INVALID_HANDLE) { FileSeek(filehandle,0,SEEK_END); string str = string(func_entry_1)+","+string(func_entry_2)+","+string(func_entry_3)+","+string(func_entry_4)+","+string(func_entry_5)+","+string(func_entry_6)+"\n"; if(FileWriteString(filehandle,str) == 0) Print("Ошибка записи файла"); FileClose(filehandle); } return(INIT_FAILED); } return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { //--- } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { } //+------------------------------------------------------------------+ bool paramIncorrect() { bool ret_func = false; if(func_entry_1 == no_f && func_entry_2 == no_f && func_entry_3 == no_f && func_entry_4 == no_f && func_entry_5 == no_f && func_entry_6 == no_f) return(true); //--- Порядок следования if(func_entry_1 == no_f) ret_func = true; else if(func_entry_2 == no_f && (func_entry_3 != no_f || func_entry_4 != no_f || func_entry_5 != no_f || func_entry_6 != no_f)) ret_func = true; else if(func_entry_3 == no_f && (func_entry_4 != no_f || func_entry_5 != no_f || func_entry_6 != no_f)) ret_func = true; else if(func_entry_4 == no_f && (func_entry_5 != no_f || func_entry_6 != no_f)) ret_func = true; else if(func_entry_5 == no_f && func_entry_6 != no_f) ret_func = true; //--- Повторяемость if(func_entry_1 == reb && (func_entry_2 == reb || func_entry_3 == reb || func_entry_4 == reb || func_entry_5 == reb || func_entry_6 == reb)) ret_func = true; if(func_entry_1 == brd1 && (func_entry_2 == brd1 || func_entry_3 == brd1 || func_entry_4 == brd1 || func_entry_5 == brd1 || func_entry_6 == brd1)) ret_func = true; if(func_entry_1 == brd2 && (func_entry_2 == brd2 || func_entry_3 == brd2 || func_entry_4 == brd2 || func_entry_5 == brd2 || func_entry_6 == brd2)) ret_func = true; if(func_entry_1 == lim && (func_entry_2 == lim || func_entry_3 == lim || func_entry_4 == lim || func_entry_5 == lim || func_entry_6 == lim)) ret_func = true; if(func_entry_1 == lw && (func_entry_2 == lw || func_entry_3 == lw || func_entry_4 == lw || func_entry_5 == lw || func_entry_6 == lw)) ret_func = true; if(func_entry_1 == cust && (func_entry_2 == cust || func_entry_3 == cust || func_entry_4 == cust || func_entry_5 == cust || func_entry_6 == cust)) ret_func = true; if(func_entry_2 == reb && (func_entry_3 == reb || func_entry_4 == reb || func_entry_5 == reb || func_entry_6 == reb)) ret_func = true; if(func_entry_2 == brd1 && (func_entry_3 == brd1 || func_entry_4 == brd1 || func_entry_5 == brd1 || func_entry_6 == brd1)) ret_func = true; if(func_entry_2 == brd2 && (func_entry_3 == brd2 || func_entry_4 == brd2 || func_entry_5 == brd2 || func_entry_6 == brd2)) ret_func = true; if(func_entry_2 == lim && (func_entry_3 == lim || func_entry_4 == lim || func_entry_5 == lim || func_entry_6 == lim)) ret_func = true; if(func_entry_2 == lw && (func_entry_3 == lw || func_entry_4 == lw || func_entry_5 == lw || func_entry_6 == lw)) ret_func = true; if(func_entry_2 == cust && (func_entry_3 == cust || func_entry_4 == cust || func_entry_5 == cust || func_entry_6 == cust)) ret_func = true; if(func_entry_3 == reb && (func_entry_4 == reb || func_entry_5 == reb || func_entry_6 == reb)) ret_func = true; if(func_entry_3 == brd1 && (func_entry_4 == brd1 || func_entry_5 == brd1 || func_entry_6 == brd1)) ret_func = true; if(func_entry_3 == brd2 && (func_entry_4 == brd2 || func_entry_5 == brd2 || func_entry_6 == brd2)) ret_func = true; if(func_entry_3 == lim && (func_entry_4 == lim || func_entry_5 == lim || func_entry_6 == lim)) ret_func = true; if(func_entry_3 == lw && (func_entry_4 == lw || func_entry_5 == lw || func_entry_6 == lw)) ret_func = true; if(func_entry_3 == cust && (func_entry_4 == cust || func_entry_5 == cust || func_entry_6 == cust)) ret_func = true; if(func_entry_4 == reb && (func_entry_5 == reb || func_entry_6 == reb)) ret_func = true; if(func_entry_4 == brd1 && (func_entry_5 == brd1 || func_entry_6 == brd1)) ret_func = true; if(func_entry_4 == brd2 && (func_entry_5 == brd2 || func_entry_6 == brd2)) ret_func = true; if(func_entry_4 == lim && (func_entry_5 == lim || func_entry_6 == lim)) ret_func = true; if(func_entry_4 == lw && (func_entry_5 == lw || func_entry_6 == lw)) ret_func = true; if(func_entry_4 == cust && (func_entry_5 == cust || func_entry_6 == cust)) ret_func = true; if(func_entry_5 == reb && func_entry_6 == reb) ret_func = true; if(func_entry_5 == brd1 && func_entry_6 == brd1) ret_func = true; if(func_entry_5 == brd2 && func_entry_6 == brd2) ret_func = true; if(func_entry_5 == lim && func_entry_6 == lim) ret_func = true; if(func_entry_5 == lw && func_entry_6 == lw) ret_func = true; if(func_entry_5 == cust && func_entry_6 == cust) ret_func = true; if(ret_func) return(true); return(false); } fxsaber 2018.11.10 23:01 #23207 Сергей Таболин:缓存是有效的。 oEdwardo 2018.11.11 00:09 #23208 你好! 我正面临着MT5中的 "固定图表位置 "滑块不能正常工作的问题,例如,当我从周线图切换到日线图时,它移动了大约280天。 起初,终端安装 后一切正常,但后来我从旧的配置文件中加载,它开始出现故障。而这个问题是老问题。 我在此附上一个有小规模示范的视频... 附加的文件: test.exe.zip 1300 kb Maxim Dmitrievsky 2018.11.11 04:30 #23209 在这种情况下,警告可以被删除吗?以便不增加变量。或者在Mql中,它根本不工作? private: int number_of_features; public: CBandit(int number_of_features) { this.number_of_features = number_of_features; } 声明'number_of_features'时隐藏了第24行的成员声明 Igor Makanu 2018.11.11 05:16 #23210 Maxim Dmitrievsky:在这种情况下,警告可以被删除吗?以便不增加变量。或者在Mql中,它根本不工作? number_of_features'的声明隐藏了第24行的成员声明你已经 "乘 "了这个变量,所以在这里,CBandit(int number_of_features) 这个变量int number_of_features已经被创建了,或者说不是一个变量,而是这个变量值 的一个拷贝 ,所以写CBandit(int number_of_features_my)并把它留在那里,因为什么也不会改变,而编译器却故意给出一个警告,因为因为通过描述CBandit(int number_of_features),你已经关闭了范围 私下里。int number_of_features; 也许你应该在CBandit()方法中得到这个int number_of_features;,也可能没有,编译器一直在跟踪它。 1...231423152316231723182319232023212322232323242325232623272328...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我明白,你可以自己检查...
在测试器中,谁的事件先产生,是滴答还是定时器?
例如,定时器应在12:00:00.000时被调用。而且有一个同样时间的勾。哪个先被触发,是OnTimer还是OnTick?
我的收藏夹里 有几百个主题,都被清空了。在我不知情的情况下。
你好!
请再次检查。你的最爱就在那里。
我明白,你可以自己检查...
在测试器中,谁的事件先产生,是滴答还是定时器?
例如,定时器应在12:00:00.000时被调用。而且有一个同样时间的勾。哪个先被触发,是OnTimer还是OnTick?
定时器先行
首先是计时器
谢谢你,好办法。
你好!
请再次检查。你喜欢的主题已经到位。
谢谢你,一切都回来了。
关于交易、自动交易系统和交易策略测试的论坛
不同的结果。如何?为什么?该相信什么?
Sergey Tabolin, 2018.11.10 12:15
运行一个完整的蛮力运行。文件正在被写入。而所有的时间都是不同的长度。也许是因为TF,但TF不应该以任何方式影响结果!对于进一步的iniit,什么都不去!
如何,为什么?或者是测试器的一个小故障?
缓存是有效的。
你好!
我正面临着MT5中的 "固定图表位置 "滑块不能正常工作的问题,例如,当我从周线图切换到日线图时,它移动了大约280天。
起初,终端安装 后一切正常,但后来我从旧的配置文件中加载,它开始出现故障。而这个问题是老问题。
我在此附上一个有小规模示范的视频...
在这种情况下,警告可以被删除吗?以便不增加变量。或者在Mql中,它根本不工作?
声明'number_of_features'时隐藏了第24行的成员声明
在这种情况下,警告可以被删除吗?以便不增加变量。或者在Mql中,它根本不工作?
number_of_features'的声明隐藏了第24行的成员声明
你已经 "乘 "了这个变量,所以在这里,CBandit(int number_of_features) 这个变量int number_of_features已经被创建了,或者说不是一个变量,而是这个变量值 的一个拷贝 ,所以写CBandit(int number_of_features_my)并把它留在那里,因为什么也不会改变,而编译器却故意给出一个警告,因为因为通过描述CBandit(int number_of_features),你已经关闭了范围
私下里。
int number_of_features;
也许你应该在CBandit()方法中得到这个int number_of_features;,也可能没有,编译器一直在跟踪它。