本文會直接使用 MT4 執行回測,如果還不熟悉 MT4 的基本用法,可以先參考以下文章!
一、什麼是回測
回測就是透過測試交易策略,基於歷史資料的表現來考察其可行性,簡單來說就是透過歷史資料來查看策略的表現,若表現不錯則可以考慮用在未來的行情中,反之則可以檢討策略的設計與優化。
二、如何在MT4上執行回測
步驟一:開啟MT4主程式,並按下圖中按鈕開啟回測視窗
下圖為回測視窗各區塊講解:
步驟二:選取要執行回測的EA

步驟三:點擊「EA交易屬性」編輯EA參數
「投資測試」分頁可以設定起始資金與開倉方向,「輸入參數」分頁,可以編輯策略參數,雙擊「賦值」底下的欄位進行編輯。
步驟四:選擇復盤模式
復盤模式有三種,可依策略邏輯決定復盤模式:
- 每個即時價格,即以Tick報價為單位,是最精細的回測,回測跑的時間也最久
- 控制點,隨機取12個K棒內價格,回測跑的時間介於1跟3之間
- 僅用開盤價,是最粗糙的回測,回測跑的時間也最短

步驟五:選取回測時間區間
使用日期打勾並選擇時間區間,復盤顯示若打勾則開始回測後會打開一張K棒圖表回放策略的進出場點位,我們這邊選擇開啟並將右邊拉 bar 拉到最右邊,拉 bar 用於控制回放的速度,用右邊就越快,而拉 bar 右邊的按鈕為暫停鈕,可在回測中暫停或繼續回測。
步驟六:開始回測
確認好EA、交易品種、K棒週期、復盤模式、價差、回測時間區間後即可按下開始,執行回測。
三、查看回測結果
(一)結果分頁
顯示所有訂單進出場明細。
(二) 淨值圖分頁
圖形化展示連續性的交易盈虧,橫軸為交易次數(交易編號),縱軸為淨資產。
(三)報表分頁
詳細的回測數據如總交易次數、毛損、毛利、盈虧比、最大虧損、最大獲利等數據。
四、什麼是最佳化
- 讓策略在特定的數據區間內跑多次回測結果。
- 快速驗證各參數的擬合度與表現。
- 檢視策略對市場的承受強度。
- (可能)找出自己沒有想過或是不在自己預期範圍的參數。
五、如何在MT4上執行最佳化
點擊「EA交易屬性」開啟EA參數調整視窗,執行最佳化時需要調整的欄位包含:
- 初始值:最一開始的參數
- 步長:參數要遞增的數值
- 終止值:最終的參數數值
注意,各參數的最左邊有一個選取方塊,須將其打勾才會執行參數的最佳化,勾選的數量與各參數的步長、最終值會影響最佳化跑的次數。
接著回到主畫面勾選「優化」後按下開始。
開始後會出現下圖畫面,進度條跑完即完成回測。
跑完後會出現「優化結果」與「優化圖形」,在優化結果中雙擊某一欄位即可將參數套用到回測參數中。
六、結語
以上就是回測與最佳化的方式,「回測」有助於檢視策略在過往市場中的表現,另外由於回測只會抓取單一週期、單一商品的歷史資訊,所以有些多商品或多週期的EA並不適用回測系統,這點是必需要注意的。
「最佳化」則可以找出最適合目標商品的策略參數,但在選擇參數時也要思考該參數是否合理,避免過度最佳化。
MT4 EA 語法教學系列:
- 如何打造自己的第一支EA-MT4 EA語法教學(一)
- MT4 EA 常用內建保留字-MT4 EA語法教學(二)
- MT4 EA下單指令介紹-MT4 EA語法教學(三)
- 開始寫一支完整的交易策略-MT4 EA語法教學(四)
- 如何跑回測與最佳化-MT4 EA語法教學(五)
量化通粉絲社群,一起討論程式交易!
程式交易課程推薦
📣MT4 程式交易系列線上課程,手把手開始用程式交易打造自己的被動收入!