最新动态
华泰 | 基于遗传规划的一致预期因子挖掘——华泰人工智能系列之54
2024-11-12 01:22

  炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会!

华泰 | 基于遗传规划的一致预期因子挖掘——华泰人工智能系列之54

林晓明     S0570516010001     SFC No. BPY421   研究员

李子钰     S0570519110003     SFC No. BRV743研究员

何   康     S0570520080004     SFC No. BRB318研究员

报告发布时间:2022年04月07日

摘要

华泰金工人工智能54:本文介绍了基于遗传规划的一致预期因子挖掘

遗传规划是一种启发式的公式演化技术,通过模拟自然界中遗传进化的过程来逐渐生成契合特定目标的公式群体,适合进行因子挖掘。本文运用遗传规划挖掘一致预期因子,是遗传规划系列研究的第四篇报告。实现层面,本文针对一致预期数据的特点量身定制数据处理方案,适配了遗传规划中的矩阵运算算法,使得短时间内进行大量因子挖掘成为可能。结果层面,本文展示了挖掘出的11个因子及其测试结果,因子可解释性较高,我们也对因子的构建逻辑和模式进行了详细分析。

分析师一致预期数据蕴含丰富的信息,具有深度挖掘的价值

分析师一致预期数据归纳总结了卖方分析师报告对个股的财务指标预测、评级以及关注情况,是除公司财报数据、交易数据以外重要的第三方数据,一致预期数据可达到日频更新的水平,一定程度上能反映基本面的高频变化,具有深度挖掘的价值。本文使用的一致预期数据包含:一致预期EPS、ROE、PE、PB等财务指标类预测数据,以及业绩上下调、分析师预测标准差等衍生数据。本文还引入真实的PE_TTM来与一致预期数据结合挖掘复合因子。

针对一致预期数据的特点和遗传规划的需求,本文量身定制数据处理方案

考虑到每日每只股票通常包含2-3个未来年份的一致预期数据,本文设计了一个三维数据结构来存储一致预期数据,第一维是股票,第二维是交易日,第三维是预测年份。该数据结构具有以下优点:(1)解决了年度财务报表公布前后一致预期数据预测年份变动的问题。(2)适配了遗传规划中的矩阵运算算法,算法可在三维数据结构上快速运算得出因子值,使得短时间内进行大量因子挖掘成为可能。具体实现中,我们主要对gplearn的因子计算模块进行了修改,可支持三维数据结构的矩阵运算。

本文展示了挖掘出的11个因子及其测试结果,因子都有较高的可解释性

对于挖掘出的一致预期因子,其可解释性至关重要,分析因子的构建逻辑可得以下结论:(1)11个因子中,计算变化率的函数ts_return出现次数最多,这与一致预期数据的内涵相符,分析师对于上市公司的预期变化,往往表明公司的基本面发生变化,可能对公司未来的股价产生影响。(2)复合因子中,主要为数据之间的乘除,说明这两种运算是构建复合因子的有效方式。(3)一致预期数据也可以和真实的基本面数据结合挖掘复合因子,其中本文挖掘所得的复合因子可视为一种超预期因子。(4)改进的因子中多出现除以分析师预测标准差的运算,这可能与新冠疫情以来分析师预测离散度增大有关。

风险提示:通过遗传规划挖掘的选股因子是历史经验的总结,存在失效的可能。本文测试的股票池仅包含有分析师覆盖的A股,测试结论不能推广到全部A股。

遗传规划研究回顾

遗传规划是一种启发式的公式演化技术,通过模拟自然界中遗传进化的过程来逐渐生成契合特定目标的公式群体,适合进行因子挖掘。在华泰金工人工智能系列前期报告中,有三篇遗传规划因子挖掘相关的报告,涉及量价因子挖掘、适应度改进、交叉验证等内容。本文中,我们将把遗传规划运用于分析师一致预期因子的挖掘。

