“条件”
BoundType
,MinNumAssets
,MaxNumAssets
使用PortfolioCVaR对象的约束当任何一个,或任何组合“条件”
BoundType
,MinNumAssets
,或MaxNumAssets
约束是主动的,投资组合问题通过添加来表示NumAssets
二进制变量,0
表示未投资1
是投资。例如,解释“条件”
BoundType
和MinNumAssets
和MaxNumAssets
约束条件,假设你的投资组合中有100种你想投资的资产:
“条件”
BoundType
(也称为半连续约束),由setBounds
,通常用于您不想投资小价值的情况。一个标准的例子是一个投资组合优化问题,在这个问题中,由于交易成本的原因,许多小的分配是没有吸引力的。相反,你更喜欢投资组合中投资较少、配置较多的投资工具。这种情况可以使用“条件”
BoundType
约束条件为PortfolioCVaR
对象。
例如,你在每项资产上的投资权重是0
之间或[0.01, 0.5]
.一般为半连续变量x是边界之间的连续变量[磅
,乌兰巴托
],也可以假定值0
,在那里磅
>0
,磅
≤乌兰巴托
.将此应用于投资组合优化需要避免非常小或大的头寸,即价值落在(0
,磅
)或多于乌兰巴托
.
MinNumAssets
和MaxNumAssets
(也称为基数约束),由setMinMaxNumAssets
,限制资产的数量PortfolioCVaR
对象。例如,如果你的投资组合中有100项资产你希望投资组合中分配的资产数量从40到60。使用MinNumAssets
和MaxNumAssets
您可以限制优化投资组合中的资产数量,这允许您限制交易和运营成本,或者创建一个指数跟踪投资组合。
“条件”
BoundType
限制使用setBounds
函数使用setBounds
与一个“条件”
BoundType
设置西=0
或0.02
<=西<=0.5
对所有我=1
,...NumAssets
:
p = PortfolioCVaR;p = setBounds(p, 0.02, 0.5,“BoundType”,“条件”,“NumAssets”3)
p = portfoliovar with properties: BuyCost: [] SellCost: [] RiskFreeRate: [] ProbabilityLevel: [] Turnover: [] BuyTurnover: [] SellTurnover: [] numscenario: [] Name: [] NumAssets: 3 AssetList: [] InitPort: [] AInequality: [] bInequality: [] AEquality: [] bEquality: [] LowerBound: [3×1 double] UpperBound: [3×1 double] LowerBudget: [] UpperBudget: [][] GroupMatrix: [] LowerGroup: [] UpperGroup: [] GroupA: [] GroupB: [] LowerRatio: [] UpperRatio: [] MinNumAssets: [] MaxNumAssets: [] BoundType: [3×1 category]
setMinMaxNumAssets
函数您也可以设置MinNumAssets
和MaxNumAssets
对物业投资使用的资产数量进行限定setMinMaxNumAssets
.例如,通过设置MinNumAssets
=MaxNumAssets
=2
在美国,只有三种资产中的两种投资于投资组合。
p = PortfolioCVaR;p = setBounds(p, 0.02, 0.5,“BoundType”,“条件”,“NumAssets”, 3) p = setMinMaxNumAssets(p, 2,2)
p = portfoliovar with properties: BuyCost: [] SellCost: [] RiskFreeRate: [] ProbabilityLevel: [] Turnover: [] BuyTurnover: [] SellTurnover: [] numscenario: [] Name: [] NumAssets: 3 AssetList: [] InitPort: [] AInequality: [] bInequality: [] AEquality: [] bEquality: [] LowerBound: [3×1 double] UpperBound: [3×1 double] LowerBudget: [] UpperBudget: [][] GroupMatrix: [] LowerGroup: [] UpperGroup: [] GroupA: [] GroupB: [] LowerRatio: [] UpperRatio: [] MinNumAssets: 2 MaxNumAssets: 2 BoundType: [3×1 category2]
PortfolioCVaR
|setBounds
|setMinMaxNumAssets
|setDefaultConstraints
|setBounds
|setBudget
|setGroups
|setGroupRatio
|setEquality
|setInequality
|setTurnover
|setOneWayTurnover