条件选股因子设计与实践

一、产品背景

股票投资的逻辑是基于市场信息对股价驱动需要经历一个过程,投资者通过信息的感知或者基于行情的经验观察进行投资决策。市场信息分为公共信息和私有信息,但对于普通投资者,所能够获得的大部分是公共信息。如果通过海量的公共信息以及之间的相互关系挖掘出有效的投资指标或者因子,帮助投资者进行决策是券商研究、投顾所亟需解决的问题。

目前我们的智能产品或者策略都遇到类似问题,产品仅仅是一些简单指标或者市场标准化逻辑研发而来,并不能保证效果,市场竞争力不足。而券商现在大都需要进行回测比较验证产品效果。鉴于此,我们需要采用更加科学的方法对目前产品升级。可行的途径是:从目前已有的因子挖掘新的且有效的因子,然后基于这些因子进行产品研发或者形成策略,从而在根源上解决该问题。我们目前设计了一套可以进行因子挖掘、因子检验和可视化展示,提供整个从数据到产品的解决方案。

二、系统架构

从市场上获取基础数据进行清洗后存入基础因子库,后端运用机器学习、数据挖掘、异常值处理、指标归一化等方法对数据进行清洗后存入选股因子库,用户输入选股条件后系统自动推荐股票池,后续会进行因子扩展挖掘出更多有效因子及策略组合进行回测方便用户及时调整持仓策略。

三、数据处理

因子的本质就是股票某种数量化的特征,其过程可以理解为就是一个函数计算的过程。

因此我们针对现有因子进行因子挖掘的过程可以理解如下:构建量化指标作为函数的输入,经过函数计算的过程,最终函数输出得到新的因子。数据处理如下图所示:

整个过程可以分为以下几步:

  1. 数据层:

    对于数据来说,目前我们以股票时序数据,包括行情价量数据、基本面因子、level2因子作为原始数据,经过数据预处理(缺失值处理,去极值等)操作,最终数据流入到算法层;

  2. 算法层:

引入机器学习思想,将其数据进入分为训练集和验证集,并支持用户自定义算子和适应度,采用ML+遗传规划框架进行因子挖掘,其中过程采用网格参数调参进行超参数优化,最终得到满足条件的因子表达式(子代因子),存入DB,为了防止过拟合,我们引入交叉验证环节,计算生成的子代因子在验证集上面的适应度得分,以此得到子代因子的样本外表现;

  1. 模拟验证:

为了进一步保证挖掘算法的稳定性,对因子进行样本外实时模拟计算,然后检验有效性,真正保证样本外测试。将模拟表现与历史回测对比,仅将二者都稳定的上架都正式环境;

4)应用层:

对于C端用户,我们为客户提供因子选股服务,从而让用户能够从多个维度进行选股;对于B端用户,我们做有效性检验展示,将生成的因子在真实数据上的回测结果进行区分展示,从而让用户对其股票投资进行辅助决策。

四、因子挖掘

目前我们已挖掘了105个条件因子可供选择,用户自己选择选股因子后系统会根据大数据算法的语义分析进行识别,最终选出符合用户需求的股票。多因子选股涵盖市场上所有主流因子, 后期会从公司层面、外部环境、市场表现等其他维度挖掘出新的选股因子,不断丰富因子库。

1)因子分类

包括选股范围、技术指标、K线形态、行情量价、主力行为、公告研报、财务数据等,在确定几大类因子之后,又将大类因子进行细分。

a.选股范围:市场、行业板块、地区板块、概念板块等;

b.技术指标:MACD、MA 、KDJ 、RSI 、BOLL等;

c.K线形态:底部红三兵、多方炮、深跌回弹、阶段新高、小步上扬等;

d.行情量价:涨跌幅、成交量、换手率、股价、强势股等;

e.主力行为:龙虎榜、高管增持、股东户数、人均持股、机构净买入等;

f.公告研报:机构关注最多、评级预测调高、盈利预测调高等;

g.财务数据:市盈率、每股收益、流通市值、业绩预增、流动比率等。

2)因子来源

