获取有效边界的端点
在使用 Portfolio 对象时,您通常可能对有效边界的端点投资组合感兴趣。假设您想要确定从最低到最高的收益范围,以细化搜索,找到具有特定目标收益的投资组合。请使用 estimateFrontierLimits 函数来获取端点投资组合。
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 = Portfolio;
p = setAssetMoments(p, m, C);
p = setDefaultConstraints(p);
pwgt = estimateFrontierLimits(p);
disp(pwgt) 0.8891 0
0.0369 0
0.0404 0
0.0336 1.0000
estimatePortMoments 函数显示了有效投资组合的风险和收益范围:
[prsk, pret] = estimatePortMoments(p, pwgt); disp([prsk, pret])
0.0769 0.0590
0.3500 0.1800
从初始投资组合开始,estimateFrontierLimits 还会返回从初始投资组合到有效边界上的端点投资组合的买入交易和卖出交易。例如,给定 pwgt0 中的初始投资组合,您可以得到以下买入交易和卖出交易:
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 = Portfolio;
p = setAssetMoments(p, m, C);
p = setDefaultConstraints(p);
pwgt0 = [ 0.3; 0.3; 0.2; 0.1 ];
p = setInitPort(p, pwgt0);
[pwgt, pbuy, psell] = estimateFrontierLimits(p);
display(pwgt)pwgt = 4×2
0.8891 0
0.0369 0
0.0404 0
0.0336 1.0000
display(pbuy)
pbuy = 4×2
0.5891 0
0 0
0 0
0 0.9000
display(psell)
psell = 4×2
0 0.3000
0.2631 0.3000
0.1596 0.2000
0.0664 0
如果您没有指定初始投资组合,则买入和卖出权重假设您的初始投资组合为 0。
另请参阅
Portfolio | estimateFrontier | estimateFrontierLimits | estimatePortMoments | estimateFrontierByReturn | estimatePortReturn | estimateFrontierByRisk | estimatePortRisk | estimateFrontierByRisk | estimateMaxSharpeRatio | setSolver
主题
- 估计 Portfolio 对象整个有效边界上的有效投资组合
- 创建 Portfolio 对象
- Working with Portfolio Constraints Using Defaults
- Estimate Efficient Frontiers for Portfolio Object
- Asset Allocation Case Study
- 使用 Financial Toolbox 的投资组合优化示例
- Portfolio Optimization with Semicontinuous and Cardinality Constraints
- Black-Litterman Portfolio Optimization Using Financial Toolbox
- Portfolio Optimization Using Factor Models
- Portfolio Optimization Using Social Performance Measure
- Diversify Portfolios Using Custom Objective
- Portfolio Object
- 投资组合优化理论
- Portfolio 对象工作流