Работая с 'Conditional' BoundType, MinNumAssets и ограничения MaxNumAssets Используя объекты портфеля

Когда любой или любая комбинация 'Conditional' , BoundType, MinNumAssets или ограничения MaxNumAssets активны, проблема портфеля, формулируется путем добавления двоичных переменных NumAssets, где 0 указывает не инвестированный, и 1 инвестируют. Например, чтобы объяснить BoundType 'Conditional' и MinNumAssets и ограничения MaxNumAssets, примите, что ваш портфель имеет вселенную 100 активов, которые вы хотите инвестировать:

  • BoundType 'Conditional' (также известный как полунепрерывные ограничения), установленный setBounds, часто используется в ситуациях, где вы не хотите инвестировать маленькие значения. Стандартным примером является задача оптимизации портфеля, где много маленьких выделений не привлекательны из-за операционных издержек. Вместо этого вы предпочитаете меньше инструментов в портфеле с большими выделениями. Эта ситуация может быть обработана using'Conditional' ограничения BoundType для Portfolio, PortfolioCVaR или объекта PortfolioMAD.

    Например, весом, который вы инвестируете в каждый актив, является или 0 или между [0.01, 0.5]. Обычно полунепрерывная переменная x является непрерывной переменной между границами [lb, ub], который также может принять значение 0, где lb> 0, lbub. Применение этого к оптимизации портфеля требует, чтобы очень маленьких или больших положений избежали, который является значениями, которые обрушиваются (0, lb) или являются больше, чем ub.

  • MinNumAssets и MaxNumAssets (также известный как ограничения кардинальности), установленный setMinMaxNumAssets, ограничивают количество активов в Portfolio, PortfolioCVaR или объекте PortfolioMAD. Например, если у вас есть 100 активов в вашем портфеле, и вы хотите, чтобы количество активов, выделенных в портфеле, было от 40 до 60. Используя MinNumAssets и MaxNumAssets можно ограничить количество активов в оптимизированном портфеле, который позволяет вам ограничивать транзакцию и операционные затраты или создавать индексный портфель отслеживания.

Установка 'Conditional' ограничения BoundType Используя функцию setBounds

Используйте setBounds с BoundType 'conditional', чтобы установить кси = 0 или 0.02 <= кси <= 0.5 для всего i=1... NumAssets:

p = Portfolio('AssetMean', AssetMean, 'AssetCovar', AssetCovar);
p = setBounds(p, 0.02, 0.5,'BoundType', 'Conditional', 'NumAssets', 3)  
p = 
  Portfolio with properties:

          BuyCost: []
         SellCost: []
     RiskFreeRate: []
        AssetMean: [3×1 double]
       AssetCovar: [3×3 double]
    TrackingError: []
     TrackingPort: []
         Turnover: []
      BuyTurnover: []
     SellTurnover: []
             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: []
        BoundType: [3×1 categorical]
     MinNumAssets: []
     MaxNumAssets: []

Установление пределов для количества активов, инвестированных Используя функцию setMinMaxNumAssets

Можно также установить свойства MinNumAssets и MaxNumAssets задать предел на количестве активов, которые инвестируют с помощью setMinMaxNumAssets. Например, установкой MinNumAssets =MaxNumAssets=2, только два из этих трех активов инвестируют в портфель.

AssetMean = [ 0.0101110; 0.0043532; 0.0137058 ];
AssetCovar = [ 0.00324625 0.00022983 0.00420395;
               0.00022983 0.00049937 0.00019247;
               0.00420395 0.00019247 0.00764097 ]; 

p = Portfolio('AssetMean', AssetMean, 'AssetCovar', AssetCovar);
p = setMinMaxNumAssets(p, 2, 2) 
 Portfolio with properties:

          BuyCost: []
         SellCost: []
     RiskFreeRate: []
        AssetMean: [3×1 double]
       AssetCovar: [3×3 double]
    TrackingError: []
     TrackingPort: []
         Turnover: []
      BuyTurnover: []
     SellTurnover: []
             Name: []
        NumAssets: 3
        AssetList: []
         InitPort: []
      AInequality: []
      bInequality: []
        AEquality: []
        bEquality: []
       LowerBound: []
       UpperBound: []
      LowerBudget: []
      UpperBudget: []
      GroupMatrix: []
       LowerGroup: []
       UpperGroup: []
           GroupA: []
           GroupB: []
       LowerRatio: []
       UpperRatio: []
        BoundType: []
     MinNumAssets: 2
     MaxNumAssets: 2

Смотрите также

| | | | | | | | | | | | |

Связанные примеры

Больше о

Внешние веб-сайты

Для просмотра документации необходимо авторизоваться на сайте