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

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

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 = PortfolioCVaR;
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);
p = setProbabilityLevel(p, 0.9);

Чтобы работать с той же проблемой в среде среднего отклонения, можно использовать сценарии от PortfolioCVaR возразите, чтобы настроить Portfolio возразите так, чтобы p содержит задачу оптимизации CVaR и 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.0665    0.0585
    0.0787    0.0716
    0.0910    0.0848
    0.1033    0.0979
    0.1155    0.1111
    0.1278    0.1243
    0.1401    0.1374
    0.1523    0.1506
    0.1646    0.1637
    0.1769    0.1769


ans =

    0.0797    0.0774
    0.0912    0.0835
    0.1095    0.0995
    0.1317    0.1217
    0.1563    0.1472
    0.1823    0.1746
    0.2135    0.2059
    0.2534    0.2472
    0.2985    0.2951
    0.3499    0.3499

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

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

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

    0.0665    0.0665
    0.0787    0.0787
    0.0910    0.0910
    0.1033    0.1033
    0.1155    0.1155
    0.1278    0.1278
    0.1401    0.1401
    0.1523    0.1523
    0.1646    0.1646
    0.1769    0.1769


ans =

    0.0797    0.0797
    0.0912    0.0912
    0.1095    0.1095
    0.1317    0.1317
    0.1563    0.1563
    0.1823    0.1823
    0.2135    0.2135
    0.2534    0.2534
    0.2985    0.2985
    0.3499    0.3499
Теперь возможно выдержать сравнение, стандартные отклонения портфеля возвращается из любого типа оптимизации портфеля.

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

|

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

Больше о

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