【研报分享】东方证券:用组合优化构建更精确多样的投资组合

多因子
标签: #<Tag:0x00007f5ba329e338>

(bnamor) #1

用组合优化构建更精确多样的投资组合 ——《因子选股系列研究之六》

研究结论

 多因子选股模型的整个投资流程包括 alpha 模型的构建,风险模型的构建,交易成本模型的构建,投资组合优化过程以及组合业绩的归因分析。从国内市场上已公开的量化模型看,采取的大多是打分法选股或者行业、市值分层构建组合,这种组合构建方式缺乏对风险和 alpha 的精确控制,最终组合可能偏离预定的投资目标。

 多因子结构化风险模型(如 Barra, Axioma)目前仍然是市场上的主流风险模型。股票收益率的样本协方差矩阵面临的主要问题是:在股票数量 N 超过时间样本区间 T 时,协方差矩阵不可逆,并且包含着较大的估计误差,这些都会严重影响到投资组合优化,使得优化器给出错误的权重分配。

 根据 Ledoit and Wolf (2003)的方法,我们在国内首次提出了一种具有实用性的风险模型构建方式:协方差矩阵的压缩估计量(Shrinkage Estimator)。它解决了当股票数量 N 超过样本个数 T 时样本协方差矩阵不可逆的问题,同时降低了协方差矩阵中的估计误差。同多因子风险模型相比,该风险模型的构建和维护过程相对简单,不需要针对不同市场和不同的 alpha 模型做调整,并且具有较好的风险预测能力。

 我们同时构建了 alpha 模型和交易成本模型,并且在不同的样本空间内进行投资组合优化回溯测试,实证检验表明基于压缩估计量风险模型构建的组合能够获得比采用简单分层方法构建的组合更高的风险调整后收益和更低的换手率,同时,投资组合的优化过程也提供了对组合的权重分配、换手率进行动态微调的机会。

 对于指数增强基金,我们检验得出传统上的行业中性处理已经能够把组合的跟踪误差控制在一个相对较小的范围内,而基于压缩估计量构建的风险模型能够更加精确地控制组合事后跟踪误差,这可以满足指数增强基金经理对组合主动风险进行精确控制的要求。

风险提示
 研究成果基于历史数据,如未来风格发生重大变化,部分规律可能失效。
 市场极端情况会导致模型失效。

目录

1.多因子模型投资流程
1.1 风险模型定义与分类
1.2 基于协方差矩阵压缩估计量的风险模型
1.3 阿尔法模型的构建
1.4 交易成本模型的构建
2.投资组合优化
2.1 优化问题的设定
2.1.1 优化目标函数中绝对值项处理方法
2.2 实证分析
2.2.1 不带跟踪误差约束条件的投资组合优化
2.2.2 带跟踪误差约束条件的投资组合优化
3.研究结论
4.参考文献
风险提示

1.多因子模型投资流程

近年来, 多因子选股策略在国内市场上已经得到了较为广泛的应用,国内各机构也对阿尔法因子的挖掘和多因子阿尔法模型的构建有了较为充分的研究。但是类似研究在构建组合时大多采取的都是相对固定的模式,例如通过分层来构造行业中性和市值中性的组合。这类相对主观的调整难以顾及个股之间和行业之间的关联性,缺乏对组合风险的精确控制,导致最终构建的组合可能并没有充分暴露在预设的阿尔法因子上。

本文重点将放在风险模型构建和投资组合优化过程。同时也将梳理多因子选股模型的整个投资流程,包括阿尔法模型的构建,风险模型的构建,交易成本模型的构建,投资组合优化过程以及组合业绩的归因分析。

1

1.1 风险模型定义与分类

风险模型是投资组合优化过程中非常重要的一个组成环节,风险模型旨在捕捉不同股票个体波动性差异大小和股票之间波动相关性的大小,对股票未来价格的波动进行预测。目前风险模型有如下几种:

  1. 样本协方差矩阵:在资产收益率多元正态分布的假定下,样本协方差矩阵是总体协方差矩阵的无偏估计量。当投资组合中有 N 个资产时,需要估计的波动率个数为 N,需要估计的协方差个数为 N(N-1)/2。样本协方差的矩阵化表达式如下:

