任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 557 1...550551552553554555556557558559560561562563564...1178 新评论 Alexey Viktorov 2014.03.22 14:39 #5561 GSB:我不反对这些原则,但这个人想在测试器中运行专家顾问,所以你的选择不适合他。使用我的变体,它在现实中和测试器中都能工作,但在他们做出自动计算夏令时的功能之前,为今年定义过渡时间,如 从2013年3月到2014年11月,将正常工作并经过测试。根据你的经纪人 ,设置班次。 我不会去看哪里写着时间是在测试器中产生的,你自己知道。但在帮助中,它特别说到 var2=StrToTime("17:35"); // возврат текущей даты с указанным временем 而对于StringToTime(),它并没有说任何具体的 内容。 唯一需要考虑的是(DC服务器的)测试人员的时间。而相应地,在测试时,你应该有一个相同类型的账户的历史,这个猫头鹰将在这个账户上工作。 Sergey Gustaytis 2014.03.22 14:56 #5562 AlexeyVik: 我不会去查哪里说时间是在测试器中产生的,你自己知道。但在帮助中,它特别说到而对于StringToTime(),它并没有说任何具体的 内容。唯一需要考虑的是(DC服务器的)测试者的时间。因此,在测试时,你需要有一个相同类型的账户的历史,这个猫头鹰将在这个账户上工作。 。 Alexey,我对StrToTime()函数没有任何疑问,问题是不同的。它将返回正确的时间,但今天的21小时是3月9日的22小时。这就是为什么我写的函数能正确考虑到经纪人的夏令时。 没有它,如果一个专家顾问按照某种时间安排工作,就不可能进行测试。所有的东西都转移了一个小时。在真实交易中没有问题,但在测试器中却有问题。我一直在要求开发人员启用计算时间转移的功能,已经有很长时间了。他们已经实现了TimeGMT(),但它与当地时间 和计算机的时区相联系。而且你必须要有一个制动装置的转变。而且他们的夏令时与我们不同。经纪人在11月的第一个星期日,3月的第二个星期日和俄罗斯(如果将......)10月的最后一个星期日,3月的最后一个星期日转变。所以你现在必须自己写函数。 [删除] 2014.03.22 14:56 #5563 GSB: 我不反对这些原则,但这个人想在测试器中运行专家顾问,所以你的选择不适合他。 使用我的变体,它将在实际和测试器中工作,但直到他们没有做一个功能来自动考虑到夏令时,定义过渡到今年的时间,如 从2013年3月到2014年11月将正常工作并测试正常。根据你的经纪人设置班次 好的,谢谢你,我会让你知道结果的。 Sergey Gustaytis 2014.03.22 20:07 #5564 有必要在图表上查看<h4>当前周五和3月8日之前的周五的最后一个条形图的时间。如果这些时间是一致的,那么hrd值是恒定的,不取决于冬夏时间的变化,那么一切都很简单,在测试过程中,无论冬夏时间如何变化,都会正确工作。 datetime tc=TimeCurrent(); datetime te=StrToTime("20:45"); // время конца сессии по котировкам брокера минус 15 минут или сколько вам надо до конца сессии if(TimeDayOfWeek(tc)==5 && tc>te) { CloseAll(); } // закрытие пятницу позже указанного времени 但如果这两个时间是不同的(相差1小时),那么正如我之前写的。 [Deleted] 2014.03.22 20:41 #5565 GSB: 我们应该在M1图表上检查当前周五和3月8日之前的周五的最后一根柱子的时间。如果这些时间重合,那么hrd值是恒定的,不取决于冬夏时间的转换,那么一切都很简单,在测试期间将正确工作,包括不考虑冬夏时间的转换 但如果这两个时间是不同的(相差1小时),那么正如我之前写的。 为什么代码中有15分钟的时间,也就是说,你想说在会议结束前15分钟,投资组合开始转移? 我当然注意到在fresch的mt4上有这样的时刻,我看到一些货币对的良好水平。 [删除] 2014.03.23 06:50 #5566 例如,我想在会议结束前1分钟关闭交易,因为当一个订单被留在周末时,周一的开盘价 可能会跳升100,或200,甚至更多点。 我还没有测试,今天晚些时候我会测试的。 [删除] 2014.03.23 08:10 #5567 如果经纪人在俄罗斯,而我在乌克兰,那么就没有夏令时或冬令时的转换,那么对我来说也没有服务器时间的转换,只有当地时间? Виктор 2014.03.23 08:48 #5568 GSB: 那么这在测试器中不应该工作。 这些函数是基于当前时间的,我在上面写的东西会起作用,因为TimeCurrent()和TimeDayOfWeek()工作正常。你只需要添加切换到夏季和冬季时间的功能,即参数hrd。切换通常是根据美国夏令时的时间进行的(11月的第一个星期日,3月的第二个星期日),但有些经纪公司不进行切换,所以你应该使用你的 在不涉及假设的情况下,我只是在策略测试器中运行专家顾问,并查看了它。它的工作和关闭。 Sergey Gustaytis 2014.03.23 09:19 #5569 belck: 如果我的经纪人在俄罗斯,而我在乌克兰,那么就没有夏令时或冬令时的变化,那么原来我的经纪人没有夏令时的转换,只有当地时间? 没有必要比较经纪人的时间和你的当地时间。无论你如何移动你的手表,图表上的经纪人会议的结束时间都不会改变。问题是关于在3月8日至9日过渡到经纪人的夏季 报价,有些经纪人这样做,有些则不这样做。 我写道--看看3月9日之前和之后的最后一个条形时间的图表,如果相同则使用最后一个简单的选项,如果它们相差一个小时则使用更复杂的选项。 Sergey Gustaytis 2014.03.23 10:02 #5570 伙计们,向你们致敬 :)DayOfWeek() TimeDayOfWeek(datetimedate)和类似的公式在测试器中都能正确工作。测试仪对其处理的tick时间进行建模,这就是为什么在DayOfWeek()中采用最后已知的服务器时间 也能工作。当然,更正确的做法是使用TimeDayOfWeek(dt1)。 总的来说,一切都很正确,唯一剩下的就是考虑到经纪人向冬夏两季过渡的时间,如果有的话,就像我上面写的。 1...550551552553554555556557558559560561562563564...1178 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我不反对这些原则,但这个人想在测试器中运行专家顾问,所以你的选择不适合他。
使用我的变体,它在现实中和测试器中都能工作,但在他们做出自动计算夏令时的功能之前,为今年定义过渡时间,如
从2013年3月到2014年11月,将正常工作并经过测试。根据你的经纪人,设置班次。
我不会去看哪里写着时间是在测试器中产生的,你自己知道。但在帮助中,它特别说到
而对于StringToTime(),它并没有说任何具体的 内容。
唯一需要考虑的是(DC服务器的)测试人员的时间。而相应地,在测试时,你应该有一个相同类型的账户的历史,这个猫头鹰将在这个账户上工作。
我不会去查哪里说时间是在测试器中产生的,你自己知道。但在帮助中,它特别说到
而对于StringToTime(),它并没有说任何具体的 内容。
唯一需要考虑的是(DC服务器的)测试者的时间。因此,在测试时,你需要有一个相同类型的账户的历史,这个猫头鹰将在这个账户上工作。
。
Alexey,我对StrToTime()函数没有任何疑问,问题是不同的。它将返回正确的时间,但今天的21小时是3月9日的22小时。这就是为什么我写的函数能正确考虑到经纪人的夏令时。
没有它,如果一个专家顾问按照某种时间安排工作,就不可能进行测试。所有的东西都转移了一个小时。在真实交易中没有问题,但在测试器中却有问题。我一直在要求开发人员启用计算时间转移的功能,已经有很长时间了。他们已经实现了TimeGMT(),但它与当地时间 和计算机的时区相联系。而且你必须要有一个制动装置的转变。而且他们的夏令时与我们不同。经纪人在11月的第一个星期日,3月的第二个星期日和俄罗斯(如果将......)10月的最后一个星期日,3月的最后一个星期日转变。所以你现在必须自己写函数。
我不反对这些原则,但这个人想在测试器中运行专家顾问,所以你的选择不适合他。
使用我的变体,它将在实际和测试器中工作,但直到他们没有做一个功能来自动考虑到夏令时,定义过渡到今年的时间,如
从2013年3月到2014年11月将正常工作并测试正常。根据你的经纪人设置班次好的,谢谢你,我会让你知道结果的。
有必要在图表上查看<h4>当前周五和3月8日之前的周五的最后一个条形图的时间。如果这些时间是一致的,那么hrd值是恒定的,不取决于冬夏时间的变化,那么一切都很简单,在测试过程中,无论冬夏时间如何变化,都会正确工作。
但如果这两个时间是不同的(相差1小时),那么正如我之前写的。
我们应该在M1图表上检查当前周五和3月8日之前的周五的最后一根柱子的时间。如果这些时间重合,那么hrd值是恒定的,不取决于冬夏时间的转换,那么一切都很简单,在测试期间将正确工作,包括不考虑冬夏时间的转换
但如果这两个时间是不同的(相差1小时),那么正如我之前写的。
为什么代码中有15分钟的时间,也就是说,你想说在会议结束前15分钟,投资组合开始转移? 我当然注意到在fresch的mt4上有这样的时刻,我看到一些货币对的良好水平。
例如,我想在会议结束前1分钟关闭交易,因为当一个订单被留在周末时,周一的开盘价 可能会跳升100,或200,甚至更多点。
我还没有测试,今天晚些时候我会测试的。
那么这在测试器中不应该工作。
这些函数是基于当前时间的,我在上面写的东西会起作用,因为TimeCurrent()和TimeDayOfWeek()工作正常。你只需要添加切换到夏季和冬季时间的功能,即参数hrd。切换通常是根据美国夏令时的时间进行的(11月的第一个星期日,3月的第二个星期日),但有些经纪公司不进行切换,所以你应该使用你的
如果我的经纪人在俄罗斯,而我在乌克兰,那么就没有夏令时或冬令时的变化,那么原来我的经纪人没有夏令时的转换,只有当地时间?
没有必要比较经纪人的时间和你的当地时间。无论你如何移动你的手表,图表上的经纪人会议的结束时间都不会改变。问题是关于在3月8日至9日过渡到经纪人的夏季 报价,有些经纪人这样做,有些则不这样做。
我写道--看看3月9日之前和之后的最后一个条形时间的图表,如果相同则使用最后一个简单的选项,如果它们相差一个小时则使用更复杂的选项。
伙计们,向你们致敬 :)DayOfWeek() TimeDayOfWeek(datetimedate)和类似的公式在测试器中都能正确工作。测试仪对其处理的tick时间进行建模,这就是为什么在DayOfWeek()中采用最后已知的服务器时间 也能工作。当然,更正确的做法是使用TimeDayOfWeek(dt1)。
总的来说,一切都很正确,唯一剩下的就是考虑到经纪人向冬夏两季过渡的时间,如果有的话,就像我上面写的。