下图介绍了遗传规划的总体流程,遗传规划从随机生成的公式群体开始,通过模拟自然界中遗传进化的过程来逐渐生成契合特定目标的公式群体。我们对遗传规划程序包gplearn进行深度改进,实现了遗传规划在因子挖掘上的应用。关于遗传规划的详细原理,可参见报告《人工智能23:基于遗传规划选股因子挖掘》(2019.6.10)。

分析师一致预期数据的特点和处理方法

一致预期数据的特点和形式

分析师一致预期数据归纳总结了市场上卖方分析师报告对个股的财务指标预测、评级以及关注情况,是除公司财报数据、交易数据以外重要的第三方数据,蕴含丰富的信息。且分析师一致预期数据可达到日频更新的水平,一定程度上能反映基本面的高频变化,具有深度挖掘的价值。我们以朝阳永续分析师一致预期数据库1.0版本为例,来对本文涉及的数据进行说明,如下图所示。

每日每只股票的一致预期数据个数可能是不同的,一般包含2-3个未来年份(通常有卖方持续覆盖的情况下,不论是否披露财报,均有3年预测期数据,财报更新后没有卖方持续跟踪的,有2年预测期数据)。当某年的财务报表披露后,该年的一致预期数据就不再出现,所以一致预期数据的预测年份是在变化的。如下图,在2021年2月2日,股票000002有三年的一致预期数据,而股票000001则只有两年的一致预期数据,这是由于股票000001的2020年财报已披露,最小预测年份就会变成2021年,而股票000002的2020年财报尚未披露,故最小预测年份是2020年。

针对遗传规划需求的一致预期数据处理方法

在使用遗传规划进行量价因子挖掘时,因子计算过程是在二维(第一维是股票,第二维是交易日)的量价数据上进行矩阵预算。而在进行一致预期因子挖掘时,情况变得更加复杂了一些,每日每只股票通常包括未来2-3个年份的预期数据,此时需要一个三维数据结构来存储数据,第一维是股票,第二维是交易日,第三维是预测年份,如图表5所示,我们把原始一致预期个股数据表中的数据依次填入到三维数组中。

此外针对每只股票,每个交易日都使用最小预测年份的一致预期数据,因此还需要构建一个二维数组存储股票在各个交易日的最小预测年份。

在构造好以上数据结构后,我们将通过一个简单的案例展示因子的计算方式。如图表6所示,以因子表达式ts_mean(CON_EPS,5)为例,计算过程为:

1.     首先对交易日进行遍历,在存储最小预测年份的二维数组中找到每只股票当日的最小预测的年份。如2021年2月2日,股票000001和股票000002的最小预测年份分别为2021年和2020年。

2.     针对每只股票在三维数组中查找过去5个交易日相同预测年份的数据,如股票000001需要找到(000001,2021/1/27-2021/2/2,2021)的数据,而股票000002则需要找到(000002,2021/1/27-2021/2/2,2020)的数据。

3.     基于每只股票的窗口数据,即可以计算ts_mean(CON_EPS,5)的运算值,该日运算完成后,再进行2021年2月3日的计算,最后将所有交易日的运算值合并则可以得到最终的运算结果。

4.     一致预期数据中,可能会出现ENTRYDATE(入库日期)晚于TDATE(预测日期)的情形,我们针对此也进行了处理,避免使用未来信息。

遗传规划一致预期因子挖掘的测试流程

测试流程包含下列步骤:

1. 数据获取和特征提取:

(1)     股票池:全A股中具有分析师一致预期数据的股票,剔除ST、PT股票,剔除每个截面期下一交易日涨停和停牌的股票。

(2)     回测区间:2012/4/27~2022/3/31。时间排前80%的截面为训练集,后20%的截面为验证集。

(3)     原始因子列表如图表7所示,函数列表如图表8所示。

(4)     预测目标:个股20个交易日后的收益率。

2. 使用图表7中的因子和图表8中的函数集,生成大量公式,按照遗传规划的流程进行公式的进化和筛选。公式适应度的计算:假设有公式F,得出该公式在截面t上对所有个股的因子向量Ft后,进行行业市值中性化,并计算因子的IC均值为适应度。

3. 对遗传规划挖掘出的因子进行 IC 测试、分层测试和相关性分析。

