DFQ遗传规划价量因子挖掘系统 ——因子选股系列之九十 研究结论 国内量化发展已有十余年,各家机构投资者的alpha因子库已有较大规模,传统人工构建alpha因子的方法已遇到瓶颈。为了对人工因子库进行补充,我们在传统alpha模型的体系下引入遗传规划方法,将挖掘因子的部分交给机器。 此次我们对遗传规划算法进行了全面升级,开发出了一套高效的DFQ遗传规划价量因子挖掘系统。加入自定义的特征和算子,指定适应度指标,从一个随机种群出 发,可以通过多代进化得到更优子代。挖掘过程可以重复多轮,从而可以得到多个适应度高、低相关、有显式表达式的选股因子。 遗传规划算法在选股因子挖掘问题上有其难以被其他方法替代的独特优势,我们概括了12点优势:有着直观易懂的底层逻辑,能够自动化特征生成与选择,可以融合人工先验信息,捕捉非线性和交互效应,生成的因子具有显式表达式,可解释性 强,能够实现全局优化,对噪声较为鲁棒不易过拟合。算法内部透明白盒,可拓展空间大,自由度高。是一个可持续进行的因子挖掘工具。对计算性能要求相对低。应用广泛,既可以挖掘单因子使用,也可以将挖掘出的多个有效低相关的单因子进行合成,获得个股综合打分。还可以与其他机器学习模型结合,互相间并不冲突。 由于在进化过程中缺乏明确的目标引导,常规的遗传规划算法进化效率低下。如何能提升进化效率,在有限的算力,有限的时间内,进化出更多、更好、更短、更低相关的因子,是算法的核心痛点,也是DFQ模型的核心改进点。 DFQ模型主要有7点改进:提升初始种群质量,提升每代种群质量,提升每代产生的有效公式数量,避免公式膨胀,动态调整每代进化参数,降低挖掘因子的相关性,避免无效运算。 DFQ模型以2012-2016年为训练集,2017-2023年作为样本外测试集。输入47个日度量价和日内分钟量价特征和6个常数,配合81个算子,以行业市值中性化IC作为适应度,挖掘全市场月频价量因子。 DFQ模型挖掘效率较高,进行一轮15代完整挖掘用时5-24小时不等,一轮完成后可产生20-50个适应度超过5%,且互相间相关系数不超过50%的单因子。我们在挖掘3天后已找到324个训练集适应度超过5%,不重复,且与人工18个价量因子相关性不高的单因子。其中只有45个在12年以来全样本中性化IC绝对值不到 5%,样本外衰减率不到14%。 结合挖掘出单因子样本内外的表现和逻辑性,我们精选了10个单因子,均满足: 12年以来中性化IC绝对值达到8%以上,中性化ICIR绝对值达到年化4以上;样本外未出现明显效果衰减,全样本IC不大幅低于训练集适应度;12年以来十组多头超额收益达到10%以上;单调性绝对值达到99%以上;与18个人工因子最大相关系数低于50%;因子原始值缺失率低于6%;因子表达式长度低于10。 在弹性网络模型下,DFQ合成因子17年以来的月频RankIC达到12.72%,年化ICIR5.44。合成因子20分组单调性较好,多头端分年表现也十分稳定,2017-2023年每年多头超额均超过8%,17年以来多头超额年化13.29%,年化夏普2.42,最 大回撤仅为3.5%,月度胜率达到74%,月均换手单边72%。20年以来多头表现不降反升,多头超额收益年化提高到14.32%。 风险提示 1.量化模型基于历史数据分析,未来存在失效风险,建议投资者紧密跟踪模型表现。 2.极端市场环境可能对模型效果造成剧烈冲击,导致收益亏损。 金融工程|专题报告 报告发布日期2023年05月28日 杨怡玲yangyiling@orientsec.com.cn 执业证书编号:S0860523040002 刘静涵021-63325888*3211 liujinghan@orientsec.com.cn 执业证书编号:S0860520080003香港证监会牌照:BSX840 分析师情感调整分数ASAS:——因子选股系列之八十九 2023-03-28 基于偏股型基金指数的增强方案:——因 2023-03-06 子选股系列之八十八分析师研报类alpha增强:——因子选股 2023-02-17 系列之八十七研报文本情感倾向因子:——《因子选股 2022-12-06 系列研究之八十六》基于财报的业绩超预期度量:——因子选 2022-10-25 股系列之八十五分析师覆盖度因子改进:——《因子选股 2022-08-23 系列研究之八十四》 有关分析师的申明,见本报告最后部分。其他重要信息披露见分析师申明之后部分,或请与您的投资代表联系。并请阅读本证券研究报告最后一页的免责申明。 目录 一、DFQ遗传规划价量因子挖掘系统概述4 二、遗传规划算法介绍6 2.1算法原理6 2.2算法优势7 2.3基本流程9 三、DFQ模型核心改进点:提升进化效率11 3.1提升初始种群质量11 3.2提升每代种群质量12 3.3提升每代产生的有效公式数量13 3.4避免公式膨胀13 3.5动态调整每代进化参数14 3.6降低挖掘因子的相关性14 3.7避免无效运算14 四、DFQ模型实验结果15 4.1数据说明15 4.2特征与算子15 4.3适应度选择15 4.4模型运行效果15 4.5单因子展示18 4.6多因子合成23 五、总结27 风险提示28 图表目录 图1:多因子选股体系4 图2:DFQ遗传规划价量因子挖掘系统5 图3:遗传规划算法中的公式树示例(depth=3,length=7)9 图4:DFQ遗传规划价量因子挖掘系统核心改进点11 图5:2000个随机种群的适应度与公式长度分布11 图6:不增加父子竞争机制的运行结果示例12 图7:不增加额外的父代筛选保留机制的运行结果示例12 图8:不增加降低重复率机制的运行结果示例13 图9:不加公式膨胀限制的遗传规划运行结果示例14 图10:运用遗传规划算法进行因子挖掘的执行信息(连续两轮)16 图11:运用遗传规划算法进行因子挖掘的执行结果(一轮)17 图12:运用遗传规划算法进行因子挖掘的执行结果(连续两轮)17 图13:18个人工价量因子列表18 图14:18个人工价量因子绩效表现(2012.1.1-2023.4.17)18 图15:DFQ遗传规划挖掘324个单因子全样本中性化IC分布(2012.1.4-2023.4.14)19 图16:DFQ遗传规划挖掘324个单因子全样本中性化年化ICIR分布(2012.1.4-2023.4.14).19图17:DFQ遗传规划挖掘324个单因子全样本单调性指标分布(2012.1.4-2023.4.14)19 图18:DFQ遗传规划挖掘324个单因子全样本10组多头超额收益分布(2012.1.4-2023.4.14) ...................................................................................................................................................19 图19:DFQ遗传规划挖掘10个单因子绩效表现(2012.1.4-2023.4.14)20 图20:DFQ遗传规划挖掘10个单因子多头超额收益净值(2012.1.4-2023.4.14)22 图21:DFQ遗传规划挖掘10个单因子多头分年超额收益(2012.1.4-2023.4.14)22 图22:18个人工价量因子的原始值相关系数矩阵23 图23:DFQ遗传规划挖掘合成因子VS18个人工合成因子绩效表现-zscore等权VS弹性网络回归(2017.1.11-2023.4.14)24 图24:DFQ遗传规划挖掘合成因子20组分年超额-弹性网络回归(2017.1.11-2023.4.14)24 图25:DFQ遗传规划挖掘合成因子20组超额净值-弹性网络回归(2017.1.11-2023.4.14)25 图26:DFQ遗传规划挖掘合成因子-弹性网络回归下自变量出现次数(2017.1.11-20234.14)25 图27:合成因子回归残差绩效表现(2017.1.11-2023.4.14)26 一、DFQ遗传规划价量因子挖掘系统概述 多因子选股体系主要包括alpha模型、风险模型、交易成本模型和组合优化四个模块。alpha模型负责对股票收益或alpha的预测,对组合收益的影响相对更大,是量化研究的重中之重。 图1:多因子选股体系 基本面数据 另类数据 分析师 数据 交易成本 风格暴露 跟踪误差 客观 约束 量价数据 Alpha 模型 风险模型 组合优化 目标 组合 因子生成 因子 筛选 因子 加权 线性 转换 初始 Alpha 因子库 精简Alpha因子库 多因子 zscore 预测收益率 绩效归因 交易执行 机器学习 Rank 检验 行业轮动 有效 事件 人脑? 机器? 主观观点 事件库 数据来源:东方证券研究所绘制 传统的因子生成过程更多依赖人工。国内量化发展已有十余年,各家机构投资者的alpha因子库已有较大规模。再靠人工发现一个新增的有效因子不易,因子挖掘的周期越来越长,传统人工构建alpha因子的方法已经遇到瓶颈。为了对人工因子库进行补充,我们在传统alpha模型的体系下引入遗传规划方法,将挖掘因子的部分交给机器。 在alpha因子构建中,可以引入的常见机器学习模型主要有两大类:遗传规划和神经网络。神经网络方法我们在之前的报告《神经网络日频alpha模型初步实践》、《周频量价指增模型》、 《多模型学习量价时序特征》中已有介绍,近年来市场对于神经网络模型的探索层出不穷,不少模型的表现十分优异。但神经网络方法相对黑箱,无法知道得出的因子具体代表什么含义,并且神经网络相对容易过拟合,模型训练时间也较长。遗传规划算法近年来市场关注度不高。在之前的报告《机器因子库相对人工因子库的增量》中我们对遗传规划算法也已经进行了初步探索,但当时采用的模型相对简单基础,很多细节没有充分考虑到。市场对于遗传规划算法存在一些刻板印象,认为遗传规划没有目标引导,进化效率低。然而我们通过研究发现,通过对算法的优化改进,可以有效提升挖掘因子的效率,能够在尽量短的时间内挖掘出更多更好的因子。并且遗传规划方法得到的因子均有显性公式,随机化多样化的搜索策略也使得它相对不易过拟合,有其难以被替代的独特优势。 此次,我们对遗传规划算法进行了全面的升级,开发出了一套高效的DFQ遗传规划价量因子挖掘系统。加入了自定义的特征和算子,指定适应度指标,从一个随机种群出发,可以通过多代进化得到更优子代。挖掘过程可以重复多轮,从而可以得到多个适应度高、低相关、有显式表达式的选股因子。 图2:DFQ遗传规划价量因子挖掘系统 父代3 父代 特征公式1 算子 适应度指标 预测目标 … 公式1 … 父代n … 子代n … 子代n 精英 子代k 公式1 公式1 初始种群 第一轮精英种群 输入 随机最优局部 优质基因遗传 核 父代1父代2心 :提 第一代子代 第有效进化升 子代2 子代3 —进 效 轮子代1化 率 第n代子代 动态调参重复遗传进化 子代1 精英子代1 子代2 子代3 精选优质个体 … 下一轮挖掘从新的初始种群开始,结合之前的挖掘信息, 重复多轮,即可得到多个适应度高、低相关、有显式表达式的选股因子。 数据来源:东方证券研究所绘制 二、遗传规划算法介绍 2.1算法原理 遗传规划算法(GeneticProgramming,简称GP)是一种遗传算法的特定类型,用于解决机器学习中的优化问题。遗传规划算法被广泛应用于特征选择,模型选择和超参数优化等多种任务中,也同样适用于选股因子挖掘问题。 首先,我们需要理解什么是遗传算法。遗传算法是一种搜索优化方法,灵感来自自然选择和达尔文的进化论,尤其是“适者生存”的原理。遗传算法中有一些关键概念,如“种群”,“交