背景介绍:



        果仁网推出股指对冲功能,应果仁邀请,本人准备写一些关于如何构建对冲阿尔法策略组合的系列帖子。

        本人在一家小型对冲私募工作,研究对冲阿尔法策略,此系列由于本人才疏学浅,粗陋之处,尚请见谅。



        各位朋友如果有问题需要咨询,可以联系QQ2270788668或微信FooltrdeNow。

        如果有资金愿意合作,请直接联系果仁客服QQ3432772199。



下面是阿尔法多因子模型系列之一:专业水平测试题的风险预测的参考答案(网上大神的答案汇总),大家共同学习。


1、用于风险预测的多因子模型,在拟合时应侧重考虑哪些方面?

l    不太清楚这里的风险是指模型中被暴露的因子的风险(方差)的估计值;还是在获得多因子模型后,价格之间的协方差矩阵;如果是前者的话,可以根据基金的风险偏好调整风险资产在组合中的权重;后者的话,应关注价格之间的相关系数,在股票池选取的事后尽量分散风险,选择相关系数低的股票群。

l  这里假定题目中所说的拟合 Barra 的结构化风险模型的回归系数估计步骤,那么: 1 仔细检查离群值,剔除错误或不合理的离群值,把合理的,但在三个标准差以外的离群值拉回到三个标准差; 2 用市值平方根近似股票的特异波动率,对股票进行加权。一方面减轻残差异方差性的影响,另一方面保证在所有风险暴露相同的组合之中,因子组合是风险最小的组合 。 详细可见 Barra 发布的 USE4 (The Barra US Equity Model)或 CNE5Barra China Equity Model)研究报告。

 

2、是否有必要预测收益的波动率?如何预测收益的波动率?是否要在优化中使用波动率?

l  有必要;一般来说,现在都是根据结构化风险模型来预测收益的波动率;在优化过程中当然要使用波动率,因为对于收益波动率的预测至少和对于收益本身的预测一样重要。

l  有必要,最大回撤等指标都和波动率是相关的。我认为不同的数据结构应当采用不同的估计方法,举例来说,波动率是否是自相关的、是否是平稳的等等,主要是应用时间序列的一些模型,如ARCHGARCH等。在优化中应当使用波动率,大的方向是在期望收益不变的前提下尽量减小波动率。

l  在使用多因子模型对资产风险进行预测时,我们一般使用 Rosenberg Barra创始人)1974 年提出的建模思路,先估计因子收益的协方差矩阵,再预测组合收益的协方差矩阵。 如果直接对资产组合收益的波动率建模,由于多期的资产收益波动率通常是一个自相关性不稳定的非平稳时间序列,使用多因子模型进行时间序列回归的话,残差时间序列也可能是非平稳的。因此会造成以下问题: 1 最小二乘法不再是最优线性无偏估计(Best Linear Unbiased EstimationBLUE),需要采用广义最小二乘法(Generalized Least Square GLS)进行回归系数估计; 2 残差自相关性导致一些基于残差分析的绩效指标和统计量(信息率和T统计量)不再适用。 因此,如果希望对资产组合的波动率直接进行预测,一般会使用 Garch 模型等时间序列模型。不过广义来说,时间序列模型和多因子模型具有相同的数学形式。如果把自回归项、移动平均项和长期均值视为因子,那么 Garch 模型也可以认为是一个多因子模型。但必须注意的是,Garch 的参数估计方法是极大似然估计(Maximum Likelihood Estimation)而不是回归模型常用的最小二乘法。

 

3、多因子模型预测出的协方差矩阵是否会有发生高度接近奇异的情况?

l  有可能,可以在因子协方差矩阵对角线元素上加一个较小的正值解决这一问题。

l  可能。协方差矩阵反应的是股票池中各只股票之间的相关关系,如果接近奇异,说明其中一只或几只股票和其他股票之间不存在相关性。我们可以适当的对该矩阵降维来分析其中有相关性的股票之间的关系。

