证券研究报告2024年01月28日 │ 基于遗传规划的对传统量价因子的优化思路 专题内容摘要 遗传规划简介:本文首先介绍了遗传规划的基本概念,包括公式树、 适应度评估、选择、交叉和变异等核心环节,以及其在金融市场分析中的应用场景。 传统量价因子与遗传规划因子挖掘的比较:对比了传统量价因子(如 MACD)与遗传规划因子挖掘方法的优缺点,揭示了遗传规划在处理金融市场复杂、非线性问题方面的优势。 遗传规划模型构建:研究采用了中证500指数的历史数据,对传统量价因子和遗传规划优化后的因子进行了回测和效果评估。结果表明, 遗传规划方法在复杂市场条件下能够挖掘出更为有效的预测因子。 多因子策略构建与测试:文章提出了基于遗传规划的多因子策略,并对其进行了实证检验。结果表明,相较于原始因子,优化后的因子在预测股票价格走势方面具有更好的表现。 改进空间:本文指出了遗传规划在金融市场分析中仍需改进的方面,如数据中性化处理、降低新因子共线性等。 总结:遗传规划因子挖掘技术采用了一种不同寻常的方法来识别潜在 有益的交易信号。该方法通过模拟自然选择的进化过程,随机组合不同的市场数据、数学函数和逻辑操作符来创建复杂的公式。通过多代的选择、交叉和变异,最终筛选出预测能力最强的因子。 将遗传规划因子结合传统技术指标应用于量化选股策略,可以对传统的技术指标有效的改进并提升其预测能力,在中证500基准实测可以获得6%的年化超额收益。 作者 分析师:陆豪 执业证书编号:S0590523070001邮箱:luhao@glsc.com.cn 联系人:康作宁 邮箱:kangzn@glsc.com.cn 风险提示:尽管传统量价因子和遗传规划因子挖掘在技术分析领域都有其 应用价值,但它们适用于不同的市场状况和投资策略。投资者应根据自己的需求和能力,选择合适的工具,同时注意风险管理和多元化投资的重要性。 相关报告 1、《雪球敲入对市场影响研究》2024.01.22 2、《中美养老FOF产品对比研究》2024.01.19 金融工程 金融工程专题 正文目录 1.遗传规划简介3 1.1传统量价因子与遗传规划因子挖掘的比较3 1.2遗传规划(GeneticProgramming)4 2.优化思路5 3.遗传规划模型6 3.1基于遗传规划的量价因子挖掘与优化模型6 3.2获取基础因子7 3.3挖掘结果8 4.单因子测试8 4.1策略构建方法8 4.2测试结果9 5.多因子策略10 5.1策略构建方法10 5.2策略绩效统计10 6.改进空间12 7.总结12 8.风险提示12 图表目录 图表1:公式树4 图表2:遗传规划-基本流程5 图表3:拆解基础因子计算公式6 图表4:基础因子含义7 图表5:基础因子相关性矩阵7 图表6:挖掘结果(日频、周频)8 图表7:原始因子和新因子结果对比(日频,1‰)9 图表8:训练集和测试集对比(日频,1‰)9 图表9:原始因子和新因子结果对比(周频,1‰)9 图表10:训练集和测试集对比(周频,1‰)9 图表11:原始因子和新因子结果对比(周频,3‰)10 图表12:训练集和测试集对比(周频,3‰)10 图表13:策略绩效统计(频率:日频,手续费:1‰)10 图表14:策略业绩曲线(日频,手续费率1‰,左轴为收益率,右轴为超额) ....................................................................11 图表15:策略绩效统计(频率:周频,手续费:1‰)11 图表16:策略业绩曲线(频率:周频,手续费:1‰,左轴为收益率,右轴为超额) ....................................................................11 图表17:策略绩效统计(频率:周频,手续费:3‰)11 图表18:策略业绩曲线(频率:周频,手续费:3‰,左轴为收益率,右轴为超额) ....................................................................12 1.遗传规划简介 1.1传统量价因子与遗传规划因子挖掘的比较 在现代金融市场中,投资者和分析师利用各种技术因子来预测股票价格走势。技术分析方法可分为两大类:传统量价因子以及较新的遗传规划因子。 1.1.1传统量价因子(以MACD为例): 构建逻辑:传统量价因子通常基于一系列假设的市场行为建立,例如趋势跟随或均值回归。以MACD(移动平均收敛发散指标)为例,其基于短期(如12天)和长期 (如26天)的指数移动平均线(EMA)之间的关系来预测价格变化。当短期EMA上升至长期EMA之上时,可能表示一个买入信号;反之,可能是一个卖出信号。 优点: 简单易懂,易于实施; 基于长期市场数据的经验统计,有一定的可靠性; 在特定市场状况下能提供有效的交易信号。缺点: 可能会产生滞后的信号,尤其在市场快速变化时; 在高波动或无趋势市场中的效果可能较差; 依赖于历史数据,无法准确预测所有未来事件。 1.1.2遗传规划因子挖掘 构建过程:遗传规划因子挖掘技术采用了一种不同寻常的方法来识别潜在有益的交易信号。该方法通过模拟自然选择的进化过程,随机组合不同的市场数据、数学函数和逻辑操作符来创建复杂的公式。通过多代的选择、交叉和变异,最终筛选出预测能力最强的因子。 优点: 能够发现并利用市场数据中更深层次的模式和关系; 构建的因子通常比传统方法更加复杂,潜在地涵盖更多信息; 提高了预测性能,尤其是在复杂的市场条件下。缺点: 过度拟合风险,特别是在数据量不足或者市场环境频繁变化的情况下; 结果解释性较差,因为生成的公式往往缺乏直观的逻辑支持。 1.2遗传规划(GeneticProgramming) 遗传规划是一种基于自然选择和遗传学原理的强大算法,属于演化算法 (EvolutionaryAlgorithm)的一个分支,遗传规划具有处理高维数据和全局搜索的能力,利用计算机的算力,能挖掘出人脑难以构建的因子。这一技术特别适合处理金融市场中的复杂、非线性问题,能够挖掘出传统分析方法难以识别的模式。 1.2.1公式树:遗传规划的核心 在遗传规划中,每一个个体都是以树状结构表示的公式或程序,其中树的节点表示运算符(如加、减、乘、除等),叶子节点表示操作数或变量(如价格、成交量等)。 在进化过程中,通过对公式树的各个节点进行随机的交叉和变异等操作来实现父代到子代的进化。 图表1:公式树 资料来源:国联证券研究所整理 公式树的深度和复杂性决定了其表达能力,能够构造出从简单的数学公式到复杂的多变量模型。 1.2.2基本流程:遗传规划的工作机制 遗传规划的基本工作流程如下: 初始种群的生成:从数百到数千个随机生成的公式树开始,这构成了算法的初始种群。 适应度评估:计算每棵公式树的适应度,通常是根据其预测市场数据的准确性或产生利润的能力。 选择(Selection):根据公式树的适应度,选择表现较好的个体作为繁衍后代的父代。 交叉(Crossover):从选定的父代公式树中随机选择两个,并交换它们的部分结构,产生子代。 变异(Mutation):对某些公式树进行随机的修改,例如改变一个节点的运算符,以增加种群的多样性。 新一代的形成:用产生的子代替换掉适应度较低的个体,形成新的种群。 终止条件:如果满足预设的终止条件(如达到特定的迭代次数或适应度阈值),则停止迭代。 通过这个不断迭代的过程,遗传规划能够发现和优化复杂的交易规则和预测模型,最终挑选出最佳的公式用于实际的市场分析。 图表2:遗传规划-基本流程 资料来源:国联证券研究所整理 2.优化思路 现存问题:传统量价因子能够分析市场趋势,判断市场情绪,但存在预测能力弱,回测收益率差等问题。 优化思路:对原有量价因子根据公式进行拆解,在通过遗传规划算法重新组合、进化,从而生成更优的因子。 验证流程: 1、数据获取: 股票池:中证500(000905.SH) 回测区间:2016年1月1日-2023年10月31日 回测频率:日频、周频2、遗传规划因子挖掘: 将选定的量价因子根据公式拆解,选取出相关性低的因子 使用这些因子和自定义的函数集,生成公式,并按照流程进行公式的进化和筛选 3、单因子测试(日频、周频) 4、对比测试结果 5、构建多因子策略 3.遗传规划模型 3.1基于遗传规划的量价因子挖掘与优化模型 1、获取基础因子: 选取四个因子作为研究对象,分别是相对强弱指标、成交量比、20日波动率、长短均线比值 将这些因子根据各自对应的计算公式拆解成基础的因子(如下图所示) 进行中位数去极值、标准化处理,在进行共线性测试,选取相关性较低的因子 2、构建日频和周频两个模型 3、设置超参数和自定义函数集 4、选取2016年1月1日-2020年12月31日的数据作为训练集,训练模型 5、选取2021年1月1日-2023年10月31日的数据作为测试集,和训练集一起,进行单因子测试 图表3:拆解基础因子计算公式 资料来源:国联证券研究所整理 3.2获取基础因子 图表4:基础因子含义 资料来源:国联证券研究所整理 上图为基础因子表达式及含义,经过中位数去极值、标准化处理和共线测试,从中选取U,D,ave_U,ave_D,vol_ratio,std_20,L_S_ratio这些相关性较低的因子进入后续的模型中。 图表5:基础因子相关性矩阵 资料来源:国联证券研究所整理 3.3挖掘结果 下图为日频和周频的因子挖掘结果 图表6:挖掘结果(日频、周频) 资料来源:国联证券研究所整理 4.单因子测试 4.1策略构建方法 本部分研究采用RankIC值分析和分层回测法对新优化的因子进行有效性测试。测试方法主要分为以下几步: 1、对于日频模型,设定1‰的手续费 回测区间: 训练集:2016年1月1日-2020年12月31日 测试集:2021年1月1日-2023年10月31日 第一组:对新因子在训练集中进行单因子测试 第二组:对新因子在测试集中进行单因子测试 第三组:对原始因子在测试集中进行单因子测试 2、通过对比第一组和第二组的结果,验证新因子在样本外的表现是否一致 3、通过对比第二组和第三组的结果,验证新因子相较于原始因子是否更优 4、对于周频模型,设定1‰和3‰的手续费,分别进行上述所有测试,验证不 同频率下结果是否发生改变 4.2测试结果 下图为日频,1‰手续费下单因子策略测试结果 图表7:原始因子和新因子结果对比(日频,1‰)图表8:训练集和测试集对比(日频,1‰) 资料来源:国联证券研究所整理资料来源:国联证券研究所整理 下图为周频,1‰手续费下单因子策略测试结果 图表9:原始因子和新因子结果对比(周频,1‰)图表10:训练集和测试集对比(周频,1‰) 资料来源:国联证券研究所整理资料来源:国联证券研究所整理 下图为周频,3‰手续费下单因子策略测试结果 图表11:原始因子和新因子结果对比(周频,3‰)图表12:训练集和测试集对比(周频,3‰) 资料来源:国联证券研究所整理资料来源:国联证券研究所整理 5.多因子策略 5.1策略构建方法 将得到的5个新因子基于夏普率加权合成1个因子,用这个因子对中证500的成分股进行打分 根据申万一级行业分类,从每个行业分类的成分股中选出前10%的股票(不满10只的因子等权相加合成一只) 将相对强弱指标作为对比因子,进行同样的选股策略 构建投资组合计算在不同调仓频率和手续费下的年化收益和绩效 5.2策略绩效统计 下图为日频,1‰手续费下多因子策略测试结果 图表13:策略绩效统计(频率:日频,手续费:1‰) 资料来源:国联证券研究所整理 图表14:策略业绩曲线(日频,手续费率1‰,左轴为收益率,右