Portfolio对象上的常见操作
命名一个Portfolio对象
说出一个投资组合
对象,则使用的名字
财产。的名字
是信息性的,对任何投资组合计算没有影响。如果的名字
属性为非空,的名字
有效边界图的标题是由plotFrontier
.例如,如果你设立一个资产配置基金,你可以命名为投资组合
资产配置基金:
p =投资组合(“名字”,“资产配置基金”);disp (p.Name)
资产配置基金
在资产宇宙中配置资产
的基本量投资组合
对象是资产宇宙中资产的数量。这个量保持在NumAssets
财产。虽然您可以直接设置此属性,但它是从其他属性(如资产回报的平均值和初始投资组合)派生出来的。在某些情况下,可能需要直接设置资产的数量。这个例子展示了如何设置一个投资组合
对象,该对象具有四个资产:
p =投资组合(“NumAssets”4);disp (p.NumAssets)
4
设置完成后NumAssets
属性,则不能修改它(除非没有设置依赖的其他属性NumAssets
).改变现有资产数量的唯一方法投资组合
对象的方法是创建一个新的Portfolio对象。
建立资产标识符列表
在处理投资组合时,您必须指定资产的范围。尽管您可以执行完整的分析,而不需要在您的领域中命名资产,但是在创建和使用投资组合时,拥有与每个资产关联的标识符是很有帮助的。您可以创建一个资产标识符列表,作为属性中字符向量的单元格向量AssetList
.可以使用下面两个函数设置列表。
使用Portfolio函数设置资产列表
假设你有一个投资组合
对象,p
,带有符号的资产“AA”
”,“BA”
,“猫”
,“弟弟”
,“ETR”
.属性可以在对象中创建这些资产符号的列表投资组合
对象:
p =投资组合(“assetlist”, {“AA”,“BA”,“猫”,“弟弟”,“ETR”});disp (p.AssetList)
' aa ' ' ba ' ' cat ' ' dd ' ' etr '
AssetList
维护为包含字符向量的单元格数组,并且必须将单元格数组传递到投资组合
要设置的对象AssetList
.此外,请注意属性NumAssets
设置为5
根据用于创建资产列表的符号数量:disp (p.NumAssets)
5
使用setAssetList函数建立资产列表
属性指定资产列表setAssetList
函数。给定资产符号列表“AA”
,“BA”
,“猫”
,“弟弟”
,“ETR”
,你可以使用setAssetList
:
p =投资组合;p = setAssetList(p, {“AA”,“BA”,“猫”,“弟弟”,“ETR”});disp (p.AssetList)
' aa ' ' ba ' ' cat ' ' dd ' ' etr '
setAssetList
还允许您直接以逗号分隔的列表形式输入符号,而无需创建字符向量的单元格数组。例如,给定资产符号列表“AA”
,“BA”
,“猫”
,“弟弟”
,“ETR”
,使用setAssetList
:
p =投资组合;p = setAssetList(p,“AA”,“BA”,“猫”,“弟弟”,“ETR”);disp (p.AssetList)
' aa ' ' ba ' ' cat ' ' dd ' ' etr '
setAssetList
具有许多用于创建资产标识符列表的附加特性。如果你使用setAssetList
只要一个投资组合
对象时,它会根据隐藏公共属性中指定的名称创建一个默认资产列表defaultforAssetList
(这是“资产”
默认情况下)。创建的资产名称的数量取决于属性中的资产数量NumAssets
.如果NumAssets
还没准备好吗NumAssets
假设是1
.
例如,如果a投资组合
对象p
是用NumAssets
=5
,则此代码片段显示默认命名行为:
p =投资组合(“numassets”5);p = setAssetList(p);disp (p.AssetList)
“资产1”、“资产2”、“资产3”、“资产4”、“资产5”
defaultforAssetList
来“交易所交易基金”
,然后你可以为etf创建一个默认列表:p =投资组合(“numassets”5);p.defaultforAssetList =“交易所交易基金”;p = setAssetList(p);disp (p.AssetList)
' etf1 ' ' etf2 ' ' etf3 ' ' etf4 ' ' etf5 ' '
截断和填充资产列表
如果NumAssets
属性,并且您传递了太多或太少的标识符,则投资组合
对象,而setAssetList
函数用使用隐藏公共属性中指定的名称的带编号的默认资产名称截断或填充列表defaultforAssetList
.如果列表被截断或填充,则警告消息指示差异。例如,假设你有一个投资组合
对象有五个etf,你只知道前三个cusip“921937835”
,“922908769”
,“922042775”
.使用此语法可创建一个资产列表,该列表将剩余的资产标识符用编号填充“UnknownCUSIP”
占位符:
p =投资组合(“numassets”5);p.defaultforAssetList =“UnknownCUSIP”;p = setAssetList(p,“921937835”,“922908769”,“922042775”);disp (p.AssetList)
警告:资产的输入列表有两个太少的标识符。填充有编号的资产。>在投资组合。setAssetListat 121 '921937835' '922908769' '922042775' 'UnknownCUSIP4' 'UnknownCUSIP5'
或者,假设您有太多标识符,而只需要前四个资产。属性来截断资产列表投资组合
对象:
p =投资组合(“numassets”4);p =投资组合(p,“assetlist”, {“gg”,“额”,“做功”,“间谍”,“VEU”});disp (p.AssetList)
警告:AssetList有1个太多的标识符。使用前4个资产。>在投资组合。checkarguments at 434 In Portfolio.Portfolio>Portfolio。投资组合价格171 'AGG' 'EEM' 'MDY' 'SPY'
隐藏的公共财产uppercaseAssetList
是一个布尔标志,用于指定是否将资产名称转换为大写字母。的默认值uppercaseAssetList
是假
.方法的使用uppercaseAssetList
标志强制标识符为大写字母:
p =投资组合;p.p upcaseassetlist = true;p = setAssetList(p,{“aa”,“ba”,“猫”,“弟弟”,“etr”});disp (p.AssetList)
' aa ' ' ba ' ' cat ' ' dd ' ' etr '
另请参阅
投资组合
|setAssetList
|setInitPort
|setTrackingPort
|estimateBounds
|checkFeasibility
相关的例子
- 建立一个初始或当前的投资组合
- 使用默认值处理组合约束
- 利用投资组合对象的资产收益和资产收益矩
- 验证组合对象的组合问题
- 资产配置案例研究
- 使用财务工具箱™的投资组合优化示例
- 基于半连续和基数约束的投资组合优化
- Black-Litterman组合优化使用金融工具箱™
- 利用因子模型优化投资组合
- 利用社会绩效衡量的投资组合优化
- 使用自定义目标使投资组合多样化