社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

深度学习与因子择时

量化投资与机器学习 • 1 年前 • 247 次点击  


量化投资与机器学习微信公众号,是业内垂直于量化投资、对冲基金、Fintech、人工智能、大数据领域的主流自媒体公众号拥有来自公募、私募、券商、期货、银行、保险、高校等行业30W+关注者,曾荣获AMMA优秀品牌力、优秀洞察力大奖,连续4年被腾讯云+社区评选为“年度最佳作者”。


来自:Multi-Factor Timing with Deep Learning

作者:Paul Cotturo、Fred Liu、Robert Proner


不同的风格因子在不同的市场环境下有着显著不同的表现。因子择时就是配置有较大概率获得正超额收益的因子。本文尝试使用深度学习的分类模型,预测某个风格因子获得正超额收益的概率(只预测涨跌)。
对于择时的因子范围,本文选择了6个文献和业界普遍使用的风格因子:超额收益(MKT)、规模(SMB)、价值(HML)、盈利能力(RMW)、投资(CMA)和动量(MOM)。
输入的特征为123个经济指标和149的个股指标,具体见原文附录。

多任务学习

不同的因子之间共享一个低维度的关联结构(称为隐含因子),相对每个因子单独学习,使用多任务学习能够有效降低过拟合。如下图1所示,为一个多任务学习的架构。
最左侧输入的为原始因子值,经过中间一个共享的全联接层降维后,最后再由各自风格因子的联接层进行预测。
图1
上图是一个简单的多任务学习模型的示意,在本文中,对于共享层的搭建如下图所示。首先,将宏观经济指标(Macroeconomic predictors)和个股指标(Financial predictors)分别喂入两个LSTM模型,然后在合并后输入一个全联接共享层,最后再同图1一样由各自风格因子的联接层进行预测。
图2
测试表现
下图为各模型样本外预测准确率的表现。其中MT为图1结构的模型,DMT为图2结构的模型。其他为单独的机器学习模型,如SVM就是支持向量机,GBT就是决策树模型。可以看出DMT模型的平均预测准确率最高。
下图为简单的多因子择时回测,即每一期等权配置预测超额为正的因子组合,其累计收益如下图所示:
下图为单因子择时表现,不同模型在不同因子择时策略的表现:

因子重要性

可以看出在大部分模型中尾部风险和价格趋势、杠杆和盈利能力类别的因子重要性都很高。

总结

首先,本文发现经济结构和时间序列动态的结合显著提高了因子时序模型的预测精度。
其次,本文的研究结果表明,具有经济结构的深度学习模型在多因子投资组合中产生显著的经济收益,并通过纳入时间序列动态进一步增强。
第三,本文发现将多任务学习与时间序列动态相结合,相对于买入并持有基准,可以在所有因子中产生一致的经济收益。
第四,本文证明了因子时机最重要的变量,包括尾部风险和价格趋势、杠杆和盈利能力类别的变量。
第五,本文证明了这些影响变量之间的非线性相互作用对于时间的有效因子是重要的。

总体而言,本文的动态多因子深度学习方法改进了因子时机,为更可靠地研究驱动因子风险溢价的经济机制铺平了道路,并强调了将经济动机限制纳入因子投资深度学习模型的价值。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/167590
 
247 次点击