MT4教學

如何優化MT4 (MetaTrader 4)自動交易③


優化(最佳化)是什麼?


所謂的優化(最佳化),就是利用MT4的回測功能,以過去的數據為基礎,驗證要怎麼設定參數才能獲得最大的利益,並逐漸調整參數設定的作業。

雖然可以利用優化來檢驗最適合過往數據的參數,但也必須要注意曲線擬合(過度優化)的問題。

未來的市場價格不會與過去完全相同。

因此,一旦優化過度,有可能反而會使未來的操作成果變差。

這就是自動交易的難處了。因此,進行優化的時候,建議還是不要太過鑽牛角尖。

另外,因為目前在市面上販售的EA都已經由開發者進行了一定程度的優化,因此通常不太會碰到需要大幅度調整的狀況,而且也有一些EA無法調整參數設定,請在確實閱讀EA說明書之後再進行操作。


優化的步驟


想要進行優化的話,就必須要利用策略測試器的「EA交易屬性」按鈕,進行優化的設定。

「投資測試」分頁


在「投資測試」分頁中選擇優化參數。

選擇要對哪個項目進行優化。

一般來說通常會選擇Balance (帳戶餘額)。

其他則如以下所說明。

Profit Factor:以獲利因子(總獲益/總損失)為基準進行優化

Expected payoff:以預期獲益(總損益額/總交易數)為基準進行優化

Maximal Drawdown:以最大跌幅為基準進行優化

Drawdown Percent:以跌幅百分比為基準進行優化

Custom:以自己設定的基準進行優化

另外,勾選遺傳基因運算法的話,就可以在優化計算時省略結果明顯會比較差的參數,使測試更有效率,並可以藉此縮減回測的時間,所以建議先勾選這個選項。

MA遺傳基因運算法

「輸入參數」分頁


在輸入參數分頁可以設定要針對哪一個參數在什麼樣的數值範圍進行優化。

勾選想要進行優化的參數左方的勾選框,並輸入初始值、步長、終止值等數值。

初始值就是進行優化的數值範圍的起點,也就是最小值。終止值則為最大值。

步長則是在最小值與最大值之間,要以怎樣的數值間隔進行優化確認的設定。

比如說,輸入50作為初始值、輸入100作為終止值,並輸入10作為步長,那麼就會依據以50、60、70、80、90、100等數值進行驗證。

這些數值組合越多,優化所耗費的時間就會更長,因此建議將組合種類限縮到一定程度之後再進行優化。

MA輸入參數

「優化」分頁


在優化分頁中可以為優化設定限制條件,使優化在達到一定條件之後停止。即使不特別在這裡輸入數值也不會有問題。

MA優化

開始優化


設定完成之後,就開始進行優化。

在策略測試器中設定一般的回測項目後,勾選優化勾選框,點擊開始。

雖然具體的時間會受到測試期間與參數的組合數量而有所變化,但優化本身會耗費一定程度的時間,尤其是在測試方法的設定上選擇每個即時價格時,往往會需要耗費幾個小時。因此,多花一點工夫將時間範圍與參數的組合限縮到一定程度會比較好。

優化

優化結果確認


當優化完成後,就可以在優化結果分頁確認優化的結果。

在此畫面中會同時顯示損益、總交易數、獲利係數、預期收益、跌幅等數據以及參數的數值等。

優化結果