遗传规划所得一致预期因子的单因子测试

单因子测试方法简介

IC值分析法

IC值分析模型构建方法如下:

1.  股票池:沪深300成分股、中证500成分股、全A股,剔除ST、PT股票,剔除每个截面期下一交易日停牌的股票。

2.  回溯区间:2012/4/27~2022/3/31。

3.  截面期:每个交易日作为截面期计算因子值,与该截面期之后20个交易日内个股收益进行计算。

4.  先将因子暴露度向量进行去极值、行业市值中性化,再计算处理后的T期因子暴露度向量和T+1期股票收益向量的Spearman秩相关系数,作为T期因子Rank IC值。

5.  因子评价方法:

a)     Rank IC值序列均值——因子显著性;

b)     Rank IC值序列标准差——因子稳定性;

c)     IC_IR(Rank IC值序列均值与标准差的比值)——因子有效性;

d)    Rank IC值序列大于零的占比——因子作用方向是否稳定。

分层回测法

依照因子值对股票进行打分,构建投资组合回测,是最直观的衡量因子优劣的手段。分层测试法与IC值分析相比,能够发掘因子对收益预测的非线性规律。也即,若存在一个因子分层测试结果显示,其Top组和Bottom组的绩效长期稳定地差于Middle组,则该因子对收益预测存在稳定的非线性规律,但在IC值分析过程中很可能被判定为无效因子。

分层测试模型构建方法如下:

1.     股票池、回溯区间与IC值分析法相同。

2.     换仓:每隔20个交易日换仓,在每个换仓截面期核算因子值,构建分层组合,在截面期下一个交易日按当日收盘价换仓,交易费用为单边0.2%。

3.     分层方法:先将因子暴露度向量进行一定预处理(下文中会指明处理方式),将股票池内所有个股按处理后的因子值从大到小进行排序,等分N层,每层内部的个股等权重配置。当个股总数目无法被N整除时采用任一种近似方法处理均可,实际上对分层组合的回测结果影响很小。分层测试中的基准组合为股票池内所有股票的等权组合。

4.     多空组合收益计算方法:用Top组每天的收益减去Bottom组每天的收益,得到每日多空收益序列r1,r2,...rn,再计算累积收益。

5.      评价方法:全部N层组合年化收益率(观察是否单调变化),多空组合的年化收益率、夏普比率、最大回撤等。

因子汇总说明

因子表达式和说明

我们用遗传规划进行因子挖掘,并精选了下表的11个因子进行展示。

通过所列因子的表达式可知:

1.      上表的因子中,计算变化率的函数ts_return出现次数最多,说明一致预期数据的变化率是一类常见的因子构建逻辑。这与一致预期数据的内涵相符,分析师对于上市公司的预期产生变化,往往表明公司的基本面发生变化,可能对公司未来的股价产生影响。

2.      上表的一致预期复合因子中,主要为数据之间的乘除,说明这两种运算是构建一致预期复合因子的有效方式。

3.      除了一致预期数据之间构建复合因子,一致预期数据也可以和真实的基本面数据构建复合因子。例如,Alpha11是一致预期EP和EP的复合因子,可将其视为基于一致预期EP的超预期因子。

4.       改进的一致预期因子中,多出现除以分析师预测标准差(DEGREE)的运算。根据文献[1]的研究,2020年新冠疫情以来,会发生意料之外的地区流动限制,从而增加分析师对疫情地区公司预测的离散度。由下图可知,2020年以来分析师预测标准差的中位数相比前几年明显上升。分析师预测标准差越小,一致预期分歧越小,因此在一致预期因子的计算中除以分析师预测标准差是一种改进因子的方法。

因子相关性分析,因子IC测试和分层回测结果汇总

下图为Alpha1~Alpha11因子的相关性矩阵。可知Alpha1~Alpha4之间的相关性较高,实际上它们都是一致预期盈利变化相关的因子,其他因子间的相关性则较低。图表12~图表14为Alpha1~Alpha11在沪深300、中证500和全A股内的测试结果汇总。

因子详细测试结果

Alpha1的详细测试结果

Alpha1 = ts_return(CON_EPS, 60),因子含义是一致预期EPS在过去60个交易日的变化率。由于该因子逻辑简明,已经被广泛使用,但仍有一定改进空间,改进后的因子为Alpha2。图表15~图表20为Alpha1的测试结果。

Alpha2的详细测试结果

Alpha2=div(ts_return(CON_EPS,60),ts_decay_linear(DEGREE, 60)),因子含义是一致预期EPS在过去60个交易日的变化率除以过去60个交易日分析师预测标准差(DEGREE)的线性衰减加权值。该因子在Alpha1的基础上,引入分析师预测标准差来进行调整,标准差越小,一致预期分歧越小,对因子取值有正向贡献。图表21~图表26为Alpha2的测试结果。从RankIC均值、IC_IR和多空组合表现来看,Alpha2相比Alpha1在中证500成分股和全A股表现更好。

Alpha3的详细测试结果

Alpha3=div(ts_return(CON_ROE,60),ts_decay_linear(DEGREE, 60)),因子含义是一致预期ROE在过去60个交易日的变化率除以过去60个交易日分析师预测标准差的线性衰减加权值,该因子形式上与Alpha2一致,属于改进的一致预期ROE变化率因子。图表27~图表32为Alpha3的测试结果。

Alpha4的详细测试结果

Alpha4 = sub(CON_ROE, ts_min(CON_ROE, 60)),因子含义是当前的一致预期ROE值与过去60个交易日一致预期ROE最小值之差。图表33~图表38为Alpha4的测试结果。

Alpha5的详细测试结果

Alpha5=-rank_div(ts_return(inv(CON_EP),60), ts_decay_linear(DEGREE, 60)),因子先计算一致预期PE过去60个交易日的变化率和过去60个交易日分析师预测标准差的线性衰减加权值,再将二者的排序数相除并取相反数,本质上是一个改进的一致预期PE变化率因子。图表39~图表44为Alpha5的测试结果。

Alpha6的详细测试结果

Alpha6 = div(ts_return(CON_GPE, 40),ts_mean(DEGREE, 40)),因子含义是一致预期GPE在过去40个交易日的变化率除以过去40个交易日分析师预测标准差的线性衰减加权值,该因子形式上与Alpha2类似,属于改进的一致预期GPE变化率因子。图表45~图表50为Alpha6的测试结果。

Alpha7的详细测试结果

Alpha7=div(sub(ts_decay_linear(UP_NUMBER90, 60),ts_decay_linear(DOWN_NUMBER90,60)), ts_decay_linear(DEGREE, 60)),因子先分别计算个股季度业绩上调家数和下调家数过去60个交易日的线性衰减加权值,再除以过去60个交易日分析师预测标准差的线性衰减加权值。该因子属于改进的预期业绩上下调因子。图表51~图表56为Alpha7的测试结果。

Alpha8的详细测试结果

Alpha8 = -ts_return(div(inv(CON_BP), CON_EPS), 60),因子先计算一致预期PB和一致预期EPS的比值,再计算其过去60个交易日的变化率,最后取相反数。该因子属于一致预期复合因子。图表57~图表62为Alpha8的测试结果。

Alpha9的详细测试结果

Alpha9 = ts_return(mul(CON_GPE, CON_CAGR), 60),因子先计算一致预期GPE和一致预期净利润2年复合增长率的乘积,再计算其过去60个交易日的变化率。该因子属于一致预期复合因子。图表63~图表68为Alpha9的测试结果。

Alpha10的详细测试结果

Alpha10 = rank_mul(CON_CAGR, CON_EPS),因子计算一致预期净利润2年复合增长率和一致预期EPS排序数的乘积。该因子属于一致预期复合因子。图表69~图表74为Alpha10的测试结果。

Alpha11的详细测试结果

Alpha11 = div(EP, ts_mean(delay(CON_EP,5), 60)),因子首先将一致预期EP平移5天(即跳过最近5天一致预期EP),再取过去60个交易日的均值,最后用个股真实的EP除以该均值。因子的内在含义是个股当前EP和前一段时间一致预期EP均值的比值,可视为一种超预期因子。图表75~图表80为Alpha11的测试结果。

