主要内容

estimatePortSharpeRatio

为投资组合对象估计给定投资组合权重的夏普比率

描述

例子

psharpe= estimatePortSharpeRatio (objpwgt估计给定投资组合权重的夏普比率投资组合对象。详细的工作流程请参见组合对象的工作流

例子

全部折叠

这个例子展示了如何找到满足目标收益的有效投资组合,然后找到每个投资组合对应的夏普比率。

为了获得有目标收益的有效投资组合estimateFrontierByReturn函数接受一个或多个目标投资组合收益,并获得具有指定收益的有效投资组合。假设您有一个由四种资产组成的宇宙,您希望获得有效的投资组合,目标投资组合回报率为6%、9%和12%。使用estimatePortSharpeRatio,以获取组合的夏普比率(pwgt).

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 = estimateFrontierByReturn(p, [0.06, 0.09, 0.12]); display(pwgt);
pwgt =4×30.8772 0.5032 0.1293 0.0434 0.2488 0.4541 0.0416 0.0780 0.1143 0.0378 0.1700 0.3022

pwgt是一个NumAssets——- - - - - -NumPorts矩阵NumAssets宇宙中资产的数量是多少NumPorts是组合集合中的组合数。

pwgt psharpe = estimatePortSharpeRatio (p)
psharpe =3×10.7796 0.8519 0.7406

psharpe是一个NumPorts——- - - - - -1向量,NumPorts是组合集合中的组合数。

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

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);

使用estimatePortSharpeRatio e估计给定投资组合权重的夏普比率投资组合对象。

pwgt = estimateFrontierByReturn(p, [0.0072321, 0.0119084]);pwgt psharpe = estimatePortSharpeRatio (p)
psharpe =2×10.2230 - 0.1715

estimatePortSharpeRatio函数使用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

输入参数

全部折叠

对象指定的投资组合投资组合对象。

请注意

无风险利率是从资产中获得的RiskFreeRate在Portfolio对象中。如果你离开RiskFreeRate未设置,则假定为0.有关创建投资组合对象的更多信息,请参见投资组合

数据类型:对象

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

数据类型:

输出参数

全部折叠

给定投资组合的夏普比率,返回为NumPorts——- - - - - -1向量。

更多关于

全部折叠

夏普比率

夏普比率是投资组合收益率的均值与无风险利率之差除以每一个投资组合收益率的标准差之比pwgt

estimatePortSharpeRatio用投资组合收益的均值和标准差(即方差的平方根)计算夏普比率。

提示

你也可以用点表示法来估计给定投资组合权重的夏普比率。

psharpe = obj.estimatePortSharpeRatio (pwgt);

版本历史

介绍了R2018a