內容目錄
程式交易者開發的EA,都是透過回測(back test)為依據,
並從回測報表的數據中,來判斷是否要使用某個交易策略。
所以報表中的資訊對交易者來說是非常重要的,
一份報表中的資訊有非常多,包含淨利、交易單數、勝率、賠率等等的…二三十個資料數據起跳。
那程式交易者通常都會注重哪些數據呢?
艾比就來分享這幾年程式交易經驗下來,我會特別注重的幾個數據。
MT4/MT5 回測報表
報表中有非常多數據,很多艾比在文章中沒有提到,但是你想知道的,
可以至下方連結,MQL官網的說明中查詢:
相信很多同學一回測完先看的就是「賺多少錢」,因為艾比在一開始使用回測試也是這樣的(笑)。
後來才會發現,賺多少錢這個數字其實不是那麼重要,
因為以實務上來講,賺錢都是沒問題的;
而有問題時都會發生在賠錢的時候(哈哈哈),所以我們會更重視風險相關的數據。
在講解許多數據之前,艾比要先講個最實用的一個,
它不是數據,而是視覺化的「資金曲線圖」。
資金曲線圖
最一目瞭然的結果,如果有賺錢,那資金曲線圖的斜率一定是斜往右上的。
從曲線圖的鋸齒幅度,也能看得出來獲利的穩定度。
最久多久才創高?
你將滑鼠游標移動到曲線圖的任一個位置上,它就會顯示出當下的日期,
所以去查看兩個創高點的日期,就可以知道它們中間間隔多久。
這個策略早些年比較賺錢還是近期比較賺錢?
也都可以直接在資金曲線圖上看得出來。
我們可以從曲線圖中賺很多的地方,再去看當時的價格行情怎麼走;
然後去看曲線圖當中賠錢的地方,去對應看當時的行情又怎麼走,
進而去理解你的交易策略適合什麼樣的行情、與不適合什麼樣的行情。
如同艾比常跟學員說,在回測時建議把視覺化模式打開,去看進出場的點位狀況一樣,
這種視覺化的呈現,就是最直觀了解狀況的。
所以第一眼一定是去看資金曲線圖,你就能意會到整個交易策略在整段時間中的表現。
那接下來我們來看報表中的數據吧,
MT4的報表比較簡潔、MT5的報表包含更多統計數據。
在整份報表數據中,艾比會特別著重在哪一些?
下面要介紹的數據,都在下方圖表中用不同顏色標註出來了。
第一張圖是MT4報表,那這個交易策略是點進面出的,一次進單會再分成10次,
相同的進場價位,有10個不同的出場價格,也就是分批出場的概念。
所以在交易單數的部分要再除以10。
第二張圖是同策略同商品的MT5報表,
MT5報表的參數是直式一行一行的比較占版面,所以把切出來放在右邊。
最大虧損(Maximum DrawDown,MDD)
跟風險最直接的數據就是「最大虧損」,常簡稱為「MDD」。
其實MDD最直觀的解釋就是整個資金曲線當中,回檔最大的那一段,
也就是資金曾經回吐最多錢的金額。
這個虧錢的金額,代表此策略曾經經歷一段連續虧損,賠掉過這麼多的錢,
所以同樣的策略如果你使用了,那也有可能在未來某段時間要經歷賠這麼多錢,
那這樣的風險你能夠接受嗎?
並且在程式交易當中很常聽到「MDD就是拿來破的」,
所以實際交易中最大虧損的風險其實會預期比回測報表中的MDD還要再更大,
通常會抓1.5倍、更保守的會抓2倍。
因為回測畢竟是在完美的交易環境當中進行的,
實際交易會遇到的狀況比較多,
包含滑價(滑點)、浮動點差、網路傳輸速度、券商伺服器穩定度等等…因素,
都會造成實際績效表現比回測差一些,所以會更保守的去做預期。
MT4報表中有兩種MDD,
一種叫做「最大虧損」,就是我們一般看的虧損最大金額的MDD,
旁邊有一個叫做「相對虧損」,其實他也是MDD的概念,只是不是用金額來看,
而是用百分比來看,虧損最大%數是幾%。
MT5報表則是有分為最大「餘額虧損」與「權益數虧損」,
權益數就是「淨值」,包含了未平倉的浮盈或浮虧,
一般有止損、不會凹單的策略,在餘額與權益數的最大虧損會差不多。
風險報酬比
又簡稱「風報比」,計算的方式是:總淨盈利/MDD,風報比是越高越好。
以上圖MT4報表來看,總淨盈利是12285.66、最大虧損MDD是2397.81,
所以風報比=12285.66/2397.81=5.12。
MT4的報表中沒有風報比這個數值,要自己手動去計算;
那在MT5的報表中有一個「採收率」,這個值就是風報比,
MT5英文報表的名稱為Recovery Factor,中文直譯常又稱為恢復因子。
投資交易不能只光看獲利,要同時參考風險才有意義,
而風報比就是同時參考了獲利與風險。
如果單純看下圖的兩個投資策略,投資A賺的利潤是B的兩倍,看起來賺很多,
但如果搭配波動的風險來看,B的風報比是更高的,所以其實是更好的投資,
因為如果把B的風險調高到與A一樣高,B的獲利金額是更多的!
所以從上圖中可以看到,風報比會反映著資金曲線的平滑程度,
風報比低的曲線,整體波動越大。
要注意的是,
因為風報比的計算使用的是「總淨盈利」,
會隨著回測時間越長,淨利潤累積的就會越多,相對的風報比就會越高,
相反的,如果只是回測一小段時間(可能半年或一年),那風報比較低也是正常的。
那會有人使用年風報比大於多少的標準,不過艾比沒有在使用這樣的看法。
這部分艾比會比較著重在看資金曲線圖上,
資金曲線圖上兩次創高中最久的那段期間多久、或是資金回檔較大的期間多久,
這樣比較不會因為雖然曲線平滑而風報比高,但創高時間相隔過久而忽略這中間的等待期。
連續虧損次數
報表中風險相關的數據比獲利相關的數據,更有參考價值。
因為這跟實際交易後的風險與策略管理有關,
更重要的,對交易者的心理健康有非常大的影響。
要明白你的風險、甚至是做好最壞的打算,才能有良好的心態前進。
當策略遇到不適合的行情時,就會產生連續虧損,例如趨勢策略在盤整震盪行情時。
那這個範例策略是點進面出的,一個進單會再分成10次,
所以最多連續虧損是60看起來很多、但其實要再除以10,所以是6次的意思。
最多連續虧損次數
顧名思義就是累計起來連續虧損出場最多次的次數。
在風險部分除了破MDD之外,艾比最關注的就是這個數值有沒有被破了,
如果實盤交易之後一隻EA即使沒有破MDD,
但是破了這個最多連續虧損次數,那策略失效的可能性也是非常高的,
代表商品特性整體波動率有改變,要警惕了。
延伸閱讀:
EA策略不再賺錢? 策略失效與波動率
平均連續虧損次數
這個數值就是跟平常交易狀況去做一個比較參考,
可以知道說現在的近期的行情是否處於平均水準,或是更適合交易策略、或更不適合交易策略。
因為連續虧損的發生會是一段時間,這是交易者最需要忍受痛苦的地方。
今天交易時產生連續虧損,你去跟這個數值比對一下,
如果差不多,那其實就不用瞎操心交易策略的狀況;
那如果比這個數值多,也不用太緊張,因為還有最多連虧次數等著(笑),
交易者心裡對這個數值有個概念就可以了。
交易單數
交易單數會因為你的策略是長線短線而差距非常多,
這部分艾比認為重點在於「你可以接受平均一個月至少有幾次交易機會」。
一般來講,順勢交易策略單數多的要獲利比較困難,
所以交易者透過加入更多條件或是濾網來提升表現,結果反而容易造成單數過少的狀況,
而單數過少容易陷入「欠缺最佳化」的狀況,因為樣本數太少、統計意義太低,
也會造成回測賺錢但實際上線後卻不是那麼一回事。
艾比自己的標準是平均一個月至少要有2次交易機會,所以一年至少24次、十年至少240次。
但這個是最低標準,一般不會觸及到這麼低的狀況。
那實際上線後的EA會與回測報表中的交易單數平均做比較。
例如回測中一年平均交易次數為50,但實盤之後如果年單數大幅高於或低於50,
那就會是一個訊號,要留意為什麼會有這樣的情況產生?
還是要回到去觀察行情是否產生了改變。
有可能是波動率變小,所以被濾網擋掉更多交易機會,所以交易單數變少等…原因。
必要時要去調整或重新優化交易策略。
勝率&賠率
EA實際上線之後艾比會去留意對比的數值還有「勝率」,
會去比較近期策略勝率與回測的勝率,是否有低於很多的狀況,
雖然不會用來做上下架的標準,但一樣可以觀察盤勢波動率的改變。
在報表中的「獲利交易%」、「盈利交易%」就是勝率;
賠率是損益比,也就是平均獲利交易與平均虧損交易(金額),
這兩個值乘起來就是我們熟悉的期望值,那當然你的報表示有賺錢的,期望值就是正的。
策略回測看到結果是很快的,幾年的時間幾分鐘就跑出來,
所以很多新手會只看到有沒有賺錢,忽略了策略的表現是否有符合自己的心理狀態。
如果整體賺錢但是勝率很低(每個人對低的定義不同,艾比覺得25%以下是低),
你在實際使用時心裡會受不了連續的虧損,而可能去手動干預或是關機,
所以即使賺錢但勝率太低的策略,也會不切實際,開發EA時要留意。
一般順勢交易勝率會約落在30%~40%,搭配較高的損益比;
短線的交易策略則會高很多,因為通常賺一點點就會出場。
結語後話
報表中還有的數據非常多,
那艾比介紹的幾個可能不是主流程式交易在看的數據(獲利係數、預期收益等等…),
但是是跟你的策略配對行情相關的數據。
那你也許會說:「策略不適合的行情當然就會賠錢、適合就會賺錢啊」,
沒錯,但每種結果的產生勢必會有與他相關的原因,
對我們有價值的是去發現與學習這些原因,長久下來才會累積成我們對市場更深刻的認知。
延伸閱讀:
MT4與MT5軟體程式交易EA回測介面操作教學回測前要先準備的歷史價格:
回測MT4歷史價格資料下載教學與99.9%品質的Tick Data Suite
回測MT5歷史價格資料Quant Data Manager免費下載與創建自訂交易品種匯入教學
回測是在程式交易開發中非常重要的一個步驟,它可以驗證你交易策略的獲利性與風險。
但我們不應該過度依賴回測報表中的數字,不管是利潤還是風險,
因為歷史會重演,只會相似,不會一模一樣。
我們更應該去著重在策略的合理性,
否則會容易陷入過度最佳化的迷思裡,
你加入過多的條件與參數就總是可以在回測中找到賺大錢的報表,但僅限回測…
合理的交易策略才能讓你在未來的市場中也擁有優勢。
【延伸閱讀】
◾外匯保證金新手:
▪外匯保證金與差價合約(CFD)是什麼? 多少錢才可以投資?
▪外匯保證金的交易成本有哪些? 點差、庫存費(隔夜利息)、滑價◾出場的交易策略:
▪追蹤止損(移動止損 Trailing Stop)讓你不看盤也能保護利潤,如何在MT4/MT5中啟動追蹤止損?
▪獲利速度與獲利長度,兩個願望一次滿足的出場方法:點進面出、分批出場◾投資組合交易:
▪單支EA打天下vs.提高獲利降低風險的「投資組合Portfolio」
▪不要用高相關性的EA!教學QA軟體來看多支EA的相關性
▪海龜突破交易策略與反突破的負相關性對沖,投資組合交易方式◾ChatGPT:
▪用ChatGPT自動來寫MT4/MT5的程式交易? EA工程師即將失業?!【ChatGPT第一集】
▪請ChatGPT寫出完整交易策略,它能寫出更長的MT4程式碼嗎?【ChatGPT第二集】
▪我找到讓ChatGPT寫出完整程式交易策略的方法了!各個擊破法【ChatGPT第三集】
▪上傳ChatGPT黃金近五年價格,讓最新功能Code Interpreter分析波動性【ChatGPT第四集】
👇投資自己的腦袋:
相關文章