JasonForex 發表於 18-6-7 13:50

MT4/MT5中tick回測的可靠度

如果不使用tick數據回測,基本上EA的可靠度可以說幾乎沒有(測出來能買帝寶的EA一堆),但相對的,使用tick數據回測後的可靠度會再提高。

不過雖然是有提高,但和實戰有多少差距呢?

回測中我會把交易成本拉高3~5倍(加大點差),除此之外,是否還有其它提高可靠度的tick回測技巧?

esym 發表於 18-6-7 22:50

MT5 復盤回測有兩種 tick 模式,會比 MT4 最精細也只是從一分鐘 OHLC 四個價格模擬好些,雖然也不是真的的實盤價格,但 MT5 可以復盤多商品多週期 EA,也可以下載復盤長達十年的歷史數據,自然是比 MT4 復盤來的好用。

MT4 可以設置固定買賣點差,所以對復盤與實際狀況有顧慮,可以設置固定比較大的點差,但 MT5 復盤不能設置固定點差,只能用 default 下載數據裡面的浮動價格買賣點差,但是 default 的價格買賣點差又是相當低的點差,這個是大問題。另外每個交易商實際饋送給客戶的實盤價格,和 MT5 復盤那裡 tick 模式下載的價格數據,肯定是不一致的,雖然復盤有這些弱點,但用來優化 ea 的參數或是優化多商品 ea 所用的商品組合,在這些用途上還是可以的。

復盤結果已經亂七八糟的 ea, 實盤就可以不要浪費時間掛,這應該是復盤最大的用途吧。


因為權限關係無法貼網址,如果你對 MT4/MT5 復盤機制的細節有興趣,可以在 MQL5 官網上,menu 上選 Article 然後下個頁面,左邊的 strategy tester 可以找到許多篇官網介紹他們的復盤運行的機制,包含復盤價格是如何模擬出來的。

JasonForex 發表於 18-6-9 10:41

我是使用tickstory下載歷史tick數據供MT4回測使用,回測時為考慮滑價,交易成本會設成3~5倍。

比方EURUSD交易成本點差+手續費1大點,我會設成3~5固定點差回測;XAUUSD交易成本報價0.2元(3位數報價200點/2位數報價20點),設成1元(3位數報價1000點/2位數報價100點)。

esym 發表於 18-6-9 16:21

本帖最後由 esym 於 18-6-9 16:29 編輯

另外還需要考慮策略的問題,我舉幾個例子你參考下,不過如果是大週期波段策略,就不需要考慮這些策略上的差異:

1. 加倉型的策略 - 例如馬丁或是網格策略,如果加倉到五單以上累加量比較大時,如果整組獲利金額例如10美元,在復盤狀況,平倉整組會用同樣一個價格一次平倉掉,但是在實盤,MT4 的平倉是按照順序平倉的,還需要考慮交易商的訂單處理速度和延遲,有些交易商連續處理太多訂單平倉,處理速度會變的相當慢,再加上量大時最大量的單的獲利點數一定是比較小的,這樣整組平完通常就少於10美元,這也是復盤在馬丁或是網格對沖策略,復盤結果通常都是好於實盤的原因。

2. 突破型的 scalping 策略 - 因為 MT4 最精細的復盤價格模式還是用 一分鐘 K 線的 OHLC 價格模擬出來的,因為權限不夠,無法貼 url 鏈接,你可以谷歌 “[从源码看原理-4] 剥剥剥!三个月翻3倍本金 XMT-Scalper EA” 可以找到我這篇 blog 文,裡面有提到 MetaQuotes 官網的一篇文章解說他們的這個復盤價格模擬機制,和為什麼這類的策略剛好利用到這樣的價格模擬機制的弱點來產生好的復盤結果,這也是你在初始發文提到可以買帝寶的這類策略的復盤產生特性。

我貼兩張 MetaQuotes 官網里文章的價格運動模擬圖:



MT5 的最新的“every tick based on real tick” 模式不是用這樣的 K 線價格模擬機制模擬出來的,這個模式的數據下載量自然是很大的,但MT5 復盤其他價格模式和 和 MT4 的三種復盤價格模式(包含最精細的那個價格模式,雖然叫外面習慣叫復盤質量 99% 或是 tick 但最小單位還是一分鐘 OHLC),對於 K 線範圍內的價格運動,都是用價格模擬運動機制模擬出來的,這些細節在 MetaQuotes 官網 strategy testers 的文章,和 MT5/MT4 的幫助文檔都有提及,你可以研究下。

MetaQuotes 他們有寫一個利用這個價格模擬運動弱點的 所謂聖杯 ea,雖然是用 MT5 版本寫的,你可以在他們官網搜索 Grr-al 找到,復盤結果自然是非常好的,是他們用來解說這個弱點的範例。



JasonForex 發表於 18-6-13 22:53

謝謝您專業的解析。

目前我只在MT4的tick數據上回測過,我打算再重新以MQL5編寫去試試兩者回測的差異。

用加大點差來包含滑價失真的做法,我試過後也發現個問題,如果點差加得太大,有可能會誤觸訊號(因為ASK/BID變得更高/更低了),在低點差回測時沒觸發的訊號可能會在加大點差後觸發。
頁: [1]
查看完整版本: MT4/MT5中tick回測的可靠度