摘要:當(dāng)前,機(jī)器學(xué)習(xí)在金融投資領(lǐng)域的應(yīng)用備受市場機(jī)構(gòu)關(guān)注。本文基于10年期國債期貨數(shù)據(jù),經(jīng)特征工程處理,采用不同模型進(jìn)行訓(xùn)練,通過回測分析檢驗(yàn)?zāi)P偷挠行?。結(jié)果表明,梯度提升決策樹模型在訓(xùn)練效率和預(yù)測準(zhǔn)確率上都要高于帶自編碼器的多層感知器模型和長短期記憶網(wǎng)絡(luò)模型。本文為機(jī)器學(xué)習(xí)在金融領(lǐng)域的進(jìn)一步研究應(yīng)用提供了有效借鑒。
關(guān)鍵詞:國債期貨 機(jī)器學(xué)習(xí) 遺傳規(guī)劃 神經(jīng)網(wǎng)絡(luò) 梯度提升決策樹
近年來,機(jī)器學(xué)習(xí)迅速發(fā)展,在各行各業(yè)的時間序列預(yù)測業(yè)務(wù)中表現(xiàn)出了強(qiáng)大的能力。本文基于國債期貨市場數(shù)據(jù),構(gòu)建了完整的機(jī)器學(xué)習(xí)流程。
本文的試驗(yàn)分析步驟如下。一是對10年期國債期貨原始日頻數(shù)據(jù)進(jìn)行特征工程處理,挖掘有效的量價因子作為新的特征,并根據(jù)回測結(jié)果對上述因子進(jìn)行進(jìn)一步篩選。二是選取主流的機(jī)器學(xué)習(xí)模型作為研究對象,主要考慮包括帶自編碼器的多層感知器(AEMLP)和長短期記憶網(wǎng)絡(luò)(LSTM)兩種神經(jīng)網(wǎng)絡(luò)模型,以及傳統(tǒng)機(jī)器學(xué)習(xí)模型中的梯度提升決策樹模型(GBDT)。然后分別對上述模型進(jìn)行參數(shù)調(diào)優(yōu)和交叉驗(yàn)證訓(xùn)練,并構(gòu)建回測框架進(jìn)行驗(yàn)證分析。三是基于上述研究,得出機(jī)器學(xué)習(xí)在國債期貨應(yīng)用中的結(jié)論與啟示。
基于遺傳規(guī)劃的因子挖掘
(一)遺傳規(guī)劃簡介
遺傳規(guī)劃(Genetic Programming)是遺傳算法(Genetic Algorithm)的一個分支,是一種啟發(fā)式的監(jiān)督學(xué)習(xí)方法,更多應(yīng)用于特征挖掘。
1.遺傳規(guī)劃流程
在具體實(shí)踐中,遺傳規(guī)劃會先生成一系列隨機(jī)公式作為初始種群,根據(jù)某種標(biāo)準(zhǔn)計算其適應(yīng)度,并保留其中最優(yōu)秀的部分個體作為新的父代。這些父代再通過交叉、變異等方法生成新的公式并進(jìn)行篩選,如此反復(fù)。
2.遺傳規(guī)劃實(shí)現(xiàn)
事實(shí)上,對于任意一個合法的公式,它總是由一些算子、變量和常量組成。遺傳規(guī)劃基本的算子包括加減乘除和常用的非線性算子,如自然對數(shù)和三角函數(shù),對于具體的問題可以自定義不同的算子。在遺傳規(guī)劃中進(jìn)化方法包括交叉、子樹變異、Hoist變異、點(diǎn)變異等,而適應(yīng)度作為衡量個體優(yōu)秀程度的指標(biāo),其類似于其他機(jī)器學(xué)習(xí)方法中的模型評價指標(biāo)或損失函數(shù)。
(二)因子挖掘
本文選取10年期國債期貨的日頻價格、交易量和累計持倉量等原始數(shù)據(jù),以及常用指標(biāo)作為輸入遺傳規(guī)劃的特征集合(見表1)。另外,選取國債即期收益率曲線,包括1-3個月,6個月、9個月、1年、3年、5年、10年、20年的關(guān)鍵期限數(shù)據(jù)??紤]到收益率曲線與國債期貨的關(guān)聯(lián)性,通過主成分分析提取前三個主成分添加到特征集合中,其累計方差貢獻(xiàn)率達(dá)98.85%,即該三個主成分包含了國債收益率數(shù)據(jù)的大部分信息,可用于代表國債收益率數(shù)據(jù)。
同時本文構(gòu)造了一系列時間序列算子用于生成新因子,通過修改gplearn源代碼隨機(jī)生成一定范圍內(nèi)的整數(shù),作為每個時序算子的時間窗口的數(shù)值。
每個因子的適應(yīng)度定義為其與國債期貨收益率的三個月滾動信息系數(shù)的均值,其中信息系數(shù)(以下簡稱IC)為因子值與下期國債期貨收益率的相關(guān)系數(shù)。隨機(jī)生成公式作為初始種群,演化得到的適應(yīng)度最大的公式即為我們所要尋找的因子。
(三)因子篩選
基于上述遺傳規(guī)劃挖掘,得到大量IC超過7%的因子,表明這些因子預(yù)測能力較強(qiáng),包含波動類因子(如Alpha_8)、趨勢類因子(如Alpha_59)、其他復(fù)雜因子(如Alpha_73)等,其公式為:
Alpha_8=-ts_linearreg_slope(pct_change(close,30),15)
Alpha_59=kama(protected_inverse(willr),160)
Alpha_73=div(log(ht_trendline(macdhist(cci))),adx)
以Alpha_8為例,其含義為當(dāng)日10年期國債期貨收盤價相對于30日前收盤價變化量的15日回歸系數(shù)。
以下通過回測對上述同類因子進(jìn)行進(jìn)一步地篩選,使得特征之間的相關(guān)性盡量低,同時保證因子的有效性。
回測過程如下,選擇2020年1月至2021年12月作為回測區(qū)間。交易策略則采用當(dāng)因子值向上超過80%分位數(shù)時開多,回落到60%分位數(shù)時平多;當(dāng)因子值向下跌落20%分位數(shù)時開空,回漲到40%分位數(shù)時平空?;谏鲜鼋灰撞呗詫lpha_8進(jìn)行回測,結(jié)果是年化收益率3.21%,勝率達(dá)到73.33%,最大回撤為2.05%。據(jù)此回測結(jié)果,發(fā)現(xiàn)Alpha_8是一個有效的因子。值得注意的是,兩年間總共只進(jìn)行了15手交易,月均交易數(shù)僅為0.6,因此當(dāng)該因子與其他相關(guān)性低的有效因子結(jié)合時,我們可以發(fā)現(xiàn)更多交易機(jī)會,進(jìn)而得到更高的收益率。
機(jī)器學(xué)習(xí)模型的應(yīng)用研究
近年來,在各大主流機(jī)器學(xué)習(xí)競賽平臺上獲勝方案多為神經(jīng)網(wǎng)絡(luò)模型和樹集成模型,綜合考慮模型對二分類問題的適用性,以及對處理和預(yù)測時間序列數(shù)據(jù)的適用性,本文使用LSTM模型、AEMLP模型和GBDT模型來進(jìn)行對比實(shí)驗(yàn)。其中,LSTM模型是循環(huán)神經(jīng)網(wǎng)絡(luò)的一個變體,在處理較長的序列變化數(shù)據(jù)中有更好的表現(xiàn)。AEMLP模型通過無監(jiān)督的方式來學(xué)習(xí)一組數(shù)據(jù)的有效編碼,經(jīng)過多層神經(jīng)元層層接收及輸出,對分類問題具有較強(qiáng)的自適應(yīng)和自學(xué)習(xí)能力。GBDT模型是一種集成學(xué)習(xí)模型,它將許多弱分類器組合得到一個強(qiáng)大的分類器,在許多機(jī)器學(xué)習(xí)任務(wù)中表現(xiàn)良好。
基于本文選擇的LSTM、AEMLP和GBDT三種機(jī)器學(xué)習(xí)模型,我們進(jìn)行了一系列比較試驗(yàn),觀察不同機(jī)器學(xué)習(xí)模型在給定的10年期國債期貨數(shù)據(jù)上的表現(xiàn)。經(jīng)過特征工程處理,我們得到從2015年3月20日至2021年12月31日共1657條日頻數(shù)據(jù),92個特征。將這些歷史數(shù)據(jù)劃分為模型的訓(xùn)練集和測試集,其中2020年1月前的數(shù)據(jù)為訓(xùn)練集,2020年1月至2021年12月的數(shù)據(jù)為測試集。
(一)模型訓(xùn)練
模型訓(xùn)練是利用訓(xùn)練集數(shù)據(jù)對模型進(jìn)行擬合,從而求解模型參數(shù)的過程。對于網(wǎng)絡(luò)架構(gòu)部分的超參數(shù),使用網(wǎng)格搜索和隨機(jī)搜索兩種方法來尋找最優(yōu)超參數(shù)。根據(jù)慣例,本文將神經(jīng)元數(shù)量設(shè)為2的冪次,同時網(wǎng)絡(luò)堆疊深度不超過10層,特征的歸一化處理采用z-score標(biāo)準(zhǔn)化。
對于AEMLP模型,本文對編碼器(Enocder)、解碼器(Decoder)和多層感知器(MLP)三部分分別設(shè)計網(wǎng)絡(luò)。對于Encoder部分,本文額外考慮引入高斯噪聲(Gaussian Noise),以此來提升模型的穩(wěn)健性。在MLP部分,將同樣的MLP結(jié)構(gòu)作為堆疊層(Layers),其余參數(shù)的解釋都與Encoder部分一致。
對于LSTM模型,遍歷單元數(shù)的范圍為4至128,便于檢查更多的并行數(shù)是否有利于該問題的學(xué)習(xí)。若返回序列為錯誤,則每個LSTM循環(huán)單元返回一個值,反之則保留每個時間步的值。
對于GBDT模型,選擇使用LightGBM程序框架來實(shí)現(xiàn)。作為一個成熟的程序框架,只需要對該框架中回歸樹模型的參數(shù)進(jìn)行調(diào)優(yōu)即可。
對以上三種模型進(jìn)行調(diào)優(yōu)時,均采用在訓(xùn)練集上進(jìn)行5折交叉驗(yàn)證,使用選定的參數(shù)訓(xùn)練,最大學(xué)習(xí)次數(shù)設(shè)定為150次。神經(jīng)網(wǎng)絡(luò)模型初始學(xué)習(xí)率為5×10-6,根據(jù)epoch數(shù)進(jìn)行自適應(yīng)調(diào)整。
(二)模型測試
將訓(xùn)練得到的模型在測試集,即2020年1月至2021年12月的數(shù)據(jù)上進(jìn)行回測,以檢驗(yàn)?zāi)P偷谋憩F(xiàn)?;販y框架使用基于事件驅(qū)動的Pyalgotrade程序框架搭建,將模型在t時刻產(chǎn)生的交易信號記為xt,計算xt處于過去一年交易信號,即序列
xt-252,xt-251……xt-1的分位數(shù),并在t時刻按照以下交易策略進(jìn)行倉位設(shè)置:當(dāng)因子值向上超過80%分位數(shù)時開多,回落到70%分位數(shù)時平多;當(dāng)因子值向下跌落10%分位數(shù)時開空,回漲到20%分位數(shù)時平空。
(三)模型評估
1.神經(jīng)網(wǎng)絡(luò)模型:AEMLP和LSTM
考慮到神經(jīng)網(wǎng)絡(luò)模型的不穩(wěn)定性,我們對AEMLP模型和LSTM模型經(jīng)上述交叉驗(yàn)證參數(shù)搜索得到5組最優(yōu)參數(shù),并分別進(jìn)行訓(xùn)練,最終采用5個模型的均值平均作為回測對象。
回測結(jié)果顯示,兩種神經(jīng)網(wǎng)絡(luò)模型整體預(yù)測走勢較為相似。LSTM模型在面對大幅下跌的行情時預(yù)測能力較差,出現(xiàn)短期較大回撤,而AEMLP模型得益于帶高斯噪聲的自編碼器,表現(xiàn)出了強(qiáng)大的穩(wěn)健性,波動性較低,但相對而言其預(yù)測精度低于LSTM模型。
2.集成樹模型:GBDT
為保證對比試驗(yàn)的有效性,GBDT模型的訓(xùn)練同樣采用了5組貝葉斯優(yōu)化搜索得到的最優(yōu)參數(shù)分別進(jìn)行訓(xùn)練,并取均值作為回測對象。
通過數(shù)據(jù)分析可見,GBDT模型的夏普比率達(dá)到了2.46,大幅超出了AEMLP模型的1.83和LSTM模型的1.54,最大回撤區(qū)間也是三者中最小的(見表2)。
進(jìn)一步觀察逐筆交易數(shù)據(jù)(見表3),AEMLP模型的總體勝率為56.76%,而LSTM模型總體勝率為68.18%,相較之下,LSTM模型在捕捉細(xì)微市場波動信號方面表現(xiàn)更好,勝率更高。
總體而言,兩個神經(jīng)網(wǎng)絡(luò)模型的表現(xiàn)各有優(yōu)劣,但都無法與GBDT模型相提并論。綜合夏普比率、年化收益率、最大回撤區(qū)間、每手收益均值、月均交易量和勝率等數(shù)據(jù),GBDT模型都達(dá)到了最優(yōu)表現(xiàn)。
結(jié)論與啟示
本文重點(diǎn)對比分析了AEMLP、LSTM和GBDT三種機(jī)器學(xué)習(xí)模型在國債期貨中的應(yīng)用。
通過回測分析,GBDT模型總體優(yōu)于AEMLP和LSTM這兩種神經(jīng)網(wǎng)絡(luò)模型,這與業(yè)界的認(rèn)識相匹配,即在時間序列預(yù)測問題上,樹模型普遍優(yōu)于神經(jīng)網(wǎng)絡(luò)的表現(xiàn)。在國債期貨研究中,建議更多進(jìn)行因子挖掘,關(guān)注波動類和趨勢類因子,以此為基礎(chǔ),采用GBDT等樹模型以提高策略在國債期貨中的收益。
以神經(jīng)網(wǎng)絡(luò)模型為典型代表的深度學(xué)習(xí)算法所擅長的預(yù)訓(xùn)練、遷移學(xué)習(xí)等方面在金融時序數(shù)據(jù)領(lǐng)域還缺乏運(yùn)用,包括數(shù)據(jù)量小、算力消耗大以及穩(wěn)定性差等原因使得它現(xiàn)在還難以戰(zhàn)勝傳統(tǒng)的樹模型。如何通過數(shù)據(jù)增強(qiáng)和預(yù)訓(xùn)練來克服上述問題,加強(qiáng)深度學(xué)習(xí)在金融研究領(lǐng)域的應(yīng)用,是未來值得研究的重要方向之一。(本文獲《債券》創(chuàng)刊10周年征文活動優(yōu)秀獎)
參考文獻(xiàn)
[1] Diebold F X, Rudebusch G D, Aruoba B. The Macroeconomy and the Yield Curve: A Dynamic Latent Factor Approach[J]. Journal of Econometrics. Vol. 131, 2006: 309-338.
[2] Hochreiter S, Schmidhuber J. Long Short-term Memory[J]. Neural Computation 9, 1997: 1735-80.
[3] Gers F A, Schmidhuber J, Cummins F. Learning to Forget: Continual Prediction with LSTM[J]. Neural Computation 2000,12(10): 2451-2471.
[4] Bishop C M.Pattern Recognition and Machine Learning[M]. Springer, 2007.
[5] Friedman J H.Greedy Function Approximation: a Gradient Boosting Machine[J]. Annals of Statistics, 2001: 1189-1232.