量化金融分析師(AQF)|量化交易建模如何避免過度擬合?
量化交易建模最重要的一個方面是避免過度擬合。過度擬合是統(tǒng)計學(xué)和機(jī)器學(xué)習(xí)領(lǐng)域的概念,指的是模型在訓(xùn)練數(shù)據(jù)中擬合程度很好,但在測試數(shù)據(jù)中表現(xiàn)卻不如人意。
一、過度擬合的影響
傳統(tǒng)的機(jī)器學(xué)習(xí)問題,此類過度擬合的不會很明顯。比如對于分類問題,一般訓(xùn)練集準(zhǔn)確度99%,測試集即使過度擬合也有95%,這其實(shí)影響并不會很大。但是對于金融數(shù)據(jù)而言,由于數(shù)據(jù)的高噪音及時間序列特征,訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù)往往會有較大差異,如果建模過程不是很嚴(yán)謹(jǐn),很容易出現(xiàn)嚴(yán)重的過度擬合現(xiàn)象,結(jié)果就是樣本內(nèi)穩(wěn)定賺錢的策略,到了樣本外就穩(wěn)定虧錢。
二、如何避免過度擬合
避免過度擬合的思想需要貫穿在量化建模的整個過程中,每一個步驟都需要遵循客觀嚴(yán)謹(jǐn)?shù)脑瓌t。一個好的量化交易建模體系,必須能較好地克服過度擬合的情況,使得量化研究人員按照整個研發(fā)流程走下來得到的策略,就能夠很好地避免過度擬合。根據(jù)我們的經(jīng)驗(yàn),可以通過以下幾點(diǎn)來實(shí)現(xiàn):
1、保證一定的交易次數(shù)
對于商品期貨策略,如果分品種進(jìn)行回測,部分不活躍品種可能一年都沒有20次交易,幾年下來總的交易次數(shù)不到100次,這樣就難以形成統(tǒng)計意義,非常容易過度擬合。如果是套利類策略,持倉時間更長,可能一年才幾次交易,結(jié)果的可靠性就更加存疑了。因此,對于這種情況,有必要多品種同時回測,增加策略的交易次數(shù),一般有300次以上的交易次數(shù)才能比較好地證明策略有效性。
2、保證一定的平均利潤
有些策略雖然交易次數(shù)多,效果也不錯,但是平均利潤過低,實(shí)盤交易中如果受到滑點(diǎn)的影響,很可能從穩(wěn)定盈利變成穩(wěn)定虧損。因此,需要保證一定的平均利潤,較好有10倍買賣價差以上,才能更好地避免滑點(diǎn)帶來的影響。
3、避免重復(fù)使用測試數(shù)據(jù)
一般來說測試數(shù)據(jù)只使用一次才是最準(zhǔn)確的,否則,反復(fù)使用測試數(shù)據(jù)也會導(dǎo)致過度擬合的問題。即使建模后進(jìn)行模擬交易,中低頻一個月也沒有很多交易,很難評價策略的好壞。因此,只能在建模中保證過程的嚴(yán)謹(jǐn)性,保證有1、2年完全樣本外的測試數(shù)據(jù),最后的結(jié)果才會真實(shí)可靠。
>>>點(diǎn)擊學(xué)習(xí)CFA+AQF量化金融雙證班課程
三、如何提高模型質(zhì)量
當(dāng)然,很多過度擬合的情況之所以會發(fā)生,是因?yàn)檠芯窟^程中難以得到令人滿意的結(jié)果,比如正常套路建模得到的策略在樣本外總是表現(xiàn)不好,很難得到樣本外表現(xiàn)好的策略,久而久之,只好把樣本外的數(shù)據(jù)放到樣本內(nèi)進(jìn)行優(yōu)化,才能得到好的結(jié)果?;蛘哒f交易次數(shù)多了平均利潤就少了,兩個條件無法同時滿足。為此,我覺得有如下幾個方法可以提高模型質(zhì)量:
1、提高因子質(zhì)量
因子是建模的基礎(chǔ),如果因子質(zhì)量太差,無論模型再復(fù)雜,也無法得到好的結(jié)果。因此,可以逐個考察因子的質(zhì)量。例如用單個因子建模,看是否會出現(xiàn)過度擬合的情況。正常來說,單個因子是結(jié)構(gòu)最簡單的模型,不會過度擬合的。如果單個因子建模質(zhì)量不佳,說明這個因子或許只是隨機(jī)噪音,可以及時剔除,不必放入模型。
2、優(yōu)化篩選標(biāo)準(zhǔn)
在樣本內(nèi)挑選策略的時候,不必設(shè)置太苛刻的標(biāo)準(zhǔn)。如果標(biāo)準(zhǔn)太苛刻,反而會過度擬合到樣本內(nèi)的數(shù)據(jù),很多時候無法泛化到樣本外。而且,當(dāng)個品種的策略與品種走勢高度相關(guān),如果品種走勢不理想,策略長時間不盈利反而是正?,F(xiàn)象,如果非要選擇在不利行情都能表現(xiàn)好的策略,那么就大大增加了過度擬合的風(fēng)險。
3、增加策略多樣性
金融市場有句話說“過去的業(yè)績不代表未來”,那么放到策略上就是“過去好的策略不代表未來還會好”。過去的投資組合理論喜歡用均值方差模型,但困難在于收益均值很難預(yù)測。因此,最近幾年人們逐漸使用風(fēng)險平價模型來代替。在選擇策略的時候,不必對過往業(yè)績做出過于苛刻的規(guī)定,否則容易得出相關(guān)性極高的策略??梢詮母鱾€維度來篩選策略,增加策略多樣性。
4、金融數(shù)據(jù)的時間序列特征
由于金融數(shù)據(jù)的時間序列特征,建模的時候較好采取滾動向前的方法。為了保證訓(xùn)練集有足夠的交易次數(shù),訓(xùn)練時間也要足夠長。如果測試結(jié)果對訓(xùn)練、測試集的劃分過于敏感,很可能是長度不夠交易次數(shù)不夠?qū)е碌模@些都要小心。
綜上所述,金融量化建模需要建立嚴(yán)謹(jǐn)?shù)难芯靠蚣?,從因子?gòu)造到投資組合優(yōu)化整個流程都需要時刻避免過度擬合,這樣最后的結(jié)果才會更為可靠。


.png)
.png)


