主要内容

setcost

建立比例交易成本

描述

例子

obj= setcost (objBuyCost设定一定比例的交易费用投资组合PortfolioCVaR,或PortfolioMAD对象。有关使用这些不同对象时各自工作流的详细信息,请参见组合对象的工作流PortfolioCVaR对象的工作流,PortfolioMAD对象的工作流

例子

obj= setcost (objBuyCostSellCostInitPortNumAssets为指定的附加期权的投资组合对象设定比例交易成本SellCostInitPort,NumAssets

给定比例交易成本和初始投资组合中的变量BuyCostSellCost,InitPort,任何投资组合的交易成本港口降低预期投资组合回报:

BuyCost' * max{0, Port - InitPort} + SellCost' * max{0, InitPort - Port}

例子

全部折叠

给定一个Portfolio对象p对于已经设置好的初始投资组合,请使用setcost建立交易费用的功能。

BC = [0.00125;0.00125;0.00125;0.00125;0.00125);Sc = [0.00125;0.007;0.00125;0.00125;0.0024); x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ]; p = Portfolio(“InitPort”, x0);p = setCosts(p, bc, sc);disp (p.NumAssets);
5
disp (p.BuyCost);
0.0013 0.0013 0.0013 0.0013
disp (p.SellCost);
0.0013 0.0070 0.0013 0.0013 0.0024
disp (p.InitPort);
0.4000 0.2000 0.2000 0.1000 0.1000

给定一个CVaR投资组合对象p对于已经设置好的初始投资组合,请使用setcost建立交易费用的功能。

BC = [0.00125;0.00125;0.00125;0.00125;0.00125);Sc = [0.00125;0.007;0.00125;0.00125;0.0024); x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ]; p = PortfolioCVaR(“InitPort”, x0);p = setCosts(p, bc, sc);disp (p.NumAssets);
5
disp (p.BuyCost);
0.0013 0.0013 0.0013 0.0013
disp (p.SellCost);
0.0013 0.0070 0.0013 0.0013 0.0024
disp (p.InitPort);
0.4000 0.2000 0.2000 0.1000 0.1000

鉴于PortfolioMAD对象p对于已经设置好的初始投资组合,请使用setcost建立交易费用的功能。

BC = [0.00125;0.00125;0.00125;0.00125;0.00125);Sc = [0.00125;0.007;0.00125;0.00125;0.0024); x0 = [ 0.4; 0.2; 0.2; 0.1; 0.1 ]; p = PortfolioMAD(“InitPort”, x0);p = setCosts(p, bc, sc);disp (p.NumAssets);
5
disp (p.BuyCost);
0.0013 0.0013 0.0013 0.0013
disp (p.SellCost);
0.0013 0.0070 0.0013 0.0013 0.0024
disp (p.InitPort);
0.4000 0.2000 0.2000 0.1000 0.1000

输入参数

全部折叠

对象组合,指定使用投资组合PortfolioCVaR,或PortfolioMAD对象。有关创建投资组合对象的更多信息,请参见

数据类型:对象

以购买每项资产的交易成本比例,指定为向量a投资组合PortfolioCVaR,或PortfolioMAD输入对象(obj).

请注意

  • 如果BuyCostSellCost,或InitPort都指定为标量和NumAssets存在或可归责,则这些值进行标量展开。的默认值NumAssets1

  • 交易成本在BuyCostSellCost如果它们给交易带来成本,则是正的。在某些情况下,它们可能是负价值的,这意味着贸易信贷。

数据类型:

按比例交易成本出售每项资产,指定为向量a投资组合PortfolioCVaR,或PortfolioMAD输入对象(obj).

请注意

  • 如果BuyCostSellCost,或InitPort都指定为标量和NumAssets存在或可归责,则这些值进行标量展开。的默认值NumAssets1

  • 交易成本在BuyCostSellCost如果它们给交易带来成本,则是正的。在某些情况下,它们可能是负价值的,这意味着贸易信贷。

数据类型:

初始或当前投资组合的权重,指定为a的向量投资组合PortfolioCVaR,或PortfolioMAD输入对象(obj).

请注意

如果没有InitPort,则假设该值为0

  • 如果BuyCostSellCost,或InitPort都指定为标量和NumAssets存在或可归责,则这些值进行标量展开。的默认值NumAssets1

  • 交易成本在BuyCostSellCost如果它们给交易带来成本,则是正的。在某些情况下,它们可能是负价值的,这意味着贸易信贷。

数据类型:

投资组合中的资产数量,用标量表示投资组合PortfolioCVaR,或PortfolioMAD输入对象(obj).

请注意

NumAssets不能用于更改投资组合对象的维度。

  • 如果BuyCostSellCost,或InitPort都指定为标量和NumAssets存在或可归责,则这些值进行标量展开。的默认值NumAssets1

  • 交易成本在BuyCostSellCost如果它们给交易带来成本,则是正的。在某些情况下,它们可能是负价值的,这意味着贸易信贷。

数据类型:

输出参数

全部折叠

更新的投资组合对象,返回为投资组合PortfolioCVaR,或PortfolioMAD对象。有关创建投资组合对象的更多信息,请参见

提示

  • 您还可以使用点表示法来设置比例交易成本。

    obj = obj。setcost(BuyCost, SellCost, InitPort, NumAssets);

  • 如果BuyCostSellCost输入是否为空with[],项目组合对象中相应的属性被清除并设置为[].如果InitPort是否设置为空[],它只会被清除并设置为[]如果BuyCostSellCost,营业额也是空的。否则,它就是一个错误。

介绍了R2011a