错误、漏洞、问题 - 页 343 1...336337338339340341342343344345346347348349350...3184 新评论 Renat Fatkhullin 2011.03.20 20:08 #3421 Kairoser:下午好!在升级到420版本后,我开始测试我的EA,发现它由于某种原因开始 "丢失"。我分析了我的交易,发现止损是在不存在的价格上触发的。例如,我在欧元兑美元上设置了1.06520的止损,但它是有效的,尽管最大的价格 是1.05920。当我进一步看时,我看到很多这样的交易。获利是通过同样的原则触发的(在不存在的价格)--三角洲是相同的--600点。在图表上的测试器中,上下箭头 "挂 "在空中,离条状物很远。附上一张截图。 请在MetaQuotes-Demo上运行测试。Alpari有一个公然错误的(在传播)图表历史。 Александр Михеев 2011.03.20 20:50 #3422 Renat: 请在MetaQuotes-Demo上运行测试。Alpari有一个公然错误的(在传播)图表历史。 是的,确实如此,在MetaQuotes-Demo服务器上,一切工作正常。谢谢你的帮助。 Alexey Klenov 2011.03.21 12:26 #3423 有几个问题值得关注。1.如果在策略测试器中使用了指标,系统是如何工作的?首先,所有的指标都要计算手柄,然后才启动OnTick?2.如果是的话,最好是先启动OnTick,然后运行一个命令来计算所附的指标。因此,例如我不需要在每个五位数的刻度上计算指标,而只需要在四位数上计算。当我启动OnTick时,我检查当前和之前的价格并决定是否开始计算指标。因为如果有很多,而且相当 "重",它们在优化模式下会消耗资源......虽然,你可以尝试在ontick中创建句柄,并在结束时删除指标,在下一次ontick开始时(如果有必要)再次创建句柄--目前还不清楚这是否能提高性能... Документация по MQL5: Основы языка / Функции / Функции обработки событий www.mql5.com Основы языка / Функции / Функции обработки событий - Документация по MQL5 Rashid Umarov 2011.03.21 13:06 #3424 olyakish: 有几个问题值得关注。1.如果在策略测试器中 使用了指标,系统是如何工作的?首先,所有的指标都要计算手柄,然后才运行OnTick?是的,更普遍的答案是--所有的指标值都是在每次调用事件处理程序之前计算的。控件计时器在图表事件中,以此类推 Rashid Umarov 2011.03.21 13:08 #3425 olyakish: 2.如果是,那么先运行OnTick,然后用这个命令运行所附指标的计算,将是非常有用的。例如,我不需要在每个五位数的刻度上计算指标,而只需要在四位数上计算。当我启动OnTick时,我检查当前和之前的价格并决定是否开始计算指标。因为如果它们有很多,而且相当 "重",它们在优化模式下会吃掉资源......你不能这样做。你可以使用更快的tick生成模式进行测试。分钟柱上的OHLC价格只有被测试时期的公开价格 Alexey Klenov 2011.03.21 14:26 #3426 Rosh:你不能这样做。你可以使用更快的tick生成模式 进行测试。分钟柱上的OHLC价格仅测试期间的开盘价 我知道这些模式和它们的特殊性。我只是想以一种合理(可能是最佳)的方式加快优化。 Sergey Gritsay 2011.03.23 07:15 #3427 帮帮忙,数据转换 功能不想工作,写了一个简单的脚本来测试。Build 420,64位操作系统。void OnStart() { //--- int i=0; bool res=false; string stroka1; string stroka2; string stroka3; string stroka4; string stroka5; datetime buf1; double buf2; double buf3; double buf4; double buf5; int filehandle=FileOpen("56451.csv",FILE_READ|FILE_CSV|FILE_ANSI,',',CP_UTF8); if(filehandle==INVALID_HANDLE)Print("Ошибка № - ",GetLastError()); else { while(!res) { stroka1 = FileReadString(filehandle); stroka2 = FileReadString(filehandle); stroka3 = FileReadString(filehandle); stroka4 = FileReadString(filehandle); stroka5 = FileReadString(filehandle); buf1 = StringToTime(stroka1); buf2 = StringToDouble(stroka2); buf3 = StringToDouble(stroka3); buf4 = StringToDouble(stroka4); buf5 = StringToDouble(stroka5); res=FileIsEnding(filehandle); i++; } FileClose(filehandle); } } //+------------------------------------------------------------------+ 附加的文件: 56451.zip 16 kb Aleksandr Chugunov 2011.03.23 07:33 #3428 sergey1294:帮帮忙,数据转换功能不想工作,写了一个简单的脚本来测试。Build 420,64位操作系统。 在任何阶段摆脱引号.... Sergey Gritsay 2011.03.23 07:39 #3429 AlexSTAL: 摆脱任何阶段的倒装逗号.... 你是如何做到这一点的? Aleksandr Chugunov 2011.03.23 07:45 #3430 sergey1294: 你是如何做到这一点的?要么确保它们最初不在文件中,要么在读取时应用一个额外的函数,例如。string StringWithoutQuotes(string Value) { StringTrimLeft(Value); StringTrimRight(Value); return(StringSubstr(Value, 1, StringLen(Value) - 2)); } .......... stroka1 = StringWithoutQuotes(FileReadString(filehandle)); stroka2 = StringWithoutQuotes(FileReadString(filehandle)); 1...336337338339340341342343344345346347348349350...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
下午好!
在升级到420版本后,我开始测试我的EA,发现它由于某种原因开始 "丢失"。我分析了我的交易,发现止损是在不存在的价格上触发的。例如,我在欧元兑美元上设置了1.06520的止损,但它是有效的,尽管最大的价格 是1.05920。当我进一步看时,我看到很多这样的交易。获利是通过同样的原则触发的(在不存在的价格)--三角洲是相同的--600点。在图表上的测试器中,上下箭头 "挂 "在空中,离条状物很远。
附上一张截图。
请在MetaQuotes-Demo上运行测试。Alpari有一个公然错误的(在传播)图表历史。
有几个问题值得关注。
1.如果在策略测试器中使用了指标,系统是如何工作的?首先,所有的指标都要计算手柄,然后才启动OnTick?
2.如果是的话,最好是先启动OnTick,然后运行一个命令来计算所附的指标。因此,例如我不需要在每个五位数的刻度上计算指标,而只需要在四位数上计算。当我启动OnTick时,我检查当前和之前的价格并决定是否开始计算指标。
因为如果有很多,而且相当 "重",它们在优化模式下会消耗资源......
虽然,你可以尝试在ontick中创建句柄,并在结束时删除指标,在下一次ontick开始时(如果有必要)再次创建句柄--目前还不清楚这是否能提高性能...
有几个问题值得关注。
1.如果在策略测试器中 使用了指标,系统是如何工作的?首先,所有的指标都要计算手柄,然后才运行OnTick?
是的,更普遍的答案是--所有的指标值都是在每次调用事件处理程序之前计算的。
2.如果是,那么先运行OnTick,然后用这个命令运行所附指标的计算,将是非常有用的。例如,我不需要在每个五位数的刻度上计算指标,而只需要在四位数上计算。当我启动OnTick时,我检查当前和之前的价格并决定是否开始计算指标。
因为如果它们有很多,而且相当 "重",它们在优化模式下会吃掉资源......
你不能这样做。你可以使用更快的tick生成模式进行测试。
你不能这样做。你可以使用更快的tick生成模式 进行测试。
帮帮忙,数据转换 功能不想工作,写了一个简单的脚本来测试。Build 420,64位操作系统。
帮帮忙,数据转换功能不想工作,写了一个简单的脚本来测试。Build 420,64位操作系统。
摆脱任何阶段的倒装逗号....
你是如何做到这一点的?
要么确保它们最初不在文件中,要么在读取时应用一个额外的函数,例如。