2

其中Xt是包含所有股票在时刻 t 收益率的 N×1 的列向量。然而,除了需要估计的参数个数过多以外,样本协方差矩阵的致命弱点是当资产个数 N 大于样本个数 T 时,样本协方差矩阵成为奇异矩阵,直观而言,就是我们可以找到一组特定的权重,使得以该权重构建的组合波动率为 0,然而这明显是违背现实情况的。与此同时,在 Markowitz 均值方差优化过程中,优化器会放大样本协方差矩阵的估计误差:优化器会给予那些表面上风险较小的股票过高的权重并且给予表面上风险较大的股票过低的权重。具体讨论可以参考 Michaud(1989)文章中提到的Error maximization 问题。

  1. 基本面因子模型:目前较为主流的风险模型当属这一类,而且市场上有非常成熟的商业化解决方案(MSCI Barra, Axioma, Northfield)。在基本面因子模型中,股票收益的系统性风险部分能够被一组公共的因子所解释。而这些因子通常由行业因子和风格因子所组成:

3

假定每只股票的残差收益率和公共因子收益率不相关并且每只股票的残差收益率也不相关的情况下,股票组合的协方差矩阵可以表示如下:

4

其中 B 是 N 个股票在 K 个公共风险因子的上的因子暴露矩阵(N×K), F 是 K 个公共因子收益率的协方差矩阵(K×K),E 是 N 个股票的残差收益率方差矩阵(N×N)。在基本面因子模型中,我们已知每期 N 个股票在 K 个因子上的暴露,通过加权最小二乘法(WLS)进行横截面回归就可以得到 K 个因子当期的因子收益率。再通过计算因子收益率之间的样本协方差矩阵就可以间接得到组合的协方差矩阵。基本面因子模型通过一组公共的因子来捕捉市场股票的波动,降低了需要估计的参数的数量,同时在一定程度上避开了股票历史价格波动带来的噪音。

基本面因子模型存在的一个主要问题是当 alpha模型中的 alpha因子只有一部分被包括在风险模型中时,这可能导致优化的投资组合没有暴露在预定的 alpha 因子上。一个简单的例子是:当 alpha 模型中使用 12 个月动量(t-13 到 t-1 的收益),而风险模型采用的动量因子是 12个月动量(t-12 到 t 的收益), 最后优化的投资组合大量暴露于 1 个月动量(t-13 到 t-12 的收益). 所以最好的处理方式是根据 alpha 模型构建相对应的基本面风险模型。

5

  1. 宏观因子模型:宏观因子模型与基本面因子模型类似,也是通过一组公共因子来解释股票收益的系统性风险,比如通货膨胀率,GDP 增长率,利率等。区别主要在于在宏观因子模型中,我们已知的是每个因子在每一期的因子收益率,而每个股票在这些公共因子上的暴露需要通过较长历史区间的时间序列回归进行估计。

  2. 统计因子模型: 统计因子模型主要是利用主成分分析从股票收益率样本协方差矩阵提取出一定数量的主成分,主成分的数量由对总方差的解释阈值所确定。类似于基本面因子模型,我们可以通过 K 个主成分来捕捉 N 个股票之间的波动情况,降低了需要估计参数的个数。

1.2 基于协方差矩阵压缩估计量的风险模型

本文将从另外一个视角着眼,通过构建协方差矩阵的压缩估计量(Shrinkage Estimator),解决样本协方差矩阵的不可逆问题和降低估计误差。正如我们前面所提到的,样本协方差矩阵虽然是总体协方差矩阵的无偏估计量,但是矩阵中异常高或者异常低的值实际包含了非常大的估计误差。直接将样本协方差矩阵应用到投资组合优化过程中会导致错误的权重分配。另一方面,我们上文提到的多因子风险模型都属于结构化风险模型,当模型中的因子越少时,模型的结构性越强。结构性越强的模型会降低估计误差,但是太少的因子可能带来较大的模型设定偏误。我们的目的是在这两类模型中找到一个折衷点,在估计误差和模型设定偏误之间找到最优的平衡。样本协方差矩阵的压缩估计量形式如下:

