1、Brinson归因模型
紧接上一篇文章,我们继续聊股票模型的业绩归因。今天要介绍的第一个模块是Brinson归因模型,它将组合超额收益*为选择收益、择时收益和交叉收益,使用场景非常广。Brinson等人最早提出单期的Brinson模型,理论基础始于 Brinson et al.(1986)、Brinson 和 Fachler(1985)所作的两篇文章。
Brinson是一种古老的业绩归因方法,适合股票投资基金业绩分析,这种方法需要在给定时刻基金的持仓数据(包括持有的证券及数目),如果能够得到的横截面持仓数据越多,数据越完备,则归因分析越准确。
上图中,超额收益(用TR表示)是每个分析截面上,我们的投资组合超越基准的收益。
按照 Brinson 模型,这个超额收益可以*为资产配置贡献(AR,聚宽翻译为主动配置)、个股选择贡献(SR)和交互贡献(IR)。
资产配置贡献(用AR表示)可以理解为这个基金经理能够看清楚大类资产的强弱走势,能够判断出哪类资产将来收益会比较高。
个股选择贡献(用SR表示)可以理解为在股票市场和债券市场上能否选出高于市场基准收益的资产,即在相同资金分配比例下,能否获得更高的收益。
交互贡献(IR)= TR - AR - SR,是该分析方法无法解释的收益。
通过对测试模型的归因可以看到,我们取得的IR收益大于主动配置AR(择时)收益,因为这是一个永远满仓不择时的模型,所以其AR值在测试全过程非常稳定。本模型因子对行业中涨幅较高的个股并没有加强配置,所以SR收益表现为负。这提醒我们是否需要在接下来的迭代中,配置龙头股,加强行业内的选股能力,而非全市场选股能力。
行业配置对比实质上就是将行业分布数据化可视化呈现,这里将行业分为76个,可惜没有标注行业分类方法,申万一级行业(28个)其实较为稳健,虽然对于个股主营来源还未更细致分类,但是做基本的量化研究够用了。从上图中可以看出,我们的模型将行业风险暴露于金融行业和地产行业个股,你可以预想:一旦金融地产股大涨,这套模型会获得超过市场的回报。
2、风格分析(Fama和French五因子模型)
这里的风格分析更适合被称作“风险分析”。诺奖获得者Fama和French 1993年指出可以建立一个三因子模型来解释股票回报率。该模型解释了超额收益,是对经典风险模型CAPM中β未能反映的风险因素的大幅度改进。
2013年,这个模型被再度改进,Fama和French认为美股市场存在五个有效因子——市场因子、规模因子、估值(BP)因子、盈利因子以及投资因子,相对于三因子的股价解释能力再度提升。因此用这套风险模型做绩效归因也是很棒的选择。
三五因子的公式如上图,其中RM=rM?rfRM=rM?rf ,是市场相对无风险投资的期望超额收益率,这一点不用在持仓股中进行归因,因为它对于所有个股,是固定的一个数值。
公式中,ai,bi,si,hi,ri,ci都是回归系数,三五因子模型不像我们常规意义上的多因子模型,并非在日期截面上对所有股票做线性回归(因子值是X,两个截面之间的交易区间收益率为Y)。三五因子模型使用了Black,Jensen和Scholes的时间序列回归方法,对影响股票收益的市场超额收益的五个因子进行了实证研究。单独回归计算每一只股票时间序列上的五个因子系数。回归无法表示的部分,都扔给ei残差项。
需要说明的是,三五因子模型是风险评估模型,不是超额收益寻找模型,如果你一定要用它选股,它认为个股所有的风险理论上都可以被因子解释。所有股票都会回归到应该的价钱,所以应该购买剥离完毕风险因子后,残差最小的股票,以带来最小风险。或者理解为:股票价格可以被几个因子解释,那么无法解释的部分如果很大(按残差ei升序排名靠前的股票),说明很有潜力,我们应该购买这种股票。
回到我们的主题:使用五因子模型做风险归因分析,让我们再次重温经典,带各位读者回忆除了beta*R市场因子之外,其他4个因子含义。
【SMB】是小市值股票相对大市值股票的收益,你可以理解为小市值因子贡献的收益。SMB的计算方式是:首先把市场里面的所有股票按市值排序,然后等分成三份:第一份是大市值股票(市值在所有股票中最大的1/3),第二份是中市值股票,第三份是小市值股票(市值在所有股票中最小的1/3)。
SMB = 小市值股票的平均期望收益率 - 大市值股票的期望收益率。
如上图我们的模型在2014年底出现过一次SMB的大幅度下降,所以这个模型在当时暴露了很多小市值风险(事实上没有超配金融板块的模型在当时都遭遇此问题)。
【HML】是价值因子,科班解释是:高账面市值比组合与低账面市值比组合收益率的差。在这里,账面市值比(BM)是一个新概念。
账面市值比(BM)同时消掉流通股数,你会发现账面市值比(BM)因子其实就是市净率PB的倒数,也就是BP。所以当然是账面市值比(BM)越高越好,说明公司的净资产越厚重,且同时股价较低,估值处于合理区间。
HML的计算方法和SMB一样,也是分三组,然后第一组 - 第三组。
【RMW】代表了企业的盈利能力,盈利水平风险是指,盈利能力较高的行业一般会伴随着更高的风险。我们用ROE来衡量盈利水平。
RMW的计算方法也是分三组,然后计算高/低盈利水平的股票期望收益率之差。
【CMA】因子上市公司代表投资水平(用总资产年增长率来体现),这里的投资水平不是二级市场的投资水平,而可以通俗的解释为企业扩大再生产的能力。如果一个企业投资再生产的盈利能力较低,那么会导致总资产年增长率降低,此时如果依然维持高投资,则该因子值下降,得不偿失。
计算方法类似,分组,求差值。
3、风险分析(Barra风险模型)
风险分析实质上描述了回测全过程中,模型对于风险因子的暴露(这里的暴露是Barra惯用语,实际上是截面回归中每个因子前面的系数,或者说斜率、敏感度、因子载荷)。
Barra风险模型用多个因素(如红色柱状图中的10个)来解释风险资产收益,根据无套利原则,得到风险资产均衡收益与多个因素之间存在线性关系。
我们来简单复习单值股票的多因子收益率*(部分参考方正证券“星火”系列研报):
上图公式中,ri表示第i只股票的收益率;fk为因子的收益率,xik表示股票i在因子k上的暴露程度,(一般取前一期的因子暴露度,因为要构建的是上期因子值和本期收益率的解读关系),ui表示股票的特质收益率(k个因子无法解释的收益率)。
假设有一个由N只股票组成的资产组合,股票i在该组合中的权重为wi,那么该投资组合的收益率Rp可表示为:
刚才的分析中连续两次用到连加符号大西格玛,实际上它依然是一个小学数学水平的计算,只不过表达方式让很多投资者望而生畏。上图实质就是把每一个股票的收益率r加起来,一共有i个股票。
此时我们不管因子无法解释的收益扰动项ui,整个投资组合在风险因子k上的暴露程度Xkp可以表示为:
Barra风险模型就是寻找这样每一个因子在整个投资组合中的暴露值Xkp。
如果用Barra来表述多因子模型投资组合的收益率,是如下形式:
两个连加符号大西格玛相乘代表这是一个二维矩阵,要把所有股票(N维)按照持仓权重,在每个因子(K维)上的投资收益(因子暴露 * 因子收益)加起来,然后再加上所有股票(N维)无法被归因的扰动项ui。
使用因子作为风险分析工具的原因是:利用多因子模型可以将对N只股票的收益风险分析,转换为对K个因子的收益风险分析。第一次读这段话时我也没能理解,后来在实际分析股票模型的风险度时,有了切身体会,如果没有因子风险归因,我们对于投资组合的风险几乎是无法描述会让把握的。
因为股票数量N要远远大于共同因子数量K,因此借助多因子模型进行分析可以起到降维的效果(只需要分析K个维度,即可确认投资组合风险,比如Barra的10个风险因子),在降低分析工作量的同时提高了预测准确度(提高准确度的原因是,每个K因子的载荷,也就是系数由N只股票,一般N都在几百甚至几千,线性回归得到,样本量增加意味着回归准确度增加)。
接下来进入聚宽对Barra的可视化呈现:由于我们的股票模型具有收益基准,所以风险因子暴露差值 = 策略风险因子暴露度 - 基准风险因子暴露度。这里的基准正是你在模型里设定的“set_benchmark”。
Barra也有无法*的风险收益来源,但是它的解释力度要比五因子模型高,无法解释的部分用uj(残差收益率,在风险模型中也叫做“特质收益率”)表示,每支股票的特质收益率之间是互不相关的,而10个风险收益是共同的。
各回测平台对于风险因子的定义不同,聚宽选择了著名的Barra风险模型作为量化多因子的范例。Barra是非常棒的一套风险评估系统,虽然对于大部分入门量化投资爱好者而言,Barra是大材小用的,不过当我们辛苦完成了一套模型,看看Barra的绩效归因,也能发现很多模型的风险问题,并找到可以继续精进的方向。
公开资料显示:从1975年开始,Barra公司提出Barra USE系列模型,开始利用先进的技术,为全球客户提供风险管理解决方案。我们在行业内也时常看到专业机构使用付费版本Barra风控工具分析其投资组合的风险,Barra也公布了每个因子的计算公式(框架),以便更多投资者进行绩效归因。
这10个因子的计算细节在这里,为了不做文字的搬运工,大家自行点击链接查看:https://zhuanlan.zhihu.com/p/31412967
其中较为难以理解的非线性市值,就是市值因子的三次方,然后再和市值因子正交,以去除其和市值因子的共线性。如上图我们的模型风险因子检测中,非线性市值暴露显著,因为在模型构建过程中我们已经倾向于选择中盘价值股。
Barra风险模型定义的盈利预期因子,在聚宽上被盈利因子替代,可能是因为比较难以找到分析师预期数据,或者该数据历史长度不够。
在实际使用Barra过程中,我们提醒大家对这样市值因子的过度暴露需要格外关注,非线性市值的暴露不用过多担心,动量和beta的波动对于组合的影响也不是很大,不必过于担心。
红色柱向上表示策略模型在该因子上,比基准指数成分股组合,暴露了更多该因子风险,比如上图中的“贝塔”项目,我们的持股数量显然少于业绩基准中证800的持股数量,且部分个股交易活跃,所以归因显示策略的持股组合beta因素更大(正向beta)。红色柱向下表示反向暴露,市值和非线性市值就是典型因子(负向市值)。
三种归因模型,都试图解答这样一个问题:当我的投资组合持股数量达到某个量级(如20只、50只甚至100只)时,单独分析个股(纵向维度)无法准确解释赚钱或者亏钱的原因,此时分析原因或者说因子(横向维度),可以较高效准确地发现模型的优势和问题(在哪些因子上暴露了多大风险)。
针对部分多因子模型(如机器学习导致的因子非线性组合),因子间关系更加复杂,建模者可能难以把握,只能借助风险因子模型来解剖其收益和风险到底来自何方,此时绩效归因的意义更加显著。掌握此模块,对深入开发股票模型有较大帮助。
更多精彩内容,敬请期待!
本社区仅针对特定人员开放
查看需注册登录并通过风险意识测评
5秒后跳转登录页面...
移动端课程