总结和讨论

本文总结如下:

本文介绍了基于遗传规划的一致预期因子挖掘。遗传规划是一种启发式的公式演化技术,通过模拟自然界中遗传进化的过程来逐渐生成契合特定目标的公式群体,适合进行因子挖掘。实现层面,本文针对一致预期数据的特点量身定制数据处理方案,适配了遗传规划中的矩阵运算算法,使得短时间内进行大量因子挖掘成为可能。结果层面,本文展示了挖掘出的11个因子及其测试结果,因子可解释性较高,我们也对因子的构建逻辑和模式进行了详细分析。

分析师一致预期数据蕴含丰富的信息,具有深度挖掘的价值。分析师一致预期数据归纳总结了卖方分析师报告对个股的财务指标预测、评级以及关注情况,是除公司财报数据、交易数据以外重要的第三方数据,一致预期数据可达到日频更新的水平,一定程度上能反映基本面的高频变化,具有深度挖掘的价值。本文使用的一致预期数据包含:一致预期EPS、ROE、PE、PB等财务指标类预测数据,以及业绩上下调、分析师预测标准差等衍生数据。本文还引入真实的PE_TTM来与一致预期数据结合挖掘复合因子。

针对一致预期数据的特点和遗传规划的需求,本文量身定制数据处理方案。考虑到每日每只股票通常包含2-3个未来年份的一致预期数据,本文设计了一个三维数据结构来存储一致预期数据,第一维是股票,第二维是交易日,第三维是预测年份。该数据结构具有以下优点:(1)解决了年度财务报表公布前后一致预期数据预测年份变动的问题。(2)适配了遗传规划中的矩阵运算算法,算法可在三维数据结构上快速运算得出因子值,使得短时间内进行大量因子挖掘成为可能。具体实现中,我们主要对gplearn的因子计算模块进行了修改,可支持三维数据结构的矩阵运算。

本文展示了挖掘出的11个因子及其测试结果,因子都有较高的可解释性。对于挖掘出的一致预期因子,其可解释性至关重要,分析因子的构建逻辑可得以下结论:(1)11个因子中,计算变化率的函数ts_return出现次数最多,这与一致预期数据的内涵相符,分析师对于上市公司的预期变化,往往表明公司的基本面发生变化,可能对公司未来的股价产生影响。(2)复合因子中,主要为数据之间的乘除,说明这两种运算是构建复合因子的有效方式。(3)一致预期数据也可以和真实的基本面数据结合挖掘复合因子,其中本文挖掘所得的复合因子可视为一种超预期因子。(4) 改进的因子中多出现除以分析师预测标准差的运算,这可能与新冠疫情以来分析师预测离散度增大有关。

关于使用遗传规划挖掘预期类因子的研究,仍有以下值得尝试的方向:

1.     本文使用的是朝阳永续计算后的一致预期数据,实际上还可从原始研报数据出发构建定制的分析师预期数据(如核心分析师预期)来进行因子挖掘。

2.     本文初步尝试了一致预期数据和真实基本面数据结合进行因子挖掘,这种方法或有深入研究的空间。

参考文献

[1] Gao H , Wen H , Yu S, “Pandemic Effect on Analyst Forecast Dispersion: Earnings Uncertainty or Information Lockdown?”, Emerging Markets Finance and Trade 2021: Volume 57, Issue 6, Pages 1699-1715.

风险提示

通过遗传规划挖掘的选股因子是历史经验的总结,存在失效的可能。本文测试的股票池仅包含有分析师覆盖的A股,测试结论不能推广到全部A股。

    以上就是本篇文章【华泰 | 基于遗传规划的一致预期因子挖掘——华泰人工智能系列之54】的全部内容了,欢迎阅览 ! 文章地址:http://mdekt.bhha.com.cn/quote/552.html 
     行业      资讯      企业新闻      行情      企业黄页      同类资讯      网站地图      返回首页 康宝晨资讯移动站 http://weazh.bhha.com.cn/ , 查看更多