6

其中 S 是样本协方差矩阵,F 是一个高度结构化的风险模型, 称为压缩强度(Shrink Intensity), 是一个取值在 0 到 1 之间的参数。样本协方差的压缩估计量 则是 F 和 S 的凸线性组合。接下来的问题就是选择 F 作为压缩目标(Shrink Target)和最优的压缩强度(Shrink Intensity). 我们按照 Ledoit and Wolf(2003) 提出的方法,采用固定相关系数模型(constant correlation model)作为压缩目标 F。该模型假定每对股票之间的相关系数相等,用所有样本相关系数的平均值作为任意两只股票之间的相关系数的估计量。矩阵 F 的结构如下:

7
8


10
11
12

1.3 阿尔法模型的构建

在多因子选股量化投资流程中,阿尔法模型的优劣直接决定了投资组合是否能够获得稳健的超额收益。 我们将在接下来的研究中深入探讨如何有效地构建多因子模型,本文只做初步介绍。我们对东方金工因子库中的 7 大类 40 多个因子在中证全指样本空间内进行了因子显著性检验,为了避免前视偏误(look ahead bias),因子有效性检验的时间区间为 2006 年 1 月 1 日到 2010 年 12 月31 日,通过综合考察因子 Rank IC、Rank IC 的 t 统计量、IR、IC 正显著比例、IC 负显著比例、多空组合收益率、多空组合夏普比以及多空组合最大回撤等绩效指标,筛选出了如下因子作为阿尔法模型的组成部分:

13

由于DP_FY1因子在中证全指样本空间的覆盖率较低,低于40%。在全市场选股时,我们采用SP(过去 12 个月营业收入/总市值)代替 DP_FY1 因子。在中证 500 成分股内选股时,仍然使用 DP_FY1因子。

我们在每个月末首先计算因子的原始值,然后对原始值做中位数去极值和标准化处理,再针对不同类型的因子做进一步的中性化处理:

  1. 财务类因子(价值、成长)做行业中性处理和风格中性处理,剔除行业和 Beta, 规模的影响。
  2. 对风险类因子中的换手率因子和技术因子做风格中性处理。剔除 Beta, 规模的影响。

我们的目标是结合公司的基本面指标,风险指标和技术指标。投资逻辑是:购买具有相对低估值的高成长公司,同时这些公司前期没有被市场过度炒作而高估,并且技术面上反映出这些公司的股价已经出现超跌的现象。由于中国市场上小盘股效应较为明显,但波动较大,在 alpha 模型中应当适量控制对小盘股的暴露。接下来,可以采用不同的方法把多个因子的信息结合起来,构成合成因子。对于合成因子的构成,可以采用如下几种方式:

  1. 在同类因子内部采取等权重加权,构成每类的合成因子。然后对每类的合成因子采取等权重加权,组成综合的合成因子。最后再对合成因子做标准化处理。
  2. 在各个因子之间相关性较低的情况下可以利用单个因子的历史滚动 IR 进行加权,每个月动态调整因子配比。
  3. 利用历史面板数据进行回归,因变量是股票的月度收益,自变量是经过处理后的因子值。利用最新一期的因子值和估计出的参数得到单个股票预期收益的预测值。由于本文的重点放在风险模型构建和投资组合优化上,简单起见,我们只采用单个因子过去 24 个月滚动 IR 进行加权,得到合成的因子值。各个因子的权重具体为:

14

1.4 交易成本模型的构建

2.投资组合优化

至此,我们已经完成了投资组合优化三大基石的构建:风险模型,alpha 模型和交易成本模型。投资组合优化可以在精确控制组合风险的基础上,最大化组合对预定 alpha 因子的暴露,同时满足其他约束条件。

2.1 优化问题的设定

我们采用经过风险和交易成本调整后的 alpha 作为优化的目标函数:

