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

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

Получение портфельных рисков MAD и возвращается

Учитывая любой портфель и, в частности, эффективные портфели, функции estimatePortReturn и estimatePortRisk обеспечьте оценки для возврата (или возвратите прокси), риск (или прокси риска). Каждая функция имеет тот же входной синтаксис, но с различными комбинациями выходных параметров. Предположим, что у вас есть этот после задачи оптимизации портфеля, которая дала вам набор портфелей вдоль границы эффективности в pwgt:

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);

pwgt0 = [ 0.3; 0.3; 0.2; 0.1 ];

p = setInitPort(p, pwgt0);
pwgt = estimateFrontier(p)
pwgt =

  Columns 1 through 8

    0.8954    0.7264    0.5573    0.3877    0.2176    0.0495    0.0000         0
    0.0310    0.1239    0.2154    0.3081    0.4028    0.4924    0.4069    0.2386
    0.0409    0.0524    0.0660    0.0792    0.0907    0.1047    0.1054    0.1132
    0.0328    0.0973    0.1613    0.2250    0.2890    0.3534    0.4877    0.6482

  Columns 9 through 10

         0    0.0000
    0.0694    0.0000
    0.1221    0.0000
    0.8084    1.0000

Примечание

Помните, что прокси риска для оптимизации портфеля MAD является средним абсолютным отклонением.

Учитывая pwgt0 и pwgt, используйте портфельный риск и возвратите функции оценки, чтобы получить риски, и возвращается для вашего начального портфеля и портфелей на границе эффективности:

prsk0 = estimatePortRisk(p, pwgt0);
pret0 = estimatePortReturn(p, pwgt0);
prsk = estimatePortRisk(p, pwgt);
pret = estimatePortReturn(p, pwgt);
display(prsk0);
display(pret0);
display(prsk);
display(pret);
Вы получаете эти риски, и возвращается:
prsk0 =

    0.0256


pret0 =

    0.0072


prsk =

    0.0178
    0.0193
    0.0233
    0.0286
    0.0348
    0.0414
    0.0489
    0.0584
    0.0692
    0.0809


pret =

    0.0047
    0.0059
    0.0072
    0.0084
    0.0096
    0.0108
    0.0120
    0.0133
    0.0145
    0.0157

Получение стандартного отклонения PortfolioMAD

PortfolioMAD объект имеет функцию, чтобы вычислить стандартные отклонения портфеля, возвращается, estimatePortStd. Эта функция работает с любыми портфелями, не обязательно эффективными портфелями. Например, следующий пример получает пять портфелей (pwgt) на границе эффективности и также имеет начальный портфель в pwgt0. Различные статистические данные портфеля вычисляются, которые включают возврат, риск и стандартное отклонение. Перечисленные оценки для начального портфеля в первой строке, сопровождаемой оценками для каждого из этих пяти эффективных портфелей в последующих строках.

m = [ 0.0042; 0.0083; 0.01; 0.15 ];
C = [ 0.005333 0.00034 0.00016 0;
0.00034 0.002408 0.0017 0.000992;
0.00016 0.0017 0.0048 0.0028;
0 0.000992 0.0028 0.010208 ];

pwgt0 = [ 0.3; 0.3; 0.2; 0.1 ];

p = PortfolioMAD('initport', pwgt0);
p = simulateNormalScenariosByMoments(p, m, C, 20000);
p = setDefaultConstraints(p);

pwgt = estimateFrontier(p, 5);

pret = estimatePortReturn(p, [pwgt0, pwgt]);
prsk = estimatePortRisk(p, [pwgt0, pwgt]);
pstd = estimatePortStd(p, [pwgt0, pwgt]);

[pret, prsk, pstd]
ans =

    0.0212    0.0305    0.0381
    0.0187    0.0326    0.0407
    0.0514    0.0369    0.0462
    0.0841    0.0484    0.0607
    0.1168    0.0637    0.0796
    0.1495    0.0807    0.1009

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

| | |

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

Больше о