人工智能系列之十一:人工智能选股之stacking集成学习-20180503-华泰证券-28页-3mb
报告摘要
人工智能选股之 Stacking 集成学习模型分析总结
核心内容
本报告探讨了Stacking 集成学习模型在多因子选股中的应用,并提出了一种改进的 Stacking 框架,以提升模型的预测能力和稳定性。报告通过对比测试和实证分析,展示了 Stacking 模型在金融数据预测中的优势,特别是其在控制回撤和提高超额收益方面的表现。
主要观点
-
Stacking 模型简介:
- Stacking 是一种集成学习框架,通常包含两层结构。第一层使用多个基模型生成预测值,第二层使用这些预测值进行进一步学习,从而提高整体预测性能。
- 在金融数据预测中,Stacking 模型能够有效结合不同模型的预测结果,提升预测的准确性和稳定性。
-
改进的 Stacking 模型:
- 本文提出的改进 Stacking 模型在第一层不仅使用不同模型,还使用差异化的训练数据,进一步增强模型输出的差异性,从而提升预测的稳定性。
- 这种改进适用于训练数据和预测数据分布不同的金融领域。
-
基模型选择:
- 通过定义适应度指标 $ S = \text{Sharpe} / \text{Corr} $,筛选出与 XGBoost_72m 集成效果最佳的基模型。
- 最适合与 XGBoost_72m 集成的模型为 XGBoost_6m 和逻辑回归_6m。
-
Stacking 模型的关键结论:
- 第一层应使用不同种类的基模型和训练数据,以达到最佳预测效果。
- 集成模型的数量并非越多越好,需保证基模型之间预测能力好且相关性低。
- 短的验证集长度(如2个月)有助于提高模型的超额收益和信息比率,降低最大回撤。
-
Stacking 模型表现:
- 最优模型(XGBoost_72m 与逻辑回归_6m 集成)在2011年2月至2018年4月期间,相对于中证500,年化超额收益在 $27.75% \sim 29.45%$,最大回撤在 $8.92% \sim 10.18%$,信息比率在 3.33~3.84 之间,Calmar 比率在 2.73~3.25 之间,其中 Calmar 比率提升最为显著。
-
模型预测值的单因子测试结果优秀:
- 该模型在单因子测试中表现优异,因子分5层测试的年化收益率为 $33.82%$,夏普比率为 5.03。
- 在2015年以来的测试中,因子表现更佳,IC均值为 $12.57%$,IR比率为 1.59,IC值大于零比例为 $94.74%$。
-
模型构建与测试流程:
- 使用月度滚动方法进行模型训练和测试,每个月末选取下月收益排名前30%的股票作为正例,后30%的股票作为负例。
- 模型构建包含数据获取、特征和标签提取、特征预处理、训练集和交叉验证集划分、样本外测试、模型评价等步骤。
-
对比测试结果:
- 对比测试1:Stacking1 和 Stacking2 相比单一模型(如 XGBoost_72m 和 XGBoost_6m)在年化超额收益率和信息比率上有显著提升,同时最大回撤更小,Calmar 比率更高。
- 对比测试2:不同验证集长度对模型表现有影响,2个月验证集的模型表现最佳。
- 对比测试3:增加基模型数量(如加入逻辑回归_6m)可进一步提升模型表现,但需注意基模型之间的相关性。
关键信息
- 模型选择:XGBoost_72m 与逻辑回归_6m 的组合表现最优。
- 验证集长度:2个月验证集有助于提升模型的稳定性。
- 因子池:包含70个因子,涵盖估值、成长、财务质量、杠杆、市值、动量反转、波动率、股价、情绪、技术、换手率、股东等。
- 回测区间:2011年1月31日至2018年4月27日。
- 回测方法:采用行业中性策略,每只股票视为一个样本,按因子大小分层配置,等权组合。
- 模型性能指标:
- 年化收益率:组合1为21.57%,多空组合为33.82%。
- 夏普比率:多空组合为5.03。
- 信息比率:组合1为3.58,多空组合为5.03。
- 最大回撤:组合1为46.97%,多空组合为6.17%。
- Calmar 比率:Stacking2 为3.25,XGBoost_72m 为2.73。
风险提示
- Stacking 模型高度依赖基模型的表现。
- 若未来市场投资环境发生变化,导致基模型失效,Stacking 模型可能失效。
附录
-
传统 Stacking 与改进 Stacking 的区别:
- 传统 Stacking 使用相同训练数据和不同模型。
- 改进 Stacking 使用不同训练数据和不同模型,增强预测稳定性。
-
模型构建流程:
- 数据获取、特征和标签提取、特征预处理、训练集和交叉验证集划分、样本外测试、模型评价。
-
因子池:
- 包括估值、成长、财务质量、杠杆、市值、动量反转、波动率、股价、情绪、技术、换手率、股东等类别,每个类别下有多个具体因子。
-
模型测试流程:
- 每月末截面期选取下月收益排名前30%的股票作为正例,后30%的股票作为负例。
- 使用逻辑回归作为第二层模型,进行集成学习。
-
模型评价方法:
- 回测年化收益率、夏普比率、信息比率、最大回撤、胜率等。
图表目录
- 图表1:Stacking 集成学习示意图
- 图表2:传统 Stacking 集成学习
- 图表3:改进 Stacking 集成学习
- 图表4:各机器学习模型相对中证500的超额收益(训练数据为72个月)
- 图表5:各机器学习模型相对中证500的超额收益(训练数据为6个月)
- 图表6:XGBoost 各训练期长度训练所得模型相对中证500的超额收益
- 图表7:其他基模型预测值与 XGBoost_72m 预测值的相关系数
- 图表8:基模型夏普比率
- 图表9:基模型适应度指标 S
- 图表10:Stacking 模型构建示意图
- 图表11:选股模型中涉及的全部因子及其描述
- 图表12:Stacking 模型滚动训练过程
- 图表13:Stacking 模型滚动测试过程
- 图表14:单因子分层测试法示意图
- 图表15:Stacking 模型分层组合绩效分析
- 图表16:Stacking 模型分层组合回测净值
- 图表17:Stacking 模型各层组合净值除以基准组合净值示意图
- 图表18:Stacking 模型分层组合1相对沪深300月超额收益分布图
- 图表19:Stacking 模型多空组合月收益率及累积收益率
- 图表20:Stacking 模型组合在不同年份的收益及排名分析(分十层)
- 图表21:不同市值区间 Stacking 模型组合绩效指标对比图(分十层)
- 图表22:不同行业 Stacking 模型分层组合绩效分析(分五层)
- 图表23:对比测试1中各种模型选股指标对比(全A选股,行业中性)
- 图表24:对比测试1中各种模型超额收益和回撤表现
- 图表25:对比测试1中各种模型IC,IR指标
- 图表26:对比测试1中各种模型IC值累积曲线
- 图表27:对比测试2中各种模型选股指标对比(全A选股,行业中性)
- 图表28:对比测试2中各种模型超额收益和回撤表现
- 图表29:对比测试2中各种模型IC,IR指标
- 图表30:对比测试2中各种模型IC值累积曲线
- 图表31:对比测试3中各种模型选股指标对比(全A选股,行业中性)
- 图表32:对比测试3中各种模型超额收益和回撤表现
- 图表33:对比测试3中各种模型IC,IR指标
- 图表34:对比测试3中各种模型IC值累积曲线
- 图表35:传统 Stacking 模型的构建过程
- 图表36:改进 Stacking 模型的构建过程
展开完整摘要
试读结束,高清完整版pdf/doc/ppt,请点下载