Barra模型---从因子构建到风险预测II

论坛 期权论坛 期权     
期权匿名问答   2022-6-6 20:59   7933   0
上一篇说到,给定一个由n只股票构成的投资组合,用 表示股票在组合里的权重,那么组合在K个因子上的暴露为 W‘X,其中X是一个n*K维的因子暴露矩阵,里面每一行表示个股在K个因子上的暴露。对组合的风险估计为 ,其中F表示对因子收益率的风险(方差-协方差矩阵)的估计, 表示对股票特质收益率的风险(方差)估计。本篇着重于阐述Barra在对F和 上是如何估计的以及实证结果是怎么样的。数据还是和上一篇一样:用的从聚宽上下载的从09/01-22/03的风格因子数据以及行业数据,每天在横截面上做带约束的WLS回归得到因子收益率和特质收益率序列。
一. 估计F

ewma+newey_west调整

ewma调整没啥好说的,就是让近期的数据权重更大,权重的构造方式我在上一篇写了。重点说一下nw调整的步骤:
1. 首先对每个因子的收益率序列做demean处理,注意demean时减去的均值是ewma后的均值。计算ewma调整后的协方差矩阵 :
,其中 表示t时刻的ewma权重, 表示因子k在t时刻的收益率。
2. 如果因子收益率满足q阶自相关(MA(q))的话,则 是协方差矩阵的一个最简单的consistent estimator,其中 ,由于 不是对称的,所以要加上 使调整后的协方差矩阵保持对称性。
3. 这一步才是nw调整的意义:用上一步的方法计算出来的协方差矩阵不一定是半正定矩阵,但是在()前面乘上一个Bartlett权重矩阵后得到的FF就是一个半正定矩阵了。所以 最终的形式为: ,其中
特征值调整


  • 把上一步得到的 矩阵进行特征值分解即可得到 ,其中 (K*K维)为特征值组成的对角矩阵, (K*K维)为特征向量矩阵, 的第k列即为 的第k个特征组合。
2. 把 里的每一列当成一个由K个因子组成的投资组合(由于因子收益率对应着由n只股票构成的纯因子组合的收益率,所以因子组合有点像是股票的复合组合),称之为eigenfactor portfolio,这些组合的方差就是 的对角线。Barra采用偏差统计量B来衡量风险预测的偏差情况,具体来说 ,其中 表式资产在t期的收益率, 表示在t期初对因子的预测波动率。我是这么理解这个B的:假设 ,那么 ,如果每一期都完美预测的话(即 ),则B会等于1。说回到eigenfactor portfolio上来:Barra里说这些eigenfactor portfolios的偏差统计量有一个特点:方差越小的eigenfactor portfolio的bias statistic越大,这说明 估计并不准。不过这些组合的方差估计准确与否重要么?Barra说方差最小的eigenfactor portfolio等价于以最小化组合方差为优化目标构建的投资组合,这些eigenfactor portfolios和我们最终使用个股构造的投资组合有着很大的关系,所以要对 做eigenfactor risk调整使得对这些eigenfactor portfolios的风险预测更加准确从而对由个股构造的投资组合风险预测更准。
3. eigenfactor risk调整基于 用monte-carlo模拟生成每个eigenfactor portfolio的真实方差从而对这些组合的原始方差 “去偏”,最后通过正交旋转用去偏后的 得到一个“去偏”的因子协方差矩阵 。具体做法是:先模拟生成一个 维符合 分布的eigenfactor portfolios的收益率矩阵 从而得到一个 维的因子收益率矩阵 ,计算出 的协方差矩阵 然后对 进行特征值分解得到 ,计算 里的K个eigenfactor portfolios的真实方差 里每个eigenfactor portfolio的风险偏差则为 。总共进行M次模型,第k个eigefactor portfolio的模拟风险偏差为: 。最终
波动率偏误调整  

首先定义K个因子的横截面偏误: 衡量的是因子风险预测的即时偏差,若某日所有因子的预测均低于实际风险,那么 会>1。通过ewma计算出过一段时间的平均偏误系数 即可得到经过波动率偏误调整后的最终的因子协方差矩阵
二. 估计

第一步同样是ewma和newey-west调整,第二步的结构化调整的目的在于解决估计特质收益率的方差时数据缺失和特质收益率异常的问题,这个部分就不细说了,感兴趣的可以去看看方正证券《星火多因子系列(二):Barra模型进阶,多因子模型风险预测》这篇文章。第三步是贝叶斯收缩调整,其主要思想是将单只股票的特质风险向其所在的市值分组的市值加权平均风险压缩,具体算法也可以参考上面上面推荐的研报。最后一步仍然是波动率偏误调整,算法和因子协方差矩阵的波动率偏误调整一样,只不过是换成在截面上n只股票上去做。
三. 实证


  • 我在上证50,沪深300,中证500,中证800和上测了测,以未来一个月的日波动率作为真实风险计算真实风险和预测风险从15年1月到22年三月的相关性,发现因子收益率的协方差矩阵里的每一步调整确实能给预测带来更好的效果。具体结果如下:(备注:我这里使用的个股特质风险是只做了ewma和nw调整的,其他三步我测了一下,效果并不是很好,所以就舍弃了)



不同指数上对F做不同调整后的预测结果

2. 在各指数上的预测表现:



上证50的风险预测效果



沪深300的风险预测效果



zz500的预测效果

思考和后续


  • 之前用barra更多的是在做组合归因以及研究如何在barra这些因子上构造一些简单的轮动策略,这次终于把barra的风险预测部分从头到尾做了一遍,不得不说barra这套做下来还是挺耗时的。。。看了一些金工团队的研报,协方差矩阵的估计方法其实有挺多种的,比如Ledoit&Wolf压缩估计效果也不错,以后有时间也许可以试试。
  • 结合风险估计和凸优化就可以构造出可投资的纯因子投资组合了,然后就是研究如何配置因子的事情了。我初步做了一下,在全市场的股票上纯因子组合的构造效果还不错收益率也挺高的,但是在中证500上构造的纯因子组合的收益率就一般,后续需要进一步研究一下到底是为啥,是因为特质收益率的侵蚀还是因为在目标因子上的暴露不够。
参考文献


  • 方正星火多因子系列(二):Barra模型进阶,多因子模型风险预测
  • 石川---协方差矩阵的Newey-West调整
  • 石川---Barra模型的填坑,讨论帖
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:400157
帖子:80032
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP