主要内容

绘制有效边界使用portopt

这个例子描绘了三种资产的假设投资组合的有效边界。它说明了如何指定一个资产组合的预期收益、标准差和相关性,如何将标准差和相关性转换为协方差矩阵,以及如何从收益和协方差矩阵计算和绘制有效边界。该示例还说明了如何随机生成一组投资组合权重,以及如何将随机投资组合添加到现有图中,以便与有效边界进行比较。

首先,指定一个假设的三种资产组合的预期收益、标准差和相关矩阵。

返回= [0.1 0.15 0.12];STDs = [0.2 0.25 . 0.18];相关性= [1 0.3 0.4 0.3 1 0.3 0.4 0.3 1];

用函数将标准差和相关矩阵转换为方差-协方差矩阵corr2cov

协方差= corr2cov(std, correlation);

使用该函数,在边界沿线的20个点处计算并绘制有效边界portopt并且期望收益和相应的协方差矩阵。尽管可以对投资组合中的资产施加相当复杂的约束,但为了简单起见,接受默认约束,将投资组合的总价值缩放为1,并将权重限制为正(不做空)。

请注意

portopt已经被部分移除并且不再接受ConSet变长度输入宗量参数。使用投资组合目标是解决投资组合的问题,而不是一个只做多的全部投资组合。有关使用Portfolio对象时工作流的信息,请参见组合对象的工作流.有关迁移的更多信息portopt代码投资组合,请参阅portopt迁移到投资组合对象

portopt(回报、协方差、20)

现在有效边界已经显示出来,从MATLAB开始随机生成1000个投资组合的资产权重®初始状态。

rng (“默认”权重= rand(1000, 3);

前一行代码生成三列均匀分布的随机权值,但不保证它们的和为1。下面的代码段规范化了每个投资组合的权重,使三个权重的总和代表一个有效的投资组合。

Total = sum(Weights, 2);%添加权重总=总(:,(3,1));%制作尺寸兼容的矩阵重量= Weights. /总;% Normalize使sum = 1

给定创建的1000个随机投资组合,计算与权重相关的每个投资组合的预期收益和风险。

[PortRisk, PortReturn] = portstats(返回,协方差,...重量);

最后,持有当前的图表,并在现有的有效边界上绘制每个投资组合的收益和风险,以便进行比较。在绘制之后,用标题注释图形,并将图形返回到默认的持有状态(任何后续的绘图将擦除现有数据)。有效边界用蓝色表示,而1000个随机投资组合在边界上或下方用一组红点表示。

持有情节(PortRisk PortReturn,“r”)标题(均值-方差有效边界与随机投资组合)举行

另请参阅

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

相关的话题