锦标赛终点站的时间 - 页 6

 

Yedelkin:


但在这样做时,我将不得不接受三种类型的风险。

- 导致报价实际上在不符合GMT+1时区的时间到达的风险。

- 报价中显示的时间实际上不支持夏令时的风险。

- 在10月28日之外的其他时间段内,不实施回到冬令时的风险。


这正是我所说的!

好了,这个讨论似乎已经有了结论,因为组织者的主要回应是, 2012年10月28日之前将采用GMT+2,10月28日之后采用GMT+1

我对历史数据的问题不再感兴趣,因为我只是在EA中考虑到了这些变化。

 

试图用 历史数据上的 函数来确定时间。

Print("GMT=",TimeGMT());
Print("Current=",TimeCurrent());
Print("Ofset=",TimeGMTOffset());
Print("Local=",TimeLocal());

所有显示相同的时间=TimeCurrent(); Ofset=0。

你能告诉我,也许我做错了什么?

如果我做的一切都对,那么在测试时如何使用这些函数?

 
autoforex:

试图用 历史数据上的 函数来确定时间。

所有显示相同的时间=TimeCurrent(); Ofset=0。

你能告诉我,如果我做错了什么吗?

是的,这是正确的。见"MetaTrader 5中的测试 基础","在测试器中模拟时间 "一节。 都显示相同的时间=TimeGMT()。
 
autoforex 如果我做的一切都对,那么在测试时如何使用这些函数?
这只是一个重复同样建议的理由:在特定时间段交易时,建议从TimeGMT()开始。通过这种方式,你将达到昨天提到的 "普遍性":)
 

亲爱的罗什...我不明白为什么10月28日是否会转为冬令时 这么难回答?

不是每个人都是超级程序员,可以通过µl!!!!,进行核聚变。(大部分语言都在屏幕的另一边)。

这是一个关于询问!!!!!!!!!!! 的论坛。(w.m.)

 
Yedelkin:

但我如何进行修改呢?

MqlDateTime time;
TimeGMT(time);
//Плюс поправка на летнее время, если торговая деятельность завязана на таймзону с наличием летнего времени
 
Yedelkin:
是的,这是对的。见文章"MetaTrader 5中的测试基础","测试器中的时间模拟 "一节。 都显示相同的时间=TimeGMT()。

是的,谢谢你,我看到了。基本上就是这样了。

 
Yedelkin:
这只是一个不断重复相同建议的理由:在面向某些时区的交易中,你应该使用TimeGMT()。通过这种方式,你将获得昨天提到的 "普遍性":)

在交易中,是的,但在测试中呢?

我如何知道夏令时 在测试中是否已经改变?事实证明,你不能?????

 
autoforex:

在交易中,是的,但在测试中呢?

我如何知道夏令时在测试中是否已经改变?事实证明,没有办法?????。

而且在测试中也是如此。自己判断。如果我们从格林尼治标准时间开始,我们必须假设这个时区在一年中保持不变。毕竟,所有其他时区,如果他们有夏令时,就会在格林尼治标准时间上增加一个小时。这意味着在GMT战术方向上,你必须监测所需的时区是否在夏/冬令时。也就是说,代码必须已经包含了对所需时区的日光节约时间的发生/结束的检查。这些检查将在测试器中发挥作用。

当然,如果历史上的报价是以GMT时间存储的,这也是真的,但这个问题甚至还没有出现 :/

 
maryan.dirtyn:

但我如何进行修改呢?

检查条件:"在下一次报价时,格林尼治标准时间的当前时间 大于你需要的日期(28.10.12)"。如果条件满足,那么进一步测试交易条件时应考虑必要的时区是冬季时间(例如,GMT+1),如果条件不满足 - 考虑夏季时间(在继续的例子,GMT+2)。像这样。
Документация по MQL5: Дата и время / TimeCurrent
Документация по MQL5: Дата и время / TimeCurrent
  • www.mql5.com
Дата и время / TimeCurrent - Документация по MQL5