积极回报和跟踪误差有效前沿

假设你要找出一个有效的一套组合是相对于给定的目标组合,受到了给定的预期超额收益减少的收益之差的方差。这种超额收益的均值和标准差通常被称为积极回报,积极的风险,分别。积极的风险有时也被称为跟踪误差。由于目的是跟踪给定的目标组合尽可能地,所得到的组合的集合有时被称为跟踪ëRROR有效边界。

具体而言,假设目标组合被表示为指数权重向量,使得索引返回系列可以表示为可用资产的线性组合。该实施例说明如何构建该活性风险(跟踪误差)除实现返回的一个给定的电平最小化的前沿。也就是说,计算跟踪误差的有效边界。

构建跟踪误差的有效边界的方法之一是明确地形成目标收益率序列和收益率序列的个人资产减去它。通过这种方式,你指定活动收益的预期均值和方差,并计算出有效的前沿课题通常的投资组合限制。

本实施例中直接与绝对(未调整)的回报,但约束转换从通常的绝对重量格式能动重量格式的均值和协方差。

考虑五大资产组合有以下预期收益,标准差和相关矩阵基于绝对每周的资产收益。

NumAssets = 5;ExpReturn = [0.2074 0.1971 0.2669 0.1323 0.2535] / 100;西格玛= [2.6570 3.6297 3.9916 2.7145 2.6133] / 100;相关性= [1.0000 0.6092 0.6321 0.5833 0.7304 0.6092 1.0000 0.8504 0.8038 0.7176 0.6321 0.8504 1.0000 0.7723 0.7236 0.5833 0.8038 0.7723 1.0000 0.7225 0.7304 0.7176 0.7236 0.7225 1.0000];

使用转换的相关性和标准偏差,以协方差矩阵corr2cov

ExpCovariance = corr2cov(Sigma的,相关性);

接着,假定目标组合索引是从五个资产形成的相等地加权组合。指标权重之和等于1,满足标准的全部投资预算等式约束。

指数=酮(NumAssets,1)/ NumAssets;

使用生成的资产约束矩阵portcons。约束矩阵AbsConSet在绝对格式表示(未调整的索引),并且被格式化为[A B]中,对应于形式的约束A *瓦特<= b的。每行AbsConSet对应于约束,并且每一列对应于一个资产。允许在每个资产没有卖空和全部投资(每个资产的下限和上限分别为0和1,)。特别要注意的是,前两行对应的预算等式约束;剩余的行对应于上部/下部投资界限。

AbsConSet = portcons('PortValue',1,NumAssets,...'AssetLims',零(NumAssets,1),一(NumAssets,1));

现在,变换的绝对约束与有效约束abs2active

ActiveConSet = abs2active(AbsConSet,指数);

绝对和主动约束矩阵的审查表明,他们在最后一栏只不同(对应的列bA *瓦特<= b的)。

[AbsConSet(:,端)ActiveConSet(:,端)]
ANS = 1.0000 -1.0000 0 0 1.0000 0.8000 1.0000 0.8000 1.0000 0.8000 1.0000 0.8000 1.0000 0.8000 0 0.2000 0 0.2000 0 0.2000 0 0.2000 0 0.2000

特别要注意的是,和对一个绝对预算约束成为总和到零活跃预算约束。一般变换如下:

b 一个 C Ť 一世 v Ë = b 一个 b 小号 Ø ü Ť Ë - 一个 × 一世 ñ d Ë X

现在构建投资组合反对和21个组合绘制跟踪误差的有效边界。

P =组合('AssetMean',ExpReturn,'AssetCovar',ExpCovariance);P = p.setInequality(ActiveConSet(:,1:端-1),ActiveConSet(:,端));[ActiveRisk,ActiveReturn] = p.plotFrontier(21);图(ActiveRisk * 100,ActiveReturn * 100,'蓝色')网格('上')xlabel(“积极风险(以百分比表示标准偏差)”)ylabel(“有源返回(百分比)”)标题(“跟踪误差有效前沿”

特别感兴趣的是沿边境左下组合。这种零风险/零回报的投资组合具有一定的现实经济意义。它代表了指数投资组合本身全部投资。每个跟踪误差有效组合(所述阵列中的每一行ActiveWeights)满足活性预算约束,因此代表证券投资分配相对于该组合​​索引。要转换这些分配到绝对的投资配置,该指数添加到每个有效的投资组合。

ActiveWeights = p.estimateFrontier(21);AbsoluteWeights = ActiveWeights + repmat(索引,1,21);

也可以看看

|||||||||||||

相关的例子

更多关于