这个示例显示了使用creditMigrationCopula
交易对手信用评级组合的目标。
加载保存的投资组合数据。
负载CreditMigrationData.mat;
为每一种债券按投资组合仓位调整债券价格。
migrationValues = migrationPrices .* numBonds;
创建一个creditMigrationCopula
对象与4因素模型使用creditMigrationCopula
.
cmc = creditMigrationCopula (transMat migrationValues,评级,...乐金显示器,重量,“FactorCorrelation”factorCorr)
cmc = creditMigrationCopula with properties: Portfolio: [250x5 table] FactorCorrelation: [4x4 double] RatingLabels: [8x1 string] TransitionMatrix: [8x8 double] VaRLevel: 0.9500 UseParallel: 0 PortfolioValues: []
设置VarLevel
财产creditMigrationCopula
对象设置为99%(默认为95%)。
cmc。VaRLevel = 0.99;
投资组合
属性以获取关于迁移值、评级、lgd和权重的信息。显示投资组合
属性,包含关于迁移值、评级、lgd和权重的信息。迁移值中的列与评级顺序相同,默认评级位于最后一列。
头(cmc.Portfolio)
ans =8×5表ID MigrationValues评级乐金显示器的重量 __ _______________ ______ ______ ___________________________________ 1 1×8双”“0.6509 0 0 0 0.5 0.5 - 2 1×8双" BBB " 0.8283 0.45 0.55 0 0 0 3 1×8双“AA”0.6041 0 0.7 0.3 0 0 4 1×8双“BB”0.6509 0 0.55 0.45 0 0 5 1×8双" BBB " 0.4966 0 0 0.75 0.25 0 6 1×8双“BB”0.8283 0 0 0 0.65 - 0.357 1 × 8双“BB”0.6041 0 0 0 0.65 0.35 8 1 × 8双“BB”0.4873 0.5 0 0 0 0.5
例如,可以显示第一个对手的迁移值。请注意default的值高于一些非默认评级。这是因为默认评级的迁移值是一个参考值(例如,面值、当前评级的远期值或其他),该参考值乘以模拟期间的回收率,以获得在发生违约时资产的价值。恢复速率为1-乐金显示器
当乐金显示器
输入creditMigrationCopula
是一个常数乐金显示器
价值(乐金显示器
输入有一列)。时,回收率为一个随机量乐金显示器
输入creditMigrationCopula
指定为beta分布的平均值和标准偏差(乐金显示器
输入有两列)。
栏(cmc.Portfolio.MigrationValues (1:)) xticklabels (cmc.RatingLabels)标题(“第一家公司的移民价值观”)
使用模拟
函数模拟100,000个场景。
cmc =模拟(cmc, 1 e5)
cmc = creditMigrationCopula with properties: Portfolio: [250x5 table] FactorCorrelation: [4x4 double] RatingLabels: [8x1 string] TransitionMatrix: [8x8 double] VaRLevel: 0.9900 UseParallel: 0 PortfolioValues: [2.0082e+06 1.9950e+06 1.9933e+06 2.0009e+06…]
使用portfolioRisk
函数获取风险度量和置信区间的报告埃尔
,性病
,VaR
,CVaR
.
[portRisk, RiskConfidenceInterval] = portfolioRisk (cmc)
portRisk =1×4表EL性病VaR CVaR ______ _____ _____ _____ 4515.9 12963 57176 83975
RiskConfidenceInterval =1×4表EL性病VaR CVaR ________________ ______________ ______________ ______________ 4435.6 - 4596.3 12907 13021 55739 58541 82137 85812
查看投资组合价值的直方图。
图h =直方图(cmc.PortfolioValues,125);标题(“投资组合价值的分布”);
覆盖投资组合对象的值(cmc
),如果所有交易对手保持目前的信用评级。
CurrentRatingValue = portRisk。埃尔+ mean(cmc.PortfolioValues); hold在情节([CurrentRatingValue CurrentRatingValue],[0马克斯(h.Values)],“线宽”2);网格在
使用riskContribution
功能显示风险贡献。风险的贡献,埃尔
和CVaR
,是附加的。如果你把这两个指标对所有的交易对手加起来,你就得到了整个投资组合的报告价值portfolioRisk
表格
rc = riskContribution (cmc);disp (rc (1:10)):
EL Std VaR CVaR ID __ ______ ______ ______ ______ 2 1 15.521 41.153 238.72 279.18 8.49 18.838 92.074 122.19 - 3 5 4 6.0937 20.069 113.22 181.53 6.6964 55.885 272.23 313.25 23.583 73.905 360.32 573.39 6 10.722 114.97 445.94 728.38 7 8 1.8393 84.754 262.32 490.39 11.711 39.768 175.84 253.29 9 10 1.7453 2.5545 9.8801 31.039 2.2154 4.4038 22.797 17.603
使用一个tCopula有10个自由度,使用模拟
函数带有可选输入参数。将结果保存到一个新的creditMigrationCopula
对象(cmct
).
cmct =模拟(cmc, 1 e5,连系动词的,“t”,“DegreesOfFreedom”, 10)
cmct = creditMigrationCopula with properties: Portfolio: [250x5 table] FactorCorrelation: [4x4 double] RatingLabels: [8x1 string] TransitionMatrix: [8x8 double] VaRLevel: 0.9900 UseParallel: 0 PortfolioValues: [2.0021e+06 2.0007e+06 1.9834e+06 2.0025e+06…]
使用portfolioRisk
函数获取风险度量和置信区间的报告埃尔
,性病
,VaR
,CVaR
.
[portRisk2, RiskConfidenceInterval2] = portfolioRisk (cmct)
portRisk2 =1×4表EL性病VaR CVaR ____ _____ _____ __________ 4544 17034 72270 1.2391 e + 05
RiskConfidenceInterval2 =1×4表EL性病VaR CVaR ________________ ______________ ______________ ________________________ 4438.5 - 4649.6 16960 17109 69769 75382 1.1991 1.2791 e + e + 05年05
查看投资组合价值的直方图。
图h =直方图(cmct.PortfolioValues,125);标题(t Copula组合值的分布);
覆盖投资组合对象的值(cmct
),如果所有交易对手保持目前的信用评级。
CurrentRatingValue2 = portRisk2。埃尔+ mean(cmct.PortfolioValues); hold在情节([CurrentRatingValue2 CurrentRatingValue2],[0马克斯(h.Values)],“线宽”2);网格在
creditMigrationCopula
|模拟
|portfolioRisk
|riskContribution
|confidenceBands
|getScenarios
|asrf