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

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

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

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

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

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

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

p = PortfolioCVaR;
p = setBounds(p, 0.02, 0.5,'BoundType', 'Conditional', 'NumAssets', 3)
p = 

  PortfolioCVaR with properties:

             BuyCost: []
            SellCost: []
        RiskFreeRate: []
    ProbabilityLevel: []
            Turnover: []
         BuyTurnover: []
        SellTurnover: []
        NumScenarios: []
                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 categorical]

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

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

p = PortfolioCVaR;
p = setBounds(p, 0.02, 0.5,'BoundType', 'Conditional', 'NumAssets', 3)
p = setMinMaxNumAssets(p, 2, 2) 
 p = 

  PortfolioCVaR with properties:

             BuyCost: []
            SellCost: []
        RiskFreeRate: []
    ProbabilityLevel: []
            Turnover: []
         BuyTurnover: []
        SellTurnover: []
        NumScenarios: []
                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 categorical]

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

| | | | | | | | | | |

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

Больше о

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