主要内容

creditMigrationCopula模拟工作流

该示例展示了使用类的通用工作流creditMigrationCopula对象为交易对手方信用评级的组合。

步骤1。创建一个具有4因素模型的creditMigrationCopula对象

加载保存的投资组合数据。

负载CreditMigrationData.mat

为每种债券的投资组合头寸计算债券价格。

migrationValues = migrationPrices .* numBonds;

创建一个creditMigrationCopula对象与四因素模型使用creditMigrationCopula

cmc = creditMigrationCopula (transMat migrationValues,评级,...乐金显示器,重量,“FactorCorrelation”factorCorr)
cmc = creditMigrationCopula属性:Portfolio: [250x5 table] FactorCorrelation: [4x4 double] RatingLabels: [8x1 string] TransitionMatrix: [8x8 double] VaRLevel: 0.9500 UseParallel: 0 PortfolioValues: []

步骤2。将VaRLevel设置为99%。

设置VarLevel财产creditMigrationCopula对象设置为99%(默认值为95%)。

cmc。VaRLevel = 0.99;

步骤3。显示投资组合属性获取关于迁移值、评级、lgd和权重的信息。

显示投资组合属性包含关于迁移值、评级、lgd和权重的信息。迁移值中的列与评级的顺序相同,默认评级位于最后一列。

头(cmc.Portfolio)
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.35 7 1×8双“BB”0.6041 0 0 0 0.65 0.35 1 8×8双“BB”0.4873 0.5 0.5 0 0 0

步骤4。显示交易对手的迁移值。

例如,您可以显示第一个对手方的迁移值。请注意,default的值高于某些非default评级。这是因为默认评级的迁移值是一个参考值(例如,面值、当前评级的向前值或其他值),在模拟过程中乘以恢复速率,以获得在违约情况下资产的值。恢复速率为1-乐金显示器乐金显示器输入creditMigrationCopula是一个常数乐金显示器价值(乐金显示器输入只有一列)。恢复速率为随机数乐金显示器输入creditMigrationCopula指定为beta分布的平均值和标准偏差(乐金显示器输入有两列)。

栏(cmc.Portfolio.MigrationValues (1:)) xticklabels (cmc.RatingLabels)标题(“第一公司的迁移价值”

图中包含一个axes对象。标题为Migration Values for First Company的axes对象包含一个类型为bar的对象。

第5步。运行一个仿真。

使用模拟函数模拟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…]

步骤6。为投资组合风险生成报告。

使用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

步骤7。可视化分布。

查看投资组合价值的直方图。

图h =直方图(cm . portfoliovalues,125);标题(“投资组合价值的分布”);

图中包含一个axes对象。标题为“投资组合值分布”的axis对象包含一个类型为直方图的对象。

步骤8。如果所有交易对手保持当前信用评级,则覆盖该值。

覆盖投资组合对象(cmc),如果所有交易对手都维持其当前的信用评级,就会被收购。

CurrentRatingValue = portRisk。埃尔+ mean(cmc.PortfolioValues); hold情节([CurrentRatingValue CurrentRatingValue],[0马克斯(h.Values)],“线宽”2);网格

图中包含一个axes对象。标题为“投资组合值分布”的axis对象包含两个类型为直方图、直线的对象。

第9步。生成风险贡献报告。

使用riskContribution功能显示风险贡献。风险的贡献,埃尔而且CVaR,是附加的。如果你把这两个指标的每一个都加到所有的交易对手身上,你就会得到整个投资组合报告的价值portfolioRisk表格

rc = riskContribution (cmc);disp (rc (1:10)):
ID EL Std VaR CVaR __ ______ ______ ______ ______ 1 15.521 41.153 238.72 279.18 2 8.49 18.838 92.074 122.19 3 6.0937 20.069 113.22 181.53 4 6.6964 55.885 272.23 313.25 5 23.583 73.905 360.32 573.39 6 10.722 114.97 445.94 728.38 7 1.8393 84.754 262.32 490.39 8 11.711 39.768 175.84 253.29 9 2.2154 4.4038 22.797 31.039 10 1.7453 2.5545 9.8801 17.603

第10步。用t联结来模拟风险暴露。

使用一个tCopula用10个自由度,使用模拟带有可选输入参数的函数。将结果保存到一个新的creditMigrationCopula对象(cmct).

cmct =模拟(cmc, 1 e5,连系动词的“t”“DegreesOfFreedom”, 10)
cmct = creditMigrationCopula属性: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…]

步骤11。生成t联结的投资组合风险报告。

使用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

步骤12。形象化t联结的分布。

查看投资组合价值的直方图。

图h =直方图(cmct.PortfolioValues,125);标题(' t Copula的投资组合价值分布');

图中包含一个axes对象。标题为“投资组合值分布”(Distribution of Portfolio Values for t Copula)的axis对象包含一个类型为直方图的对象。

步骤13。如果所有交易方保持t copula的当前信用评级,则覆盖该值。

覆盖投资组合对象(cmct),如果所有交易对手都维持其当前的信用评级,就会被收购。

CurrentRatingValue2 = portRisk2。埃尔+ mean(cmct.PortfolioValues); hold情节([CurrentRatingValue2 CurrentRatingValue2],[0马克斯(h.Values)],“线宽”2);网格

图中包含一个axes对象。标题为“投资组合值分布”(Distribution of Portfolio Values for t Copula)的axis对象包含两个类型为直方图、直线的对象。

另请参阅

||||||

相关的例子

更多关于

Baidu
map