Работа с другими объектами портфеля

PortfolioMAD объект для оптимизации портфеля MAD. PortfolioCVaR объект для оптимизации портфеля CVaR. Portfolio объект для оптимизации портфеля среднего отклонения. Иногда, вы можете хотеть исследовать задачи оптимизации портфеля согласно различным комбинациям прокси риска и возврата. Типичный пример - то, что вы хотите сделать, оптимизация портфеля MAD и затем хотеть работать, в основном, с моментами портфеля возвращается. Предположим, что вы настраиваете задачу оптимизации портфеля MAD с:

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

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

p = PortfolioMAD;
p = setAssetList(p, 'Bonds','Large-Cap Equities','Small-Cap Equities','Emerging Equities');
p = setInitPort(p, pwgt0);
p = simulateNormalScenariosByMoments(p, m, C, 20000);
p = setDefaultConstraints(p);

Чтобы работать с той же проблемой в среде среднего отклонения, можно использовать сценарии от PortfolioMAD возразите, чтобы настроить объект Portfolio так, чтобы p содержит задачу оптимизации MAD и q содержит задачу оптимизации среднего отклонения на основе тех же данных.

q = Portfolio('AssetList', p.AssetList);
q = estimateAssetMoments(q, p.getScenarios);
q = setDefaultConstraints(q);

pwgt = estimateFrontier(p);
qwgt = estimateFrontier(q);

Поскольку каждый объект имеет различного прокси риска, не возможно сравнить результаты рядом друг с другом. Получить средние значения и стандартные отклонения портфеля возвращается, можно использовать функции, сопоставленные с каждым объектом получить:

pret = estimatePortReturn(p, pwgt);
pstd = estimatePortStd(p, pwgt);
qret = estimatePortReturn(q, qwgt);
qstd = estimatePortStd(q, qwgt);

[pret, qret]
[pstd, qstd]
ans =

    0.0592    0.0590
    0.0730    0.0728
    0.0868    0.0867
    0.1006    0.1005
    0.1145    0.1143
    0.1283    0.1282
    0.1421    0.1420
    0.1559    0.1558
    0.1697    0.1697
    0.1835    0.1835


ans =

    0.0767    0.0767
    0.0829    0.0828
    0.0989    0.0987
    0.1208    0.1206
    0.1461    0.1459
    0.1732    0.1730
    0.2042    0.2040
    0.2453    0.2452
    0.2929    0.2928
    0.3458    0.3458

Чтобы привести к сопоставимым результатам, можно использовать возвраты или риски от одной оптимизации портфеля, когда цель возвращает или рискует для другой оптимизации портфеля.

qwgt = estimateFrontierByReturn(q, pret);
qret = estimatePortReturn(q, qwgt);
qstd = estimatePortStd(q, qwgt);

[pret, qret]
[pstd, qstd]
ans =

    0.0592    0.0592
    0.0730    0.0730
    0.0868    0.0868
    0.1006    0.1006
    0.1145    0.1145
    0.1283    0.1283
    0.1421    0.1421
    0.1559    0.1559
    0.1697    0.1697
    0.1835    0.1835


ans =

    0.0767    0.0767
    0.0829    0.0829
    0.0989    0.0989
    0.1208    0.1208
    0.1461    0.1461
    0.1732    0.1732
    0.2042    0.2042
    0.2453    0.2453
    0.2929    0.2929
    0.3458    0.3458
Теперь возможно выдержать сравнение, стандартные отклонения портфеля возвращается из любого типа оптимизации портфеля.

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

|

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

Больше о

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