策略分享

【教学贴】市值行业中性化到底是什么?

由anthony_wan创建,最终由qxiao 被浏览 232 用户

本文内容已经过期,不再适合平台最新版本,请查看以下最新内容,作为参考资料学习。

旧版声明

本文为旧版实现,仅供学习参考。

https://bigquant.com/wiki/doc/demos-ecdRvuM1TU


众所周知,Barra因子分析是目前行业内外最常用的因子分析体系。

然而在做Barra体系分析的时候常用的一个方式就是行业或市值中性化,今天主要用最易懂的语言介绍一下什么是barra因子分析体系,以及什么是因子中性化。在这里我会避开繁琐的数学公式,尽量深入浅出的让Barra体系以及市值中性化清晰易懂。


做因子分析之前首先我们需要有一个因子计算方式,在这里我们用一个动量因子来举例。

因子:

mean(close_0, 44) / close_0 - 1


这个因子是用过去(44天收盘价/当日收盘价)-1的方式获得,任何一只上市超过44天的股票都可以获取到这个因子。所以假如市场上有5000只股票,那么其实每一天我们都可以获取一个表格,这个表格的列就是【股票代码,日期,因子值】,而每一行就是这一天股票的信息。如图。

{w:100}有了这个表格,我们就可以开始Barra体系的因子分析了。

在这里我们先介绍无行业市值中性化的方法:

首先我们会设定一个调仓周期,设定好之后我们会开始分层回测。

分层回测可以理解为准备N个木桶,将股票因子值从大到小等份放入N个木桶中,如果分10层回测,那么就是准备10个“木桶”,分层回测的好处是可以观察因子的收益曲线是否具有**“单调性”。因为因子是作为选股的指标,所以我们通常不仅仅要求因子最大的股池和最小的股池在未来收益率上有比较明显的差别,我们也希望第二大的因子股池和第二小的因子股池有较大的区别。一个好的因子在分层回测的时候如果未来收益率呈清晰的升序状态或降序状态,我们可以认为该因子具有较强的“单调性”**。


以宽邦平台回测模块的分层回测图为例:

{w:100}

在这里我们选择5个“桶”,进行5层的分层回测,我们发现经过4年的时间,1号桶股池净值为0.11,2号为0.56, 3-5号在0.7附近。这个说明,如果因子值为全市场最小的20%时,未来5日收益会很差,因子值为全市场20-40%小时,未来5日收益也不怎么样,全市场剩下的60%的股票未来收益其实相差不大。

那么根据这个指标,其实就可以构建出一些比较好的筛选策略,例如将该因子做为指标剔除最小的20%,避免策略买入这20%股票造成亏损。


那么什么是市值和行业中性化呢?

我们都知道,A股是由31个申万行业一级行业构成,不同的行业的股票会呈现出不同的特点。例如银行板块的股票通常特性是市盈率低,市值高。而科技板块通常是市盈率高,市值中小,同时基本面营业收入等不及一些蓝筹行业。所以当我们用一些基本面,甚至动量因子选股的时候,经常会受到行业大趋势(行业beta)或市值的影响。

举个例子,如果我们在2022年用市盈率因子进行选股,这是我们会发现市盈率>0,且最低的股票都是银行股偏多,这时这个策略实际选的都是银行股。那么银行这个板块如果因为一些宏观政策的影响带来的上涨直接会导致这个因子股池净值的变动,而这个变动实际与这个因子的选股能力无关,所以在研究时我们需要剔除这些宏观的影响因素。


市值行业中性化具体的方法是有一些复杂的,首先需要对31个申万一级行业做热独码,大概是这个样子:

{w:100}以申万1级行业为例,申万1级行业有31个,那么行业热独码为31列的矩阵,每一行只会出现1个1,剩下的皆为0,出现1的列名为对应股票的行业。通过这样的数据结构,对训练数据做回归分析,最终计算出因子值与剔除行业或市值影响后的实际选股能力。

\

这么一听是不是极为复杂?

不要怕我🤣

在宽邦的因子投研模块中实际上只需要打个勾勾就可以了。。。

{w:100}


快去卷起来吧!


{w:100}

https://bigquant.com/experimentshare/49d712fd32b046569c52a615f72b0bc0

\

标签

风险因子投资组合优化风险管理因子模型资产定价模型
{link}