主要内容

使用portfolio var对象处理组约束

组约束是可选的线性约束,它将资产分组在一起并强制组权重的界限(参见组约束).尽管约束是作为一般约束实现的,但通常的惯例是形成一个组矩阵,用布尔指标(或布尔指标)来标识特定组中每个资产的成员符合事实的或与10)表示组矩阵中的每个元素。组约束具有属性GroupMatrix对于组成员矩阵,LowerGroup对于群的下界约束,为UpperGroup对于群的上界约束。

设置组约束PortfolioCVaR作用

组约束的属性是通过PortfolioCVaR对象。假设你有一个由5种资产组成的投资组合,并希望确保前3种资产占投资组合的比例不超过30%,那么你可以设置组约束:

G = [1 1 1 0 0];p = PortfolioCVaR (“组矩阵”, G,“UpperGroup”, 0.3); disp(p.NumAssets)disp(p.GroupMatrix)disp(p.UpperGroup)
5 1 1 1 00 0.3000

群矩阵G也可以是逻辑矩阵,以便下面的代码实现相同的结果。

G =[真真真假假];p = PortfolioCVaR (“组矩阵”, G,“UpperGroup”, 0.3); disp(p.NumAssets)disp(p.GroupMatrix)disp(p.UpperGroup)
5 1 1 1 00 0.3000

设置组约束setGroupsaddGroups功能

还可以使用设置组约束的特性setGroups。假设您有五项资产的投资组合,并希望确保前三项资产在您的投资组合中所占比例不超过30%。给定PortfolioCVaR对象p使用setGroups要设置组约束,请执行以下操作:

G=[true-false];p=PortfolioCVaR;p=setGroups(p,G,[],0.3);disp(p.NumAssets)disp(p.GroupMatrix)disp(p.UpperGroup)
5 1 1 1 00 0.3000

在本例中,您将设置LowerGroup属性为空([]).

假设您想添加另一个组约束,使奇数资产至少占您投资组合的20%。设置扩充组矩阵并为无约束组边界引入无限边界,或使用addGroups函数来建立组约束。对于本例,为第二个组约束创建另一个组矩阵:

p = PortfolioCVaR;G =[真真真假假];%组矩阵为第一组约束p = setGroups(p, G, [], 0.3);G =[真假真假];%第二组约束的组矩阵p = addGroups(p, G, 0.2);p.NumAssets (p.GroupMatrix) p.LowerGroup (p.UpperGroup)
5 1 1 1 00 1 0 1 0 1 -Inf 0.2000 0.3000 Inf
addGroups确定哪些边界是无界的,因此只需关注要设置的约束即可。

PortfolioCVaR对象setGroupsaddGroups对象上实现标量展开LowerGroupUpperGroup基于属性中组矩阵的维数的属性GroupMatrix.假设你有一个包含6种资产类别的30种资产的宇宙,其中资产1-5、资产6 - 12、资产13-18、资产19-22、资产23-27和资产28-30组成了每一种资产类别,你希望每一种资产在你的投资组合中所占的比例从0%降至25%。让下面的组矩阵定义你的组,标量展开定义每个组的公共边界:

p=PortfolioCVaR;G=blkdiag(真(1,5)、真(1,7)、真(1,6)、真(1,4)、真(1,5)、真(1,3));p=设定组(p,G,0,0.25);disp(p.NumAssets)disp(p.GroupMatrix)disp(p.LowerGroup)disp(p.UpperGroup)
30列1到16 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0列17到30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 00 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0.2500 0.2500 0.2500 0.2500 0.2500 - 0.2500

另请参阅

|||||||||

相关的例子

更多关于

外部网站