16
其中 TE 为预先给定的目标年化跟踪误差

2.1.1 优化目标函数中绝对值项处理方法

值得注意的是,当交易成本是组合权重变化的线性函数时,目标函数中出现了绝对值项。这使得该优化问题不能作为标准的二次规划问题求解。如果不对绝对值作处理而直接采用非线性优化器求解,优化器可能找不到可行解或者只能找到局部而非全局最优解。我们给如下方法解决绝对值的问题:

17
18

上述问题的解就是我们最终需要的结果。这样一来,原来的优化问题转化成两个标准的二次规划问题,代价是需要优化两次。由于本文实证检验中最优化问题的规模较大,股票个数可能超过 2000,采用第一种方法时会产生严重的性能问题。综合考虑计算性能和结果,本文考虑采用第二种处理方法。

2.2 实证分析

在前面几个部分我们完成了对投资组合优化细节的讨论,本节将利用前面讨论的方法,进行投资组合优化的实证检验。

2.2.1 不带跟踪误差约束条件的投资组合优化

我们首先考虑不带跟踪误差约束条件的组合优化,基准为中证 500 指数, 实证检验的相关参数设置如下:
1) 回测时间为 2011 年 1 月到 2015 年 12 月
2) 回测的股票池为
a. 每月末的中证 500 成分股
b. 每月末的中证全指成分股
3) 交易成本为单边千分之 2.4
4) 单个股票的最大权重为 1.5%
5) 每次换仓时单个股票的最大买入金额为该股票过去 20 日日均成交金额的 20%

19



22

从上述统计结果可以看出, 无论选股范围是中证 500 成分股内还是全市场,模型策略组合在过去 5年每年都大幅跑赢了基准指数。在中证 500 成分股内选股时,模型策略组合的年化信息比率达到 2。并且组合的超额收益具有较高的持续性和稳定性。同时,对冲组合的回撤也较小,仅发生在 2015年股灾期间,最大回撤为 5.6%。当股票池从中证 500 样本空间扩展到全市场时,策略组合信息比提升到 3.37. 策略组合年化收益率从 23.7%提升到 37.4%。对冲组合的最大回撤有所增大,从 5.6%增加到 10.4%,同样也发生在 2015年 6-7 月份股灾期间。由于对冲组合的构建是采取策略组合日收益减去基准指数日收益的方式,当全市场大量股票出现停牌情况时,这种简单的对冲可能导致组合存在一定的风险敞口,进而导致较大的回撤。

跟踪误差方面,当组合对基准保持行业中性时候,我们可以看到正常情况下策略组合的跟踪误差能够保持在年化 5%左右,但是当市场出现较为极端情况时,比如 2015 年 6-7月份股灾期间千股停牌,年化跟踪误差扩大到 10%以上。这种情况下,我们可能需要人为干预以应对市场巨幅波动。

最后,值得注意的是模型策略在 2013 的表现相对其他年份不佳,信息比率仅在 1 左右,为此,我们列出了 alpha 模型中从 2011 到 2015 年各个因子的权重,从图 7 可以看到,BP_LF, EP_Fwd12M和 SP 三个价值因子的权重在过去 5 年相对稳定,占 30%左右。而 IRFF 因子由于其稳健的表现,一直占有较高的权重,因子权重变动最大的则是市值对数 LNMV, 其权重在 2013 年大幅下降,在2014 年开始后才逐渐增加到 10%左右。历史上看,2013 年是结构性行情演绎到极致的一年。在大盘蓝筹和传统行业表现不佳的情况下,小盘股表现异军突起,创业板指数上涨超过 90%,而主板市场则令人失望,上证综指全年跌幅 6.75%。由于 alpha 模型中因子的权重采取的是过去 24 个月IR 进行加权,存在着一定的滞后性,因此在采取一定的量化因子择时策略或者根据市场情况主观调整 alpha 模型中因子配比或许能够显著提高 alpha 模型的效果。这些内容我们将在后期研究中深入讨论。

