exponenta event banner

Оцените эффективные портфели вдоль целой границы для объекта PortfolioMAD

Существует два способа посмотреть на задачу оптимизации портфеля, которая зависит от того, что вы пытаетесь сделать. Одна цель состоит в том, чтобы оценить, что эффективные портфели и другой должны оценить границы эффективности. Этот раздел фокусируется на бывших Границах эффективности цели и Оценки для особого внимания Объекта PortfolioMAD на последней цели. Для получения информации о рабочем процессе при использовании объектов PortfolioMAD смотрите Рабочий процесс Объекта PortfolioMAD.

Получение портфелей вдоль целой границы эффективности

Самый основной способ получить оптимальные портфели состоит в том, чтобы получить точки в целой области значений границы эффективности. Учитывая задачу оптимизации портфеля в PortfolioMAD объект, estimateFrontier функция вычисляет эффективные портфели, расположенные с интервалами равномерно согласно прокси возврата от минимума до максимальных эффективных портфелей возврата. Количеством оцененных портфелей управляет скрытое свойство defaultNumPorts который установлен в 10. Различное значение для количества оцененных портфелей задано, как введено к estimateFrontier. Этот пример показывает количество по умолчанию эффективных портфелей в целой области значений границы эффективности:

m = [ 0.05; 0.1; 0.12; 0.18 ];
C = [ 0.0064 0.00408 0.00192 0; 
    0.00408 0.0289 0.0204 0.0119;
    0.00192 0.0204 0.0576 0.0336;
    0 0.0119 0.0336 0.1225 ];
m = m/12;
C = C/12;

AssetScenarios = mvnrnd(m, C, 20000);

p = PortfolioMAD;
p = setScenarios(p, AssetScenarios);
p = setDefaultConstraints(p);
pwgt = estimateFrontier(p);
disp(pwgt)
 Columns 1 through 8

    0.8907    0.7289    0.5614    0.3946    0.2257    0.0612         0    0.0000
    0.0330    0.1163    0.2119    0.3042    0.3998    0.4876    0.4400    0.3125
    0.0420    0.0469    0.0472    0.0505    0.0534    0.0580    0.0374    0.0018
    0.0343    0.1079    0.1794    0.2507    0.3211    0.3933    0.5226    0.6857

  Columns 9 through 10

    0.0000    0.0000
    0.1570    0.0000
    0.0000    0.0000
    0.8430    1.0000
Если вы хотите только четыре портфеля в предыдущем примере:
pwgt = estimateFrontier(p, 4);

disp(pwgt)
  0.8907    0.3946         0    0.0000
  0.0330    0.3042    0.4401    0.0000
  0.0420    0.0505    0.0373    0.0000
  0.0343    0.2507    0.5227    1.0000

Запуск с начального портфеля, estimateFrontier также возвращает покупки и продажи, чтобы добраться от вашего начального портфеля до каждого эффективного портфеля на границе эффективности. Например, учитывая начальный портфель в pwgt0, можно получить покупки и продажи:

pwgt0 = [ 0.3; 0.3; 0.2; 0.1 ];
p = setInitPort(p, pwgt0);
[pwgt, pbuy, psell] = estimateFrontier(p);

display(pwgt)
display(pbuy)
display(psell)
pwgt =

  Columns 1 through 8

    0.8907    0.7289    0.5614    0.3946    0.2257    0.0612         0    0.0000
    0.0330    0.1163    0.2119    0.3042    0.3998    0.4876    0.4400    0.3125
    0.0420    0.0469    0.0472    0.0505    0.0534    0.0580    0.0374    0.0018
    0.0343    0.1079    0.1794    0.2507    0.3211    0.3933    0.5226    0.6857

  Columns 9 through 10

    0.0000    0.0000
    0.1570    0.0000
    0.0000    0.0000
    0.8430    1.0000


pbuy =

  Columns 1 through 8

    0.5907    0.4289    0.2614    0.0946         0         0         0         0
         0         0         0    0.0042    0.0998    0.1876    0.1400    0.0125
         0         0         0         0         0         0         0         0
         0    0.0079    0.0794    0.1507    0.2211    0.2933    0.4226    0.5857

  Columns 9 through 10

         0         0
         0         0
         0         0
    0.7430    0.9000


psell =

  Columns 1 through 8

         0         0         0         0    0.0743    0.2388    0.3000    0.3000
    0.2670    0.1837    0.0881         0         0         0         0         0
    0.1580    0.1531    0.1528    0.1495    0.1466    0.1420    0.1626    0.1982
    0.0657         0         0         0         0         0         0         0

  Columns 9 through 10

    0.3000    0.3000
    0.1430    0.3000
    0.2000    0.2000
         0         0
Если вы не задаете начальный портфель, веса покупки и продажи принимают, что вашим начальным портфелем является 0.

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

| | | | | | | |

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

Больше о