因子指标主要根据金融理论构造或者机器学习算法挖掘训练得到,在获取到基础元数据后会经过一系列的处理包括有效因子筛选与二次衍生计算等。其中市场部、行情和技术数据来源于最新的行情数据,基本面与财务类数据来源于上市公司最新发布的财务报告。我们运用因子间的相关性矩阵对因子进行数据清洗与挖掘,衍生计算出符合条件的筛选因子。

序号 描述 来源
1 市场行情基础数据 数据中心、行情中心
2 基本面财务数据 财务报告
3 扩展因子 金工计算

3)因子更新频率

不同因子指标更新频率不同,为保证展示最新最全的数据我们对每个因子的最小时间颗粒度进行划分,如行情数据实时更新精确到秒,主力行为、K线形态日频更新展示最新交易日数据,财务指标季度更新按财务报告披露时间来展示,股本股东、分红送转等事件触发类不定期更新

序号 描述 备注
1 行情类数据 实时更新
2 日频类数据 按日更新
3 季频类数据 按季度更新
4 除权类、股本类、状态类 不定期更新

4)因子挖掘算法流程设计:

1.使用ML+遗传规划思想进行因子挖掘:

a.使用原始价量数据因子和自定义函数集,生成大量公式,按照遗传规划的思想进行公式的进化和筛选,由于模型给参数的变化敏感,为了避免人工给定参数导致最后结果不理性,我们采用网格参数调参,最终以损失函数最小得到最优参数;

b.因子适应度的计算:对于线性多因子模型来说,我们通常采用IC均值,ICIR,多空收益,多头超额收益,分组检验单调性等方式,对于非线性多因子模型来说,我们通常可以采用最大互信息系数MIC来作为因子适应度指标衡量,进入到备选因子池

c.备选池因子筛选:在备选因子池中,计算两两因子间的相关系数,剔除相关性高的两个因子中适应度偏低的因子,得到最终的因子池

d.根据生成的子代因子在训练集和验证集上的适应度表现,在验证集上平均适应度达到最优即可停止运行

2.效果验证

对挖掘的因子做回归IC测试和分层测试以及相关性分析。

3.筛选最终因子

由于挖掘的因子存在高共线性,因此需要做剔除,也就是采用分层法剔除相关性较高的因子,最终迭代筛选过后得到因子集合即可


五、策略回测

策略回测是专为中小投资者量身打造的量化策略,标准多因子模型通常从公司财务、估值指标、一致预期以及技术指标出发构建一套公司的价值评价体系,然后选择价值绩优股持有较长一段时间以获取基本面带来的收益。但随着交易拥挤带来的因子失效,实际投资中不再满足于长期投资收益,开始重视短期波动产生的收益,比如,国内大部分私募基金的Alpha策略都辅助于T+0策略增强。更重要的是,利用最新的人工智能技术挖掘短线因子也是将量化投资发挥到极致的最佳途径。

鉴于基本面因子和短线因子各自的优缺点,我们将致力于完美融合短线因子和基本面因子,搭建多因子选股模型,再结合择时和仓位管理方法形成最终量化策略。二者的结合有助于提高换仓频率,同时根据波动率调整仓位可以强化风险资产的杠杆属性,提高单次盈利和增强动量效应。

对筛选出的股票进行模拟组合,从业绩稳定性、增长性、持续性、市场反应等方面进行分析从而形成最优化配置组合,获得稳定的超额收益。优化主要是建立再模型基础之上,通过等权重、均值方差、IC加权法等机器学习算法进行因子权重仓位配置。建立好优化的多因子模型之后通过回测来评价优化模型的有效性,模型回测把组合运用到实际股市中形成投资策略,得到投资策略的相关指标如年化收益、夏普比率、最大回撤、波动率等来检验模型在股市中的适用性。


六、总结

在错综复杂的市场环境和金融数据越来越庞大的背景下金融量化已蔚然成风。从数以百万计的碎片化新信息中去芜存菁,利用机器学习、量化交易等辅助算法将大数据转化为投资洞见,用数据说话投资可以更美的

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容