细微调整见成效 传统反转因子的改进与实测

一、反转因子介绍

在股票市场的量价类因子里,有一个反转因子为人熟知。A股市场反转效应比较明显目前是业界学界都比较赞同的观点。因此,反转因子理应具有比较强的选股能力。目前,流传最广的传统反转因子计算方法如下:

Reverse:反转因子值

P:股票价格

i:第 i 支股票

t:当前时间

η:回溯时间,目前业界普遍使用的是22个交易日(一个自然月)

而海通证券出于提升因子性能的目的,对传统反转因子做了改进。根据研报所示,我们认为每天开盘前一个小时的市场噪声最大,活跃的交易不仅意味着多空方向的不明确,甚至其提供的动量会覆盖掉后续时间段内部分反转因子的因子值。(比如在刚开盘的时候高开2%,激活了股民的买入情绪,羊群效应追涨导致高开后进一步上涨,假设在10:30左右上涨到3%,然而如果全天的基调是跌幅,以-1%的涨跌幅作为收盘状态,那么当日反转因子在传统估算方法里就是-1%,事实上,当日实际跌幅达到4%,因此反转因子就被一部分动量因子破坏而被低估,会导致我们对股票反转效应估计的偏误)

因此调整后的反转因子的计算方法是

Reverse:反转因子值

Rate:股票当日10:30到收盘收益率

P:股票价格

close:收盘时间,即15:00

i:第 i 支股票

t:当前时间

η:回溯时间,目前业界普遍使用的是22个交易日(一个自然月)

而使用反转因子的交易逻辑是:认为中期市场的猛烈上涨或下跌预示着后市的反弹。因此做多全市场跌幅最大的股票,做空全市场涨幅最多的股票,尽管A股市场并没有做空机制,但这不妨碍我们通过观察空头收益来分析因子的有效性。

 

二、传统与调整反转因子绩效实测

为了对比传统反转因子和调整后反转因子的绩效表现,我们严格地进行了分组实测,也就是每个用来对比的回测结果都是两个因子在除了因子计算部分外,一切条件都完全相同的情况下得出的回测结果,能够比较真实得反应两个因子之间的区别。

我们按照每10天调仓,反转计算窗口22个交易日,持股前20支股票的规则。对于传统反转因子,选取股票池为中证800,从2012年1月2日到2019年2月26日的绩效表现如下:

图1:传统反转因子绩效

 

而调整后的反转因子绩效表现如下:

图2:调整反转因子绩效

 

在相同条件下我们可以看到传统反转因子只有微弱的超额收益,说明传统反转因子具备选股能力,但是效果差强人意。而调整后的反转因子却具有稳定的超额收益能力,并且超额收益要远远高于传统反转因子。到这里,我们可以认为对传统反转因子的调整增强了因子的选股能力。

如果测试进行到这里就结束了,不免意犹未尽,因而我们做了如下探究,并发现了一些有趣的现象。

 

三、传统与调整反转因子深入讨论

在第二节中,我们看到了因子调整对传统反转因子的增益。在这一节我们来深入讨论一下这种增益到底体现在哪里。

首先对于因子测试而言,为了保证因子风格的稳定,一般来讲我们是要进行多空组合来讨论收益,即做多因子提升最有可能上涨一定数量的股票,同时做空因子提示最有可能下跌的同样数量的股票。尽管A股市场并不允许做空,但不妨碍我们去观察这样的收益去测试因子。

传统反转因子多空收益组合如下:

图3:传统反转因子多空组合净值曲线

反直觉的是,传统因子在做多尾部股票的时候(即图中橙色曲线绩效)居然取得超额收益率,这种超额收益率甚至在2015年后超过了做多头部股票所能取得的收益。不过不要担心,这是我们希望看见的结果,同时这也进一步印证了对传统因子改进的必要性以及可以作为判断我们改进行为合理的证据。

我希望大家还没有忘记在第一部分我们说明调整传统因子的方法时曾经举过的例子。传统反转因子因为他独有的计算方法,会包含市场行为中的很多噪音,金融数据的特点就是信噪比极低,有时噪音甚至会覆盖掉原有因子所涵盖的信息。事实上,如果我们按照做多尾部股票的逻辑去看待反转因子,反转因子就变成了完全意义上的中期动量(是的,就相当于做多22交易日内涨幅最大的股票)。在之前的叙述里,我们说明了市场信息包含动量信息会对反转因子的计算产生相当程度上的干扰,因此在这个测试,我们验证了反转因子总体是有效的(按照反转因子的用法做多股票取得了超额收益,虽然很低,见图3中超过了benmarket(基准收益)的蓝色曲线);同时也验证了,传统反转因子在计算中很大程度得包含了动量等其他因子得噪音信息(做多尾部股票相当于动量因子得使用方法也获得了超额收益,甚至超额收益相当多超过了做多头部股票,见图3中超过了benmarket(基准收益)的橙色曲线)。而多空组合绩效曲线震荡下挫,产生了亏损远远跑输基准(见图3中远低于benmarket(基准收益)的绿色曲线),说明了传统反转因子市场风格不稳定,难以作为一个有效因子直接使用。同时行业和学界得相关研究也证明近年来为人尽知的传统反转因子失效程度越来越大。因而传统反转因子需要被改进。

