主要内容

estimatePortReturn

估计投资组合的平均收益

描述

例子

现成的= estimatePortReturn (objpwgt估计投资组合回报的平均值(作为投资组合回报的代理)投资组合PortfolioCVaR,或PortfolioMAD对象。有关使用这些不同对象时各自工作流的详细信息,请参见投资组合对象工作流对象工作流,PortfolioMAD对象工作流

例子

全部折叠

考虑到投资组合p,使用estimatePortReturn估计投资组合收益均值的函数。

M = [0.05;0.1;0.12;0.18);C = [0.0064 0.00408 0.00192 0;0.00408 0.0289 0.0204 0.0119;0.00192 0.0204 0.0576 0.0336;0 0.0119 0.0336 0.1225];p =投资组合;p = setAssetMoments(p, m, C); p = setDefaultConstraints(p); pwgt = estimateFrontierLimits(p); pret = estimatePortReturn(p, pwgt); disp(pret)
0.0590 - 0.1800

创建一个投资组合对象用于三个资产。

AssetMean = [0.0101110;0.0043532;0.0137058);AssetCovar = [0.00324625 0.00022983 0.00420395;0.00022983 0.00049937 0.00019247;0.00420395 0.00019247 0.00764097];p =投资组合(“AssetMean”AssetMean,“AssetCovar”, AssetCovar);p = setDefaultConstraints(p);

使用setBounds有半连续的约束条件西00.02< =西< =0.5对所有1,……NumAssets。

p = setBounds(p, 0.02, 0.5,“BoundType”“条件”“NumAssets”3);

当与投资组合对象,setMinMaxNumAssets函数使您能够为只做多头的投资组合设置基数约束。对象的基数约束投资组合对象,其中满足非零半连续约束的已分配资产的总数介于MinNumAssets而且MaxNumAssets.通过设置MinNumAssetsMaxNumAssets=2时,三种资产中只有两种被投资到投资组合中。

p = setMinMaxNumAssets(p, 2,2);

使用estimatePortReturne估计a的投资组合收益的平均值投资组合对象。

pwgt = estimateFrontierLimits(p);pret = estimatePortReturn(p, pwgt)
成衣的=2×10.0072 - 0.0119

estimatePortReturn函数使用MINLP求解器来解决这个问题。使用setSolverMINLP命令,配置SolverType和选项。

p.solverOptionsMINLP
ans =带有字段的结构:maxiteration: 1000 AbsoluteGapTolerance: 1.0000e-07 RelativeGapTolerance: 1.0000e-05 NonlinearScalingFactor: 1000 ObjectiveScalingFactor: 1000 Display: 'off' CutGeneration: 'basic' maxiterationsinactivcut: 30 activecutttolerance: 1.0000e-07 IntMasterSolverOptions: [1x1 optim.options.]Intlinprog] NumIterationsEarlyIntegerConvergence: 30

考虑到投资组合p,使用estimatePortReturn估计投资组合收益均值的函数。

M = [0.05;0.1;0.12;0.18);C = [0.0064 0.00408 0.00192 0;0.00408 0.0289 0.0204 0.0119;0.00192 0.0204 0.0576 0.0336;0 0.0119 0.0336 0.1225];M = M /12;C = C/12; rng(11); AssetScenarios = mvnrnd(m, C, 20000); p = PortfolioCVaR; p = setScenarios(p, AssetScenarios); p = setDefaultConstraints(p); p = setProbabilityLevel(p, 0.95); pwgt = estimateFrontierLimits(p); pret = estimatePortReturn(p, pwgt); disp(pret)
0.0050 - 0.0154

这个函数rng 年代 e e d )重置随机数生成器以产生记录的结果。不需要重置随机数生成器来模拟场景。

考虑到投资组合p,使用estimatePortReturn估计投资组合收益均值的函数。

M = [0.05;0.1;0.12;0.18);C = [0.0064 0.00408 0.00192 0;0.00408 0.0289 0.0204 0.0119;0.00192 0.0204 0.0576 0.0336;0 0.0119 0.0336 0.1225];M = M /12;C = C/12; rng(11); AssetScenarios = mvnrnd(m, C, 20000); p = PortfolioMAD; p = setScenarios(p, AssetScenarios); p = setDefaultConstraints(p); pwgt = estimateFrontierLimits(p); pret = estimatePortReturn(p, pwgt); disp(pret)
0.0048 - 0.0154

这个函数rng 年代 e e d )重置随机数生成器以产生记录的结果。不需要重置随机数生成器来模拟场景。

输入参数

全部折叠

对象,指定使用投资组合PortfolioCVaR,或PortfolioMAD对象。有关创建投资组合对象的更多信息,请参见

数据类型:对象

组合的集合,指定为NumAssets——- - - - - -NumPorts矩阵,NumAssets宇宙中资产的数量是多少NumPorts是组合集合中的组合数。

数据类型:

输出参数

全部折叠

中的每个投资组合的投资组合收益均值的估计pwgt,作为NumPorts向量。

现成的返回为投资组合PortfolioCVaR,或PortfolioMAD输入对象(obj).

请注意

根据成本是否设定,投资组合回报是总投资组合回报还是净投资组合回报。有关设置成本的信息,请参见setcost

提示

你也可以使用点表示法来估计投资组合收益的平均值(作为投资组合收益的代理)。

pret = obj.estimatePortReturn(pwgt);

版本历史

在R2011a中介绍

Baidu
map