l  有可能。如果因子收益的协方差矩阵是奇异矩阵,则估计出来的资产收益协方差矩阵也可能是奇异的。所以一般要通过特定的处理,例如矩阵收缩(matrix shrinkage)等对因子协方差矩阵进行降噪。USE4 给出的模型主要改进就是协方差矩阵的降噪处理。

 

4、设我们称风险预测模型中的因子为风险因子,称收益预测模型中的因子为“alpha因子。如果一个alpha因子也入选了风险因子,会对组合优化结果产生什么影响?如果在风险模型中特意剔除所有alpha因子,会对组合优化结果产生什么影响?

l  如果该alpha因子也入选了风险因子,可能会中性掉该alpha因子的选股能力

l  会在调整波动率的时候同时改变了预期收益率。特别剔除所有alpha因子是不合适的,如果该因子在风险预测模型中是显著的,那就说明他有益于正确的估计模型的波动率,若直接剔除,则会低估模型对风险的估计能力。

l  如果一个 alpha 因子进入了风险结构化模型,且在组合优化时对其进行了中性化处理,那么该 alpha 因子理论上不会产生收益。 组合优化中,哪些因子是阿尔法因子,哪些是风险因子,取决于测试结果和投资者本身对于该因子的理解。就一般而言,对越多因子进行中性化处理,资产组合的风险就越低,同时预期收益也会越低;反之风险和预期收益都会增加。

 

5BARRA的多因子风险预测模型主要在哪些细节上做了精细处理?

l  BARRA作为业内最顶级的风险模型提供商之一,自然在构建结构化风险模型是对很多细节进行了精细处理,包括但不限于:在估计因子协方差矩阵时的Eigen Factor AdjustmentVolatility Regime Adjustment以及Bayesian Shrinkage等等。

l  我已经把 USE4 CNE5 背下来了。没有任何细节再让我感觉到精细了。

 

6BARRA在不同市场上的多因子风险预测模型之间的细微差异,反映了各个市场的哪些特点?

l  不同市场上多因子风险模型的差异主要有:各个风险描述符构建因子及其权重的不同、factor return的不同等等。表明了各个市场风险来源、市场风格的差别。

l  对比 USE4 CNE5 的话,USE4 中的因子组比 CNE5 多出了两个:Dividend Yield Non-Linear Beta。 对于 Barra 的因子取舍问题,我也存有疑问。从直觉而言,Dividend Yield 在美国市场的的影响力大于中国市场是可以理解的。但从 USE4 给出的统计检验结果来看,Dividend Yield 在美国市场的显著性并不高(T统计量绝对值的均值为 1.37),在所有因子中排名倒数第二。因此在效果不佳的前提下,为什么在 USE4 保留而 在CNE5 中舍弃呢?我个人推测如下: 1 CNE5 的模型(2012年发布)比 USE4的模型 (2011年发布)更为领先,Barra 发现该因子在中国市场效果同样不佳,予以舍弃; 2 Dividend Yield 在美国长期使用,为了保证模型作为商业化产品的稳定性,没有放弃该因子,而在中国市场没有类似的顾虑; 3 美国的投资者非常关注组合对于 Dividend Yield 的暴露情况,因此作为后面中性化处理的重要维度予以保留,而中国的投资者并不太关心组合对于Dividend Yield 的暴露情况。 Non-Linear Beta 因子是一个数学或者物理意义上设计非常精巧的因子。第一次看到该因子的构建方式时,我有一种哇,好漂亮的思路!的感觉。但我一直不能理解这个因子对应的投资逻辑。 依据这个因子的数学形式和 Barra 的解释,该因子对应一个 “barbell portfolio”,其思路是做空高贝塔值股票和低贝塔值股票,同时做多贝塔值处于中间的股票。也就是说,其投资思路是贝塔值高和贝塔值低的股票有类似的走势,而贝塔值处于中间的股票有相反的走势。 高贝塔值意味着该股票和市场整体走势大致相同,而低贝塔值意味着该股票和市场走势相关性不大,这两类型股票走势相近的合理解释是什么?我其实也不能理解。

 

