处理“简单”
使用PortfolioMAD对象绑定约束
“简单”
绑定约束是可选的线性约束,用于维护投资组合权重的上界和下界(参见“简单”约束).尽管每个投资组合集都必须是有界的,但是没有必要用显式的有界约束来指定投资组合集。例如,您可以创建具有隐式上限约束的投资组合集,或者具有平均周转率约束的投资组合集。绑定的约束具有属性下界
对于下界约束和UpperBound
对于上限约束。属性为这些约束设置默认值setDefaultConstraints
函数(见使用组合对象设置组合权重的默认约束).
设置“简单”
使用PortfolioMAD
函数
方法设置绑定约束的属性PortfolioMAD
对象。假设你有一个平衡的基金,其中股票占投资组合的50%至75%,债券占投资组合的25%至50%。平衡基金的约束条件为:
Lb = [0.5;0.25);Ub = [0.75;0.5);p = portfolio omad (下界的磅,“UpperBound”乌兰巴托,“BoundType”,“简单”);disp(p.NumAssets) disp(p.LowerBound) disp(p.UpperBound)
2 0.5000 0.2500 0.7500 0.5000
为了继续这个示例,您必须设置一个预算约束。详细信息请参见使用投资组合对象处理预算约束.
设置“简单”
使用setBounds
函数
您还可以使用setBounds
.假设你有一个平衡的基金,其中股票占投资组合的50%至75%,债券占投资组合的25%至50%。给定一个PortfolioMAD
对象p
,使用setBounds
设置绑定约束。
Lb = [0.5;0.25);Ub = [0.75;0.5);p = PortfolioMAD;p = setBounds(p, lb, ub,“BoundType”,“简单”);disp(p.NumAssets) disp(p.LowerBound) disp(p.UpperBound)
2 0.5000 0.2500 0.7500 0.5000
设置“简单”
使用PortfolioMAD
函数或setBounds
函数
这两个PortfolioMAD
对象和setBounds
对象上的标量展开下界
或UpperBound
属性。如果NumAssets
属性中已设置PortfolioMAD
对象时,任一属性的标量参数在所有维度上展开为具有相同的值。此外,setBounds
让你指定NumAssets
作为可选参数。假设您有一个包含500个资产的宇宙,并且您希望对宇宙中的所有资产设置公共边界约束。具体来说,你是一个只做多的投资者,在任何单一资产上的投资不超过投资组合的5%。你可以用下面这些等价的方法设置这些约束:
p = portfolio omad (“NumAssets”, 500,下界的0,“UpperBound”, 0.05,“BoundType”,“简单”);
或
p = portfolio omad (“NumAssets”, 500);p = setBounds(p, 0, 0.05,“BoundType”,“简单”);
或
p = PortfolioMAD;p = setBounds(p, 0, 0.05,“NumAssets”, 500,“BoundType”,“简单”);
清除绑定约束PortfolioMAD
对象时,可以使用PortfolioMAD
对象或setBounds
使用要清除的属性的空输入。属性中的上限约束PortfolioMAD
对象p
在前面的例子中:
p = PortfolioMAD(p,“UpperBound”[]);
另请参阅
PortfolioMAD
|setDefaultConstraints
|setBounds
|setBudget
|setGroups
|setGroupRatio
|setEquality
|setInequality
|setTurnover
|setOneWayTurnover
相关的例子
- 使用PortfolioMAD对象设置组合权重的默认约束
- 设置“条件”BoundType, MinNumAssets和MaxNumAssets约束的故障排除
- 创建portfolio omad对象
- 验证MAD投资组合问题
- 为PortfolioMAD对象估计沿整个边界的有效投资组合
- 估计PortfolioMAD对象的有效边界
- 使用PortfolioMAD对象的资产收益和场景
- 使用PortfolioMAD对象使用“条件”BoundType, MinNumAssets和MaxNumAssets约束
- 设置“条件”BoundType, MinNumAssets和MaxNumAssets约束的故障排除