我们按文中方法调整后的反转因子的多空组合绩效曲线如下:

图4:调整反转因子多空组合净值曲线

这一次,我们的测试取得了喜人的结果。多空组合中,做多头部股票取得了稳定的超额收益率(见图4高于benmarket(基准收益)的蓝色曲线),同时绩效表现显著优于传统反转因子做多部分带来的超额收益。同时调整反转因子排序下的尾部股票稳定亏损(见图4远低于benmarket(基准收益)的橙色曲线),说明调整后的因子无论是在多空哪个角度,都和我们对因子逻辑的解读完全一致,同时多空组合净值曲线稳定上扬(见图4远高于benmarket(基准收益)的绿色曲线).说明因子风格稳定,具备很强的选股分类能力。因子经过调整后,成为了很纯粹的反转信息因子,剔除了绝大部分诸如动量等其他因子产生的噪声,调整方法有效。

 

四、对调整反转因子的补充说明

 

>>>  信息强度非线性递减

看完上文测试流程,有一些对量化了解比较深入的读者就会问了:“为什么你选了800支股票作为基准股票池,同时只持有二十支呢。行业内部测试质量不一般都选取总股票池的前后10%~20%作为持股数量吗?”

图5:调整反转因分层持仓绩效对比

事实上,持股数量要根据因子本身信息性质和作用范围因地制宜灵活选择。使用因子选股事实上就是在做一种分类,通过因子对股票质量进行分层。但是对于很多因子分出来的质量从高到低层次而言,他们逐层股票质量的递减不是按照相同的比例进行的。对于某些因子,划分出来的层次可以明显得看出每一层股票得后市收益率都在下降,层次鲜明一目了然。但某些因子划分出得层次则是,最好最差层级的股票收益率一目了然(大幅盈利稳定亏损),但中间层次得股票质量参差不齐,很难去界定这些层次之间有什么质量上的本质区别。反转因子就是这样,他对最有可能反转的股票解释能力很强,但对于有些本身收益率波动不温不火获着近期没有什么特别的趋势出现得股票,则没有什么解释能力,这一点从图5中可以看出,我们在股票池以120支股票作为一层,在每层中抽样持有股票,最终的绩效表现说明,除了前最头部前20支,其他均跑输基准。并且图中绩效分层也很明显,层级每下降一级,绩效也随之下降,这说明调整反转因子也很好的区分了不同股票的质量。所以我们选取了前20支反转因子强度最大得股票。

 

>>>  调整反转因子的使用要配合市场周期

经过我们的测试可以看出,调整反转因子有效完成了降噪,成为了一个风格鲜明的因子,也正是这样,纯粹的反转因子就对市场环境越发敏感。我们再来观察一下反转因子的资金曲线,这一次打开超额收益率曲线(图中黄线部分)

图6:调整反转因子策略绩效(打开超额收益曲线)

从图中,我们想说明的规律性一目了然。如果大家还有疑惑,不要紧,我们用以下三张图进一步说明:

图7:调整反转因子策略绩效(打开超额收益曲线)2012.01-2014.08
图8:调整反转因子策略绩效(打开超额收益曲线)2014.11-2015.06

 

图9:调整反转因子策略绩效(打开超额收益曲线)2015.05-2019.02

我们可以看出,调整反转因子的有效性和市场走势具有很大的关联,在市场收益率波动不大的情况下,取得了稳定的超额收益,而一旦出现市场收益率的单边上涨趋势,反转因子就会稳定不断亏损……(尽管图8看上去资金曲线并不好,但是事实上在图8的时间段大盘大幅下跌但策略跌幅远小于大盘且具有稳定为正的超额收益)。这符合反转因子的内部逻辑,再一次印证我们通过调整的确清洗出了一个较为纯粹的涵盖反转信息的因子。因为反转因子解释了中短期股票的超跌情况,并且认为在一个较为平稳的市场下,超跌的股票会在不大于超跌期内产生反弹,因此做多超跌最严重的部分股票以期获取反弹收益。而一旦大盘出现了极端单边的上涨行情,那么全市场的股票几乎都在上升,这个时候,第一,股票本身的跌幅受到市场氛围的影响不可能非常剧烈,因此反弹力度不足;第二在全市场上涨氛围下还在持续下跌的股票,可能时公司基本面或其他地方出了很大纰露,反转效应的alpha不足以弥补这些重大问题或事件带来的下跌趋势,因此在这种市场风格较为极端的情况下,反转因子不仅无效,完全不能跑赢市场指数,甚至还会产生亏损。而中国市场只允许单边做多,因此在大盘极端下跌下,反转因子带来的上升趋势也不足以承受全市场下跌带来的压力,一样很难取得收益(但至少不会像单边上扬行情下一样产生大幅亏损),因此在市场震荡的行情下是反转因子最有效的时候。

因此在使用反转因子的时候,一定要对目前以及近期的市场走势做好足够的分析,要考虑到市场风格再进行因子筛选。这也适用于筛选其他因子(某些基本面因子例外)。

 

五、结语

到此本篇文章针对反转因子的讨论就告一段落了,希望大家在新的一年里都能挖掘到好的因子。


原文链接:传统反转因子的改进与实测

展开阅读全文

没有更多推荐了,返回首页