7、用日数据vs用月数据估计协方差矩阵,各适用于什么需求?用日内(例如分钟级)数据来估计协方差阵的好处与坏处是什么?

l  适用于不同持仓周期的策略。用日内数据来估计协方差矩阵的好处在于可以用于估计的样本数据长度增加,坏处在于数据噪声较大。

l  一般来说,时间间隔越长,股票间的相关性越差,具体采用何种频率的矩阵,应当根据交易策略的特点,不要盲目选取。

l  由于这是一套多因子模型的测试题,因此问题的语境应该限定为用多因子模型进行风险预测,而不应该是讨论其它协方差矩阵的估计方法(例如单因素模型或者历史协方差矩阵)。如果使用分钟级别的数据,所选的因子必须有一致的时间尺度——这意味不能使用任何基本面因子,而只能使用量价因子。用一套量价因子来做收益预测是完全可行的,但我个人认为,仅仅使用量价因子做风险分解和预测未必妥当。 下面我们仅仅比较月频率和日频率的数据使用: 理论上,Barra 的结构化模型中,相当部分的风险因子都是基本面因子,其时间尺度较大,因此每月计算一次因子收益即可。 但在对因子收益的经验协方差矩阵(empirical covariance matrix)进行估计时,我们会面临以下的两难问题: 1 假定我们的模型中包含20个因子,那么我们至少需要 21 个月的数据。而对于政策变化频繁,投资理念不成熟的中国A股市场,21个月的时间已经足够让市场发生结构性的变化,从而使协方差矩阵的估计失去意义; 2 如果用日频率的因子收益计算,则其中包含的噪音相对较多,而且在得到日频率的因子收益协方差矩阵以后,我们对其进行时间尺度的转换,而且需要对其噪音进行严格控制。

 

8、怎样衡量或评估风险预测模型的有效性?

l  一般来说用偏差检验(Bias Test)来评测风险模型对于组合波动率的预测精度;从概念上来讲,偏差检验值代表的是组合实际波动率与预测波动率的比值。

l  应该还是一些统计学上的指标吧,比如卡方分布等等来检验实盘中的波动率和预测模型的波动率是否服从同一分布。

l  对于因子的有效性,USE 4 主要提到以下标准: 1 选用的因子组应该能够有效把系统性风险分解出来——即特异收益率没有相关性。特异收益率没有相关性也是结构化风险模型的假设之一; 2 在有效分解系统性风险的前提下,因子数目越少越好(parsimony),降低模型过拟合的可能性; 3 持续的统计显著性。对于具体某个因子,我们可以通过多期回归得到一组因子T统计量,如果这组T统计量的绝对值的均值大于2,或者在该组T统计量中,其绝对值大于2的比例较高,则认为该因子有很好的效果; 4 因子暴露度的稳定性。理论上,结构化风险模型更新频率是每月一次,因此因子暴露度时间尺度应该与之一致; 5 因子的共线性。因子之间存在共线性会导致回归系数的估计方差变大,因此在因子选择时应尽量避免出现共线性问题。 6 因子的经济学意义符合直觉。因子意义容易理解,一方面是模型质量的要求;另一方面,在组合优化的时候,我们需要根据自己的理解选择中性化约束。如果因子的意义难于理解,是否有必要对其进行中性化处理自然也无从判断。 除此以外,USE4中,也给出了因子的年化收益率、年化波动率、年化夏普率等指标。但我个人认为,如果以风险预测为目标,这些指标并不是必要的。 对于整个模型的有效性检验,USE4 提到以下标准: 1 可决系数(coefficient of determination),也就是我们常说的 R^2 2 Bias Statistics ,这个测试的思路和我们开发策略常用的信息系数类似,是比较模型的预测和实际情况的差距;而基于 Bias Statistics Mean Rolling Absolute DeviationMRAD)会提供更多关于模型精度的信息。