在「Stacking集成學習中基模型的對比和選取」一章中,我們得出在全A選股情況下,XGBoost_6m以及邏輯回歸_6m最適合與XGBoost_72m進行Stacking集成,本節中,我們將依次展示以下模型的回測結果。
1.Stacking1:將XGBoost_6m和XGBoost_72m進行集成,驗證集數據為2個月。
2.Stacking2:將邏輯回歸_6m和XGBoost_72m進行集成,驗證集數據為2個月。
3.Stacking3:將XGBoost_6m和XGBoost_72m進行集成,驗證集數據為3個月。
4.Stacking4:將邏輯回歸_6m和XGBoost_72m進行集成,驗證集數據為3個月。
5.Stacking5:將XGBoost_6m和XGBoost_72m進行集成,驗證集數據為4個月。
6.Stacking6:將邏輯回歸_6m和XGBoost_72m進行集成,驗證集數據為4個月。
7.Stacking7:將XGBoost_6m,邏輯回歸_6m和XGBoost_72m進行集成,驗證集數據為2個月。
對照組模型:
1. XGBoost_72m
2. XGBoost_6m
3. 邏輯回歸_6m
其中,主要進行三組對比測試:
對比測試1:將Stacking1,Stacking2和對照組模型對比,主要觀察Stacking集成學習相比使用單一模型有哪些區別。
對比測試2:將Stacking1~ Stacking6模型進行對比,主要觀察不同基模型和不同驗證集數據長度對選股結果的影響。
對比測試3:將Stacking1,Stacking2,Stacking7進行對比,主要觀察Stacking中第一層基模型數量對選股結果的影響。
1. 對比測試1
對比測試1將Stacking1,Stacking2和對照組模型對比,主要觀察Stacking集成學習相比使用單一模型有哪些區別。
我們構建了全A選股策略並進行回測,各項指標詳見圖表23,選股策略是行業中性策略,策略組合的行業配置與基準(滬深300、中證500、中證全指)保持一致,各一級行業中選N個股票等權配置(N=2,3,4,5,6)。從圖表23可以看出,XGBoost_72m模型相比XGBoost_6m和邏輯回歸_6m在年化超額收益率和信息比率上有很大優勢,但是超額收益最大回撤更大。而Stacking1和Stacking2模型具有和XGBoost_72m相近的年化超收和信息比率並且超額收益最大回撤也較小,從而取得了最高的Calmar的比率。
圖表24展示了對比測試1中5種模型相對中證500的超額收益和回撤的走勢。可以看出,Stacking1和Stacking2模型在保持了較高的超額收益增長率的同時,有效地控制了超額收益回撤,2017年以來超額收益最大回撤在8%以內。
如果將模型的輸出視為單因子,則可以對該單因子進行IC值分析,圖表25和圖表26展示了5種模型輸出值的IC值分析結果,可以看出,2011年至今,Stacking1和Stacking2模型的IC值都比較穩定,表現接近XGBoost_72m。特別是在2015年至今,Stacking2模型表現最好,顯示出Stacking模型在預測能力方面相比單一模型的優勢。
對比測試1的結論為:Stacking集成學習有效結合了基模型的優點(XGBoost_72m的高收益、高信息比率,XGBoost_6m和邏輯回歸_6m的低回撤),在各項選股指標上都有不錯的表現。
2. 對比測試2
對比測試2將Stacking1~ Stacking6模型進行對比,主要觀察不同基模型和不同驗證集數據長度對選股結果的影響。
我們構建了全A選股策略並進行回測,各項指標詳見圖表27,選股策略是行業中性策略,策略組合的行業配置與基準(滬深300、中證500、中證全指)保持一致,各一級行業中選N個股票等權配置(N=2,3,4,5,6)。從圖表27可以看出,驗證集數據越長(Stacking5和Stacking6最長,Stacking1和Stacking2最短),年化超額收益率越大,但是超額收益最大回撤也越大,從Calmar比率的角度來看,Stacking2模型表現最好。各模型信息比率相差不大。
圖表28展示了對比測試2中6種模型相對中證500的超額收益和回撤的走勢。
如果將模型的輸出視為單因子,則可以對該單因子進行IC值分析,圖表29和圖表30展示了6種模型輸出值的IC值分析結果,從IR比率的角度來看,Stacking2和Stacking4模型表現最好。
從對比測試2中,可以得出兩個結論:
1.較短的驗證集數據長度(2個月)可以使得Stacking集成學習模型的超額收益最大回撤較小,Calmar比率較高。
2.相同的驗證集數據情況下,集成不同類模型的Stacking(XGBoost_72m和邏輯回歸_6m,對應Stacking2、Stacking4、Stacking6)要比集成相同類模型的Stacking(XGBoost_72m和XGBoost_6m,對應Stacking1、Stacking3、Stacking5)表現更好。
3. 對比測試3
對比測試3:將Stacking1,Stacking2,Stacking7進行對比,主要觀察Stacking中第一層基模型數量對選股結果的影響。
我們構建了全A選股策略並進行回測,各項指標詳見圖表31,選股策略是行業中性策略,策略組合的行業配置與基準(滬深300、中證500、中證全指)保持一致,各一級行業中選N個股票等權配置(N=2,3,4,5,6)。從圖表31可以看出,集成3個模型的Stacking(Stacking7)沒有比集成2個模型的Stacking(Stacking1和Stacking2)表現更好。
圖表32展示了對比測試3中3種模型相對中證500的超額收益和回撤的走勢。同樣可以看出,三種模型的表現相差無幾。
如果將模型的輸出視為單因子,則可以對該單因子進行IC值分析,圖表33和圖表34展示了3種模型輸出值的IC值分析結果,從IR比率的角度來看,Stacking2模型表現最好,三種模型的IC 值累積曲線相差無幾,Stacking2的IC 值累積曲線波動最小。
對比測試3的結論為:在本文研究的多因子選股領域,Stacking集成學習並非集成越多的基模型表現就越好,要達到更好的集成學習效果,需要各個基模型兩兩之間相關性低,且有足夠好的預測能力。