伺服器時區差異如何讓EA時段過濾器偏移
目錄
結論:時段過濾器必須明確指定「以哪個時鐘為準的幾點」才有意義
在附帶時段過濾器的EA上設定「只在倫敦時間交易」,只要經紀商的伺服器時間有偏差,實際上就會在差了1小時的時段交易。原因大多出在伺服器時間是GMT+2還是GMT+3,以及夏令時間在何時切換。
我們建議,在導入使用時段過濾器的EA之前,先確認「該EA所假設的時鐘」與「自己帳戶的時鐘」是否一致。這種偏移光看畫面很難察覺,只會以績效慢慢變差的形式顯現出來。
📧 免費電子郵件課程(共 8 封)+ 訂閱者專屬 MT5 指標 13 款合集
訂閱後會立即收到訂閱者專屬合集的下載連結,內含本站 13 款 MT5 指標的已編譯檔案(.ex5)、原始碼和使用指南。隨後透過共 8 封郵件介紹外匯自動交易的本質、回測的正確解讀方法和經紀商選擇技巧(前 5 天每天 1 封,之後在訂閱第 7、14、30 天各 1 封)。MQL5 Market 版(首發價,隨銷量分階段漲價)漲價前也會通知您。在本站,只要擁有合作經紀商的真實帳戶,EA 即可免費使用。
※ 嚴格保護隱私。可隨時取消訂閱。
為什麼會偏移
MT5的時間是「伺服器時間」
MT5圖表上顯示的時間,以及EA透過 TimeCurrent() 取得的時間,都是經紀商的伺服器時間,既不是日本時間,也不是GMT。因此,若在EA中寫下「8點〜16點」,指的就是伺服器時間的8點〜16點。
GMT+2/+3會隨夏令時間切換
許多經紀商冬季採用GMT+2,夏季採用GMT+3,目的是讓紐約的17點對齊日線的分界(0點),這種做法會配合美國的夏令時間切換。另一方面,也有業者配合歐洲夏令時間切換、全年固定為GMT+2,或是採用GMT+0。
美國與歐洲的夏令時間起訖日期並不相同。2026年秋季,歐洲在10月25日結束夏令時間,美國則在11月1日結束。這一週內,即使同屬「GMT+2/+3型」的業者,彼此的伺服器時間也會差1小時。春季出現偏移的期間則會稍長一些。
常見的偏移情形
| 情況 | 會發生什麼事 |
|---|---|
| EA假設GMT+2/+3,帳戶為固定GMT+2 | 整個夏季都提早1小時判定 |
| 美國式與歐洲式的切換日不同 | 只在春季與秋季的數週內差1小時 |
| 回測與實際運作使用不同業者 | 在與驗證時不同的時段交易 |
| 以日本時間思考後輸入 | 夏季與冬季和日本時間的時差不同,只有其中一個季節是對的 |
即使只差1小時,若是專攻倫敦開盤前價格波動的EA,就會在開盤前的平靜時段進場。若是用來避開日線分界前後(點差容易擴大)的過濾器,反而會剛好在那個時段交易。
自動校正的思路
方法1:以GMT為基準進行轉換
用 TimeGMT() 取得GMT,並以GMT判定交易時段。即時運作時表現正常,但在MT5的策略測試器中,TimeGMT() 會回傳與伺服器時間相同的值。只靠這個方法的話,回測時校正不會生效。
方法2:用計算方式內建夏令時間規則
像「3月的第2個星期日到11月的第1個星期日為+3」這樣,由日期計算出時差。優點是在測試器中也能以相同方式運作。不過必須先知道業者採用美國式、歐洲式還是固定,一旦規則弄錯,本來想校正反而造成偏移。
方法3:從週初的第一根K線推估
觀察週初第一根K線從幾點開始,藉此推估伺服器的時差。即使不知道各業者的設定也能使用,但遇到假日或交易時間特殊的週別,可能會推估錯誤,因此我們不單獨使用這個方法。
每種方法都有漏洞,所以我們認為較務實的做法,是做成「自動推估,並可用手動輸入值覆寫」的形式。
導入前檢查清單
- 在EA的說明書與參數中,確認時段是以伺服器時間、GMT還是日本時間來撰寫
- 比對報價顯示的時間與GMT,確認自己帳戶的伺服器時間(夏季與冬季都要確認)
- 向客服或查看公告,確認該業者採用美國式、歐洲式還是固定來切換
- 確認回測所用的業者與實際運作的業者是否相同
- 在夏令時間切換的那一週,從日誌查看EA的進場時間
關於各業者的伺服器時間差異,可參考 FX業者比較;參數的設定方式,則可參考 EA設定方法。
限制與注意事項
自動校正並非萬能。業者可能未事先告知就更動伺服器時間的運作方式,而過去的歷史資料是以哪個時點的時鐘記錄的,有時也無法從外部確認。在這種情況下,即使正確加入了校正,回測的時段也無法精確重現。
另外,把時段挪動之後,績效有時反而會變好,但那可能只是巧合。不建議僅因為偏移後的設定在回測中表現較佳就採用,因為這和曲線擬合(curve fitting)是同樣的問題。
再者,即使時間對得正確,策略在該時段能否獲利又是另一回事。時段過濾器是用來避開虧損時段的工具,並不保證獲利。
總結
- MT5的時間是伺服器時間,依業者不同,有GMT+2/+3、固定、GMT+0等差異
- 由於美國式與歐洲式夏令時間的切換日不同,春季與秋季會出現差1小時的期間
TimeGMT()在測試器中會與伺服器時間相同,因此單靠它無法在驗證時進行校正- 結合自動推估與手動輸入覆寫,是較務實的做法
- 導入前,要在夏季與冬季兩種情況下,核對「EA的時鐘」與「帳戶的時鐘」
- 即使時間一致,也不代表在該時段就能獲勝
其他MT5的營運心得,彙整在 EA・MT5知識庫。
相關文章
📧 免費電子郵件課程(共 8 封)+ 訂閱者專屬 MT5 指標 13 款合集
訂閱後會立即收到訂閱者專屬合集的下載連結,內含本站 13 款 MT5 指標的已編譯檔案(.ex5)、原始碼和使用指南。隨後透過共 8 封郵件介紹外匯自動交易的本質、回測的正確解讀方法和經紀商選擇技巧(前 5 天每天 1 封,之後在訂閱第 7、14、30 天各 1 封)。MQL5 Market 版(首發價,隨銷量分階段漲價)漲價前也會通知您。在本站,只要擁有合作經紀商的真實帳戶,EA 即可免費使用。
※ 嚴格保護隱私。可隨時取消訂閱。