

摘要:當前,機器學習在金融投資領域的應用備受市場機構關注。本文基于10年期國債期貨數據,經特征工程處理,采用不同模型進行訓練,通過回測分析檢驗模型的有效性。結果表明,梯度提升決策樹模型在訓練效率和預測準確率上都要高于帶自編碼器的多層感知器模型和長短期記憶網絡模型。本文為機器學習在金融領域的進一步研究應用提供了有效借鑒。
關鍵詞:國債期貨 機器學習 遺傳規劃 神經網絡 梯度提升決策樹
近年來,機器學習迅速發展,在各行各業的時間序列預測業務中表現出了強大的能力。本文基于國債期貨市場數據,構建了完整的機器學習流程。
本文的試驗分析步驟如下。一是對10年期國債期貨原始日頻數據進行特征工程處理,挖掘有效的量價因子作為新的特征,并根據回測結果對上述因子進行進一步篩選。二是選取主流的機器學習模型作為研究對象,主要考慮包括帶自編碼器的多層感知器(AEMLP)和長短期記憶網絡(LSTM)兩種神經網絡模型,以及傳統機器學習模型中的梯度提升決策樹模型(GBDT)。然后分別對上述模型進行參數調優和交叉驗證訓練,并構建回測框架進行驗證分析。三是基于上述研究,得出機器學習在國債期貨應用中的結論與啟示。
基于遺傳規劃的因子挖掘
(一)遺傳規劃簡介
遺傳規劃(Genetic Programming)是遺傳算法(Genetic Algorithm)的一個分支,是一種啟發式的監督學習方法,更多應用于特征挖掘。
1.遺傳規劃流程
在具體實踐中,遺傳規劃會先生成一系列隨機公式作為初始種群,根據某種標準計算其適應度,并保留其中最優秀的部分個體作為新的父代。這些父代再通過交叉、變異等方法生成新的公式并進行篩選,如此反復。
2.遺傳規劃實現
事實上,對于任意一個合法的公式,它總是由一些算子、變量和常量組成。遺傳規劃基本的算子包括加減乘除和常用的非線性算子,如自然對數和三角函數,對于具體的問題可以自定義不同的算子。在遺傳規劃中進化方法包括交叉、子樹變異、Hoist變異、點變異等,而適應度作為衡量個體優秀程度的指標,其類似于其他機器學習方法中的模型評價指標或損失函數。
(二)因子挖掘
本文選取10年期國債期貨的日頻價格、交易量和累計持倉量等原始數據,以及常用指標作為輸入遺傳規劃的特征集合(見表1)。另外,選取國債即期收益率曲線,包括1-3個月,6個月、9個月、1年、3年、5年、10年、20年的關鍵期限數據??紤]到收益率曲線與國債期貨的關聯性,通過主成分分析提取前三個主成分添加到特征集合中,其累計方差貢獻率達98.85%,即該三個主成分包含了國債收益率數據的大部分信息,可用于代表國債收益率數據。
同時本文構造了一系列時間序列算子用于生成新因子,通過修改gplearn源代碼隨機生成一定范圍內的整數,作為每個時序算子的時間窗口的數值。
每個因子的適應度定義為其與國債期貨收益率的三個月滾動信息系數的均值,其中信息系數(以下簡稱IC)為因子值與下期國債期貨收益率的相關系數。隨機生成公式作為初始種群,演化得到的適應度最大的公式即為我們所要尋找的因子。
(三)因子篩選
基于上述遺傳規劃挖掘,得到大量IC超過7%的因子,表明這些因子預測能力較強,包含波動類因子(如Alpha_8)、趨勢類因子(如Alpha_59)、其他復雜因子(如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為例,其含義為當日10年期國債期貨收盤價相對于30日前收盤價變化量的15日回歸系數。
以下通過回測對上述同類因子進行進一步地篩選,使得特征之間的相關性盡量低,同時保證因子的有效性。
回測過程如下,選擇2020年1月至2021年12月作為回測區間。交易策略則采用當因子值向上超過80%分位數時開多,回落到60%分位數時平多;當因子值向下跌落20%分位數時開空,回漲到40%分位數時平空?;谏鲜鼋灰撞呗詫lpha_8進行回測,結果是年化收益率3.21%,勝率達到73.33%,最大回撤為2.05%。據此回測結果,發現Alpha_8是一個有效的因子。值得注意的是,兩年間總共只進行了15手交易,月均交易數僅為0.6,因此當該因子與其他相關性低的有效因子結合時,我們可以發現更多交易機會,進而得到更高的收益率。
機器學習模型的應用研究
近年來,在各大主流機器學習競賽平臺上獲勝方案多為神經網絡模型和樹集成模型,綜合考慮模型對二分類問題的適用性,以及對處理和預測時間序列數據的適用性,本文使用LSTM模型、AEMLP模型和GBDT模型來進行對比實驗。其中,LSTM模型是循環神經網絡的一個變體,在處理較長的序列變化數據中有更好的表現。AEMLP模型通過無監督的方式來學習一組數據的有效編碼,經過多層神經元層層接收及輸出,對分類問題具有較強的自適應和自學習能力。GBDT模型是一種集成學習模型,它將許多弱分類器組合得到一個強大的分類器,在許多機器學習任務中表現良好。
基于本文選擇的LSTM、AEMLP和GBDT三種機器學習模型,我們進行了一系列比較試驗,觀察不同機器學習模型在給定的10年期國債期貨數據上的表現。經過特征工程處理,我們得到從2015年3月20日至2021年12月31日共1657條日頻數據,92個特征。將這些歷史數據劃分為模型的訓練集和測試集,其中2020年1月前的數據為訓練集,2020年1月至2021年12月的數據為測試集。
(一)模型訓練
模型訓練是利用訓練集數據對模型進行擬合,從而求解模型參數的過程。對于網絡架構部分的超參數,使用網格搜索和隨機搜索兩種方法來尋找最優超參數。根據慣例,本文將神經元數量設為2的冪次,同時網絡堆疊深度不超過10層,特征的歸一化處理采用z-score標準化。
對于AEMLP模型,本文對編碼器(Enocder)、解碼器(Decoder)和多層感知器(MLP)三部分分別設計網絡。對于Encoder部分,本文額外考慮引入高斯噪聲(Gaussian Noise),以此來提升模型的穩健性。在MLP部分,將同樣的MLP結構作為堆疊層(Layers),其余參數的解釋都與Encoder部分一致。
對于LSTM模型,遍歷單元數的范圍為4至128,便于檢查更多的并行數是否有利于該問題的學習。若返回序列為錯誤,則每個LSTM循環單元返回一個值,反之則保留每個時間步的值。
對于GBDT模型,選擇使用LightGBM程序框架來實現。作為一個成熟的程序框架,只需要對該框架中回歸樹模型的參數進行調優即可。
對以上三種模型進行調優時,均采用在訓練集上進行5折交叉驗證,使用選定的參數訓練,最大學習次數設定為150次。神經網絡模型初始學習率為5×10-6,根據epoch數進行自適應調整。
(二)模型測試
將訓練得到的模型在測試集,即2020年1月至2021年12月的數據上進行回測,以檢驗模型的表現?;販y框架使用基于事件驅動的Pyalgotrade程序框架搭建,將模型在t時刻產生的交易信號記為xt,計算xt處于過去一年交易信號,即序列
xt-252,xt-251……xt-1的分位數,并在t時刻按照以下交易策略進行倉位設置:當因子值向上超過80%分位數時開多,回落到70%分位數時平多;當因子值向下跌落10%分位數時開空,回漲到20%分位數時平空。
(三)模型評估
1.神經網絡模型:AEMLP和LSTM
考慮到神經網絡模型的不穩定性,我們對AEMLP模型和LSTM模型經上述交叉驗證參數搜索得到5組最優參數,并分別進行訓練,最終采用5個模型的均值平均作為回測對象。
回測結果顯示,兩種神經網絡模型整體預測走勢較為相似。LSTM模型在面對大幅下跌的行情時預測能力較差,出現短期較大回撤,而AEMLP模型得益于帶高斯噪聲的自編碼器,表現出了強大的穩健性,波動性較低,但相對而言其預測精度低于LSTM模型。
2.集成樹模型:GBDT
為保證對比試驗的有效性,GBDT模型的訓練同樣采用了5組貝葉斯優化搜索得到的最優參數分別進行訓練,并取均值作為回測對象。
通過數據分析可見,GBDT模型的夏普比率達到了2.46,大幅超出了AEMLP模型的1.83和LSTM模型的1.54,最大回撤區間也是三者中最小的(見表2)。
進一步觀察逐筆交易數據(見表3),AEMLP模型的總體勝率為56.76%,而LSTM模型總體勝率為68.18%,相較之下,LSTM模型在捕捉細微市場波動信號方面表現更好,勝率更高。
總體而言,兩個神經網絡模型的表現各有優劣,但都無法與GBDT模型相提并論。綜合夏普比率、年化收益率、最大回撤區間、每手收益均值、月均交易量和勝率等數據,GBDT模型都達到了最優表現。
結論與啟示
本文重點對比分析了AEMLP、LSTM和GBDT三種機器學習模型在國債期貨中的應用。
通過回測分析,GBDT模型總體優于AEMLP和LSTM這兩種神經網絡模型,這與業界的認識相匹配,即在時間序列預測問題上,樹模型普遍優于神經網絡的表現。在國債期貨研究中,建議更多進行因子挖掘,關注波動類和趨勢類因子,以此為基礎,采用GBDT等樹模型以提高策略在國債期貨中的收益。
以神經網絡模型為典型代表的深度學習算法所擅長的預訓練、遷移學習等方面在金融時序數據領域還缺乏運用,包括數據量小、算力消耗大以及穩定性差等原因使得它現在還難以戰勝傳統的樹模型。如何通過數據增強和預訓練來克服上述問題,加強深度學習在金融研究領域的應用,是未來值得研究的重要方向之一。(本文獲《債券》創刊10周年征文活動優秀獎)
參考文獻
[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.