作为对比,我们也采用了简单分层法构建了一个增强的组合,具体方法是在每个行业内选择 alpha最高的前10%的股票,再保持行业权重与基准一致,行业内采取流通市值加权的方法。交易成本仍然保持双边千分之 2.4%的假定。

24

对比表 5 和表 6,我们可以看到采取风险优化构建组合的方式明显优于简单分层。具体表现为夏普比率从 2.37 提升到了 3.26,日胜率从 56.2%提升到 59.1%。同时组合的月均换手率从 64%下降到了48%。组合最大回撤也有所降低。从表 7 可以进一步看出,组合的月均换手率对模型的参数非常敏感,说明风险优化可以在一定程度上控制组合的月均换手率。

更加值得提出的是,在采取风险优化构建组合时,我们还考虑了股票的流动性限制。而采简单分层法构建组合时,忽略了股票流动性条件的约束,实际构建组合时可能会对市场带来较大的冲击,进而降低组合实际绩效。

25

2.2.2 带跟踪误差约束条件的投资组合优化

相比于主动投资基金,指数增强基金更为关注的是组合的跟踪误差。基金经理的投资目标是满足目标最大年化跟踪误差基础上获得相对基准最大的超额收益。从前面的实证分析结果可以知道,当组合相对基准保持行业中性时,在正常年份组合的年化跟踪误差能够保持在 5%到 6%左右,而在 2015年这样的极端年份,跟踪误差可能放大到 10%以上。据我们了解,目前国内指数增强基金的目标年化跟踪误差大多在 7%到 8%之间。在保持行业中性的限制下,组合的实际跟踪误差在大多数情况可以控制在目标跟踪误差内。我们考虑能否在约束条件中加上跟踪误差的上限,更加精确地控制跟踪误差。因此,我们考虑如下带跟踪误差约束条件的优化问题:

1

优化的相关参数设置如下:
1) 回测时间为 2011 年 1 月到 2015 年 12 月
2) 回测的股票池为每月末的中证全指成分股,
3) 交易成本为单边千分之 2.4
4) 单个股票的最大权重为 1.5%,其中中证 500 成分股占组合总资产权重大于或等于 80%
5) 目标年化跟踪误差分别设置为 5%,4%,3%,2%,1%
6) 每次换仓时单个股票的最大买入金额为该股票过去 20 日日均成交金额的 20%
在不同跟踪误差约束条件下的回测结果如下:

从表 8 可以看到,在不同的目标跟踪误差条件下,组合的实际跟踪误差、组合平均股票个数和年化收益率均呈现出单调性。前面我们提到在保持行业中性的条件下,组合年化跟踪误差能够控制在5%左右,因此当目标跟踪误差设置为 5%时,组合的实际跟踪误差和年化收益率同行业中性组合相差不大。当目标跟踪误差进一步降低时,组合平均股票个数显著增加,同时组合年化收益率下降,信息比率呈现出先增加后降低的趋势,

另一方面,我们看到组合的实际跟踪误差要高于目标跟踪误差。即使在剔除 2015 年的数据后,实际跟踪误差也比目标跟踪误差高 20%到 50%。说明风险模型在一定程度上低估了组合的主动风险。低估的原因一般主要来自于两个方面:

  1. 波动率是非平稳变量,具有随时间变化的特性。构建风险模型时没有考虑波动率非平稳的特征。
  2. 协方差矩阵的估计误差。

对于第一个问题,目前 Barra 提出了一个较为有效的方法,称为 Volatility Regime Adjustment. 即根据风险模型在过去一段时间的表现情况,定量计算模型对风险估计的偏差,再对风险矩阵做出相对应的调整。由于涉及到一些较为复杂的处理和参数的选择,感兴趣的读者可以参考 Barra USE 4handbook,我们也将在后期的研究中按照该方法构建客制化的多因子风险模型。

接下来我们进一步考察在不同目标跟踪误差条件下组合每月跟踪误差波动情况,从图 11 可以看到从 2011 年到 2014 年间,组合的跟踪误差表现较为稳定,虽然目标跟踪误差普遍低估实际跟踪误差20%-50%左右,但不同组合的实际跟踪误差仍然呈现出明显的单调性,体现出风险模型对跟踪误差的控制效果。从 2015 年 7 份开始,所有组合的跟踪误差均从正常水平直线上升到 15%以上。这段时间则正处于 2015 年股灾期间,市场巨幅震荡,出现千股停牌的状况。从图 12 可以看出,在 2015年 7 月底,中证全指成分股超过 18%的股票停牌,中证 500 成分股超过 15%的股票停牌。而我们回测的假定则是在每月末调仓时会全部卖出当月底停牌的股票,同时在进行优化的股票池剔除月底停牌股票。这个假定在正常市场状况下并不会对跟踪误差产生较大影响,而在大量股票停牌,指数失真的情况下,模型策略无法及时调整投资组合,会产生较大的跟踪偏离度和跟踪误差,需要人为的干预。


5

3.研究结论

本文首先讨论了多因子模型的投资流程,指出投资组合优化能够有机结合 alpha 模型,风险模型和交易成本模型三大基石,在满足一系列约束条件下最大化组合经过风险调整后的 alpha。然后梳理了各类不同风险模型的优点和缺点,指出样本协方差矩阵的一系列缺点限制了其在投资组合优化中的实际应用,

然后提出了一种具有实用性的风险模型构建方式:协方差矩阵的压缩估计量。它解决了当股票数量超过样本个数时样本协方差矩阵不可逆的问题,同时降低了协方差矩阵中的估计误差。同多因子风险模型相比,该风险模型的构建和维护过程相对简单,不需要针对不同市场和 alpha 模型做大幅的调整,并且具有较好的风险预测能力。

实证检验证明,基于该风险模型构建的组合能够获得比采用简单分层方法构建的组合更高的风险调整后收益和更低的换手率,同时,投资组合的优化过程也提供了对组合进行动态微调的机会。另一方面,对于指数增强基金,我们指出传统上的行业中性处理已经能够把组合的跟踪误差控制在一个相对较小的范围内,而基于压缩估计量构建的风险模型能够更加精确地控制组合事后跟踪误差,这可以满足指数增强基金经理对组合主动风险进行精确控制的要求。

本文提供了一个通用的投资组合优化框架,各个组成部分都具有模块化的特征:例如可以采用其他alpha 模型代替本文中采用的 alpha 模型,用更加复杂的交易成本模型(如考虑冲击成本的非线性模型)代替本文中采用的线性交易成本模型。

在后期的研究中,我们将进一步讨论如下问题:

  1. 如何有效地构建 alpha 模型,
  2. 深入分析 A 股的交易成本(包括固定成本和冲击成本)及其对组合绩效的影响,
  3. 构建与 alpha 模型相匹配的客制化多因子风险模型

风险提示
 Alpha 模型的有效性是基于全市场股票大样本数据的统计分析,是一个整体性的大概率结论,并不百分百保证得分高的股票未来一定获利。
 量化模型基于历史数据分析而得,存在模型失效的风险,市场极端行情和黑天鹅事件也可能对模型效果造成较大冲击;股市有风险,投资须谨慎!

4.参考文献

Michaud, R. O. (1989). The Markowitz optimization enigma: Is ‘optimized’ optimal? Financial Analyst Journal ,45:31–42.
Ledoit and Wolf (2003). Improved Estimation of the Covariance Matrix of Stock Returns With an Application to Portfolio Selection. Journal of Empirical Finance, Volume 10, Issue 5
Ledoit and Wolf (2004). Honey, I Shrunk the Sample Covariance Matrix. Journal of Portfolio Management, Volume 31, Number 1
Qian,E, Hua,R., and Eric.S. (2007). Quantitative Equity Portfolio Management: Modern Techniques and
Applications
Barra(2011). The Barra US Equity Model (USE4) Methodology Notes
Ledoit, Olivier (2013). “Statistic Arbitrage”. University of California, Los Angeles
Xinfeng Zhou and Sameer Jain (2014). Active Equity Management, First Edition

作者:东方证券金工团队