欢迎访问 外汇EA下载与MT4/MT5自动交易资源 - 聚合外汇EA、黄金EA、量化交易工具与自动化交易实战内容。
登录 注册

检查由于夏令时 (DST) 转换而导致的服务器时间变化 - MetaTrader 5 脚本

author emer | 363 人阅读 | 0 人评论 |


不幸的是,我发现有些经纪商对服务器时间有点草率
由于夏令时(DST)而发生变化,这是我没有预料到的,这让我很惊讶。

外汇交易时段恰好为 120 小时:
从周日下午 5:00 开始东部标准时间(北美)或 EST
  至周五下午 5:00美国东部时间。

问题是由于夏令时和冬令时的时间变化而产生的,而夏令时和冬令时并没有改变。
世界不同地区的同一个星期天举行。

例如美国3月的第2个周日和11月的第1个周日会有变化,
这也会影响外汇交易的开始和结束。

欧盟在三月的最后一个星期日(即美国之后)进行更改,并在
十月的最后一个星期日,即美国之前(见上面的时间表)。

这创造了一个过渡时期,其中美国和欧盟有不同的时差
比正常情况晚 5 小时(伦敦)、6 小时(法兰克福,欧洲中部时间)或 7 小时(塞浦路斯,欧洲东部时间)。

在此过渡期间,时差的变化应反映在变化的
外汇交易时段的第一个小时和最后一个小时的时间戳。因此,如果外汇交易时段开始
周一 00:00(EET,MQ 时间),美国更改后,应该提前一小时开始,
即周日 23:00,周五提前一小时结束,即 23:00(或 22:59:59)。

但不幸的是我必须找出答案(通过这个脚本,任何人都可以与他们的经纪人核实)
在 MQ 模拟账户和一些真实经纪商的账户上,第一个小时总是(!)出现
周一 00:00,但最后一个小时,正如预期的那样,
周五 23:00(或 22:59)或提前一小时。这意味着第一个小时
外汇交易时段缺失,交易者或 EA 可以在外汇交易时段对周末事件做出反应。
此外,外汇交易时段的结束不再能够通过简单地添加 120 来确定
到外汇交易时段的第一个小时,例如在周末之前平掉所有头寸。

该脚本现在检查经纪商过去的时间变化并记录所有外汇会话
这显然是不正确(奇数)或不是 120 小时。如果有120个小时
在外汇交易的第一个小时和最后一个小时之间,不会记录任何内容。

最后,脚本打印最后检索到的时间戳、奇数会话数
发现的以及已检查的大致年数。

Leider musste ich feststellen, dass manche Broker bei der
Serverzeitumstellung etwas nachlässig sind, was ich nicht erwartet
hatte und was mich sehr überrascht 帽子。

Die FOREX-Sitzung dauert genau 120 Stunden:
von Sonntag 17:00 Uhr 东部标准时间 (Nordamerika) bzw。东部时间
之二 Freitag 17:00 美国东部时间

Das Problem entsteht durch die Zeitumstellungen auf Sommerzeit und Winterzeit,
死于世界上最密集的地区。

Die USA stellen beispielsweise am 2. Sonntag im März und am 1. Sonntag im October 嗯,
是外汇交易蜂拥而至的开始和结束。

欧盟将在三月之夜举行,也将在美国举行
letzten Sonntag im Oktober,也来自美国,嗯(siehe obige 时间线)。

在美国和欧盟中,Dadurch entsteht eine Übergangszeit
时间差异与正常差异 5
Stunden(伦敦)、6 Stunden(法兰克福,MEZ)或 7 Stunden(Zypern,EET)。

In dieser Zwischenzeit sollte sich diese änderung der Zeitdifferenz in den
请注意外汇交易的时间和范围。
Wenn die FOREX-Sitzung 也在 Montag um 00:00 (EET, MQ-Zeit) beginnt, sollte sie
nach der änderung in den USA eine Stunde früher beginnen,也是周日 23:00 Uhr,
und am Freitag eine Stunde früher enden,也是 um 23:00 Uhr(或 22:59:59 Uhr)。

Aber leider musste ich feststellen (und mit diesem Script kann das jeder bei seinem
Broker überprüfen)、dass auf einem MQ Demokonto 和 auf Konten einiger echter Broker
die erste Stunde immer(!) am Montag um 00:00 erscheint, die letzte Stunde aber erwartungsgemäß
am Freitag um 23:00 (bzw. 22:59) oder eine Stunde früher。 Damit Fehlt die erste Stunde
外汇交易时段,在 EA 的处理程序中,我们将介绍有关 EA 的信息。
Auch kann das Ende der FOREX Session nicht mehr badurch bestimmt werden, indem einfach120 zur
外汇交易时段的 ersten Stunde hinzuaddiert wird, um z.B. Alle Positionen vor dem Wochenende zu schließen。

经纪商在交易过程中的脚本
FOREX Sessions mit,die offensichtlich falsch (odd) oder nicht 120 Stunden sind。温茨维申
之前和之后,FOREX-Session 120 Stunden liegen,erfolgt kein Ausdruck im Log。

Am Ende druckt das Skript den zuletzt abgerufenen Zeitstempel, die Anzahl der gefundenen
请注意本年度的情况和情况。


附件下载

📎 test_weekenddata.mq5 (26.73 KB)

Source: MQL5 #55056

🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录