社区所有版块导航
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学习  »  机器学习算法

【最新研究】基于风险中性的深度学习选股策略

量化投资与机器学习 • 7 年前 • 1058 次点击  


量化投资与机器学习

在量化投资的道路上,你不是一个人战斗!

 


公众号近期文章预告

 1、红宝书读书笔记(中文版)

2、金工、量化绿宝书精选解读(中文版)

3、比特币高频交易策略

4、高频交易策略解决方案基于机器学习

5、高频交易基于强化学习

6、高频交易基于核主成分分析

7、模式识别下的人工智能量化策略

8、近期10篇最热门的券商金工研报

9、深度学习在金融中的论述

10、海内外优秀量化文献解读

11、永不停歇的干货

12、券商研报研读系列(一)


从2018年6月4日起,公众号每发布一篇文章,就为大家分享一张Octodex的创意图。

# 002


今天我们为大家带来最新的研报内容,来自广发证券金工团队《风险中性的深度学习选股策略》。下面让我们来一起学习吧!


风险中性的机器学习选股模型

模型训练通过训练样本,确定模型结构,优化模型参数。


预测输出 Y 的维度:3。


输入特征 X 的维度:156(128个因子+28个行业) 通过网格搜索获取最优的模型结构。


选取模型结构为: 156(输入层)-512-200-200-200-128-3(输出层) 即一共包含5个隐层。


隐层节点数依次为:512(隐层1)、 200(隐层2)、 200(隐层3)、 200(隐层4)、 128(隐层5)。 


提高深层神经网络选股性能的主要方法:


1、采用relu等激活函数。 

2、将优化目标函数MSE改成交叉熵。

3、Batch normalization技术。

4、Dropout技术。


采用Keras作为机器学习平台:


1、可以选择Tensorflow、CNTK、Theano(目前已经停止更新)作为后端。
2、目前已经支持多GPU。
3、显卡选择:Nvidia GTX Titan XP, GTX 1080Ti, GTX Titan, GTX 1080, GTX1070, GTX 1060。

机器学习多因子选股模型:从股票特征中提取信息,对股票未来的收益进行预 测,选出能够产生超额收益的股票组合。


多因子选股模型:

挑选出未来一期能够产,生超额收益的股票。

↓↓↓

风险中性的多因子选股模型:

挑选出未来一期在剥离风险因子影响后,能够产生的超额收益的股票。


如何实现上述目标? 针对具体的应用场景,构建适当的机器学习预测模型。


普通的样本标注方法

训练时,根据未来一期的股票涨跌幅来给样本贴“标签”:上涨、下跌、平盘同一时刻,按照涨跌幅进行排序,确定样本的输出标签。

行业中性的样本标注:寻找不同行业内能够跑出超额收益的股票

训练时,根据未来一期的股票涨跌幅来给样本贴“标签”:上涨、下跌、平盘 同一时刻,按照涨跌幅进行排序,确定样本的输出标签。

市值中性的样本标注:寻找不同市值区间内能够跑出超额收益的股票


训练时,根据未来一期的股票涨跌幅来给样本贴“标签”:上涨、下跌、平盘 同一时刻,按照涨跌幅进行排序,确定样本的输出标签。


风险中性的样本标注:更一般的方法

未来一期股票收益率对风险因子做线性回归,获得残差,按残差进行样本标注



策略与实证分析

策略流程


数据预处理

因子标准化:

1、异常值、缺失值处理

2、极值压边界处理

3、沿时间方向的因子标准化

4、沿截面的因子标准化

5、按照机器学习模型来调整因子分布

风险中性的深度学习选股模型的IC

IC的平均值为0.082,标准差为0.108。

深度学习因子与流通市值的相关性:IC序列的相关性


经过行业和市值中性化之后,深度学习因子更少受到市值因子的影响。


深度学习因子与流通市值的相关性:截面相关性


经过行业和市值中性化之后,深度学习因子更少受到流通市值因子的影响。


回测参数设置 

  • 调仓周期:10个交易日

  • 股票池:中证500成份股,剔除ST股票,剔除交易日停牌和涨停、跌停的股票

  • 超配组合:调仓时分10档,等权买入深度学习模型打分最高的一档

  • 对冲基准:中证500指数

  • 原始因子数据:估值因子、规模因子、反转因子、流动性因子、波动性因子、技术 指标,共计128个因子,以及28个行业0-1变量

  • 风险因子:行业、流通市值

  • 深度学习模型训练:每半年滚动更新模型,采用最近4年的样本作为训练集

  • 策略回测:2011年1月-2018年4月30日

  • 交易成本:千分之三


普通的深度学习选股策略

2011年以来,年化收益率19.71%,最大回撤 -5.35%,胜率为 69.5%,信息比2.47。



风险中性的深度学习选股策略
2011年以来,年化收益率21.95%,最大回撤 -5.03%,胜率为 74.6%,信息比2.92。



风险中性深度学习选股策略
年化收益率21.95%,最大回撤 -5.03%,胜率为 74.6%,信息比2.92

普通深度学习选股策略
年化收益率19.71%,最大回撤 -5.35%,胜率为 69.5%,信息比2.47



机器学习策略表现的同质性:不同策略的表现有一定的相关性

用普通深度学习模型的IC对风险中性深度学习模型的IC进行回归,R方为0.84。 说明两种策略的表现有较强的相关性。 


机器学习策略每期组合的同质性:选取的组合有较大的差异

当组合规模N为50时,两种深度学习选股策略平均每期选到的股票有41.9%重合。(参考:两次独立的随机选股中,平均有10%重合。)


当组合规模N为100时,两种深度学习选股策略平均每期选到的股票有53.3%重合。(参考:两次独立的随机选股中,平均有20%重合。)



总结

  • 将风险因子中性化处理后,可以构建新的深度学习选股模型,该模型受风险 因子的影响较小。


  • 2011年以来,中证500内选股对冲策略年化收益率21.95%,最大回撤 - 5.03%,胜率为 74.6%,信息比2.92。

  • 即使是采用同样的特征和模型结构,风险因子中性化之后,训练的策略也会 有较大的差别,可以通过此方法丰富深度学习选股策略的多样性。


本文旨在对所研究问题的主要关注点进行分析,因此对市场及相 关交易做了一些合理假设,但这样会导致建立的模型以及基于模型所得 出的结论并不能完全准确地刻画现实环境。而且由于分析时采用的相关 数据都是过去的时间序列,因此可能会与未来真实的情况出现偏差。本 文内容并不是适合所有的投资者,客户在制定投资策略时,必须结合自 身的环境和投资理念。


知识在于分享

在量化投资的道路上

你不是一个人在战斗


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/L9q3uSp6IH
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/13104
 
1058 次点击