Оценка эффективных границ для объекта 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

The 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

См. также

| | |

Похожие примеры

Подробнее о

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