主要内容

使用Copulas建模相关默认值

这个例子探讨了如何使用一个多因素关联模型来模拟相关的交易对手违约。

根据违约风险、违约概率和违约信息,对交易对手的投资组合进行潜在损失估计。一个creditDefaultCopula对象用潜在变量对每个债务人的信用价值进行建模。潜在变量由一系列加权的基础信用因素和每个债务人的特殊信用因素组成。根据债务人的违约概率,潜在变量被映射到每个场景中债务人的违约或非违约状态。组合风险度量、交易对手级别的风险贡献和模拟收敛信息在金宝appcreditDefaultCopula目的。

这个例子还探讨了风险度量对联系符类型的敏感性(高斯联系符vstcopula)用于模拟。

加载并检查投资组合数据

该投资组合包括100个交易对手及其违约时的相关信贷风险敞口(含铅),默认概率(PD.),并拒绝丢失(乐金显示器)。用一个creditDefaultCopula对象时,可以模拟某个固定时间段(例如,一年)的默认值和损失。的含铅PD., 和乐金显示器输入必须针对特定的时间范围。

在本例中,每个交易对手都映射到两个基础信用因素,并具有一组权重。的Weights2F变量是一个NumCounterparties-by-3矩阵,其中每一行包含单个交易方的权重。前两列是两个信用因素的权重,最后一列是每个交易对手的特殊权重。本例中还提供了两个基本因素的相关矩阵(FactorCorr2F)。

负载CreditPortfoliodata.mat.含铅PD.乐金显示器Weights2FFactorCorr2F
Name Size Bytes Class Attributes EAD 100x1 800 double factorcor2f 2x2 32 double LGD 100x1 800 double PD 100x1 800 double Weights2F 100x3 2400 double

初始化creditDefaultCopula对象与投资组合信息和因子相关性。

RNG('默认');CC = CreditDefaultCopula(EAD,PD,LGD,重量2F,“FactorCorrelation”,factorcor2f);%将VAR水平变为99%。cc.VaRLevel = 0.99;disp (cc)
creditDefaultCopula with properties: Portfolio: [100x5 table] FactorCorrelation: [2x2 double] VaRLevel: 0.9900 UseParallel: 0 portfolioloss: []
: cc.Portfolio (1:5)
ans = 5 x5表ID EAD PD乐金显示器的重量  __ ______ _________ ____ ____________________ 1 21.627 0.0050092 0.35 0.35 0.65 - 2 0 3 0 3.2595 0.060185 0.35 0.45 - 0.55 20.391 0.11015 0.55 0.15 0.85 0 5 4 0 3.7534 0.0020125 0.35 0.25 0.75 5.7193 0.060185 0.35 0.35 0.65 0

模拟模型和绘图潜在损失

使用该模拟多因素模型模拟函数。默认情况下,使用高斯库。此功能内部地图将实现潜在变量的默认状态映射到默认状态并计算相应的损耗。模拟后,creditDefaultCopula对象填充portfoliolosses.CounterpartyLosses属性与仿真结果。

cc =模拟(cc、1 e5);disp (cc)
creditDefaultCopula with properties: Portfolio: [100x5 table] FactorCorrelation: [2x2 double] VaRLevel: 0.9900 UseParallel: 0 PortfolioLosses: [1x100000 double]

portfolioRisk函数返回总投资组合损失分布的风险度量,以及可选的,它们各自的置信区间。中设置的水平报告风险值(VaR)和条件风险值(CVaR)varlevel.本物业creditDefaultCopula目的。

[公关,pr_ci] = portfolioRisk (cc);流(“投资组合风险措施:\ n”);disp (pr)流('\ n \ n \ ncelfident措施的风险措施:\ n');disp (pr_ci)
投资组合风险的措施:EL标准的VaR CVaR的______ ______ _____ ______ 24.876 23.778 102.4 121.28的风险的措施置信区间:EL标准的VaR CVaR的________________ ________________ ________________ ________________ 24.729 25.023 23.674 23.883 101.19 103.5 120.13 122.42

看看投资组合损失的分布。期望损失(EL)、VaR和CVaR用竖线表示。经济资本由VaR和EL之间的差值给出,用EL和VaR之间的阴影区域表示。

直方图(cc.PortfolioLosses)标题(“投资组合的损失”);包含('亏损($)')ylabel('频率') 抓住%在直方图上覆盖风险度量。xlim([0 1.1 * pr.CVaR]) = @(x,color) plot([x x],ylim,“线宽”2,'颜色'、颜色);情节(公关。埃尔,“b”);plotline(pr.var,“r”);cvarline = plotline(pr.cvar,'M');遮蔽预期损失和经济资本的区域。pltband = @(x,color) patch([x fliplr(x)],[0 0 repmat(max(ylim),1,2)],...的颜色,“FaceAlpha”, 0.15);elband = plotband([0 pr.EL],'蓝色');ulband = plotband([公关。EL pr.VaR),“红色”);传奇([elband、ulband cvarline),...“预期损失”“经济资本”'CVAR(99%)'},...'地点''北');

找到对方的集中风险

找到投资组合中的集中度风险riskContribution函数。riskContribution返回每个交易对手对投资组合EL和CVaR的贡献。这些附加贡献之和对应的总投资组合风险度量。

rc = riskContribution (cc);据报道了EL和CVAR的%风险贡献。RC(1:5,:)
ans = 5 × 5 table ID EL Std VaR CVaR __________ __________ _________ _________ 1 0.036031 0.022762 0.083828 0.13625 2 0.068357 0.039295 0.23373 0.24984 3 1.2228 0.60699 2.3184 2.3775 4 0.002877 0.00079014 0.0024248 0.0013137 5 0.12127 0.037144 0.18474 0.24622

根据CVaR贡献找出风险最大的交易对手。

[rc_sorted, idx] = sortrows (rc,'cvar'“下”);: rc_sorted (1:5)
ans = 5x5 table ID EL Std VaR CVaR __ _______ ______ ______ ______ 89 2.2647 2.2063 8.2676 8.9997 96 1.3515 1.6514 6.6157 7.7062 66 0.90459 1.474 6.4168 7.5149 22 1.5745 1.8663 6.0121 7.3814 16 1.6352 1.5288 6.3404 7.3462

绘制交易对手风险敞口和CVaR贡献。CVaR贡献最高的交易对手用红色和橙色表示。

图;指标= 50;colorVector = rc_sorted.cvar;分散(CC.Portfolio(IDX,:)。EAD,RC_SORTed.cvar,...pointSize colorVector,“填充”) colormap (“喷气机”)标题('Cvar贡献与曝光')Xlabel(“曝光”)ylabel('cvar贡献'网格)

研究具有置信带的仿真收敛

使用信心量函数来研究仿真的收敛性。默认情况下,报告CVaR置信区间,但是使用可选参数支持所有风险度量的置信区间金宝appRiskMeasure争论。

cb = confidenceBands (cc);%置信区间存储在一个表中。cb (1:5,:)
ans = 5x4 table numscenario Lower CVaR Upper ____________ ____________ ______ 1000 106.7 121.99 137.28 2000 109.18 117.28 125.38 3000 114.68 121.63 128.58 4000 114.02 120.06 126.11 5000 114.77 120.36 125.94

绘制置信带,看看估计收敛的速度有多快。

图;图(...cb.numscenarios,...cb {: {“上”'cvar'“低”}},...“线宽”2);标题(“CVaR: 95%置信区间vs.场景#”);包含(“场景#”);ylabel ('cvar + 95%ci')传说(上带的'cvar''下乐队');网格

找出必要的场景数量,以实现特定宽度的置信带。

width =(cb.upper  -  cb.lower)./ cb.cvar;图;绘图(CB.numscenarios,宽* 100,“线宽”2);标题(“CVaR: 95%置信区间宽度vs.场景#”);包含(“场景#”);ylabel (' CI宽度为值的%ile '网格)找到置信区间在该区间的1%(两侧)以内的点% CVaR。阈值= 0.02;scenidx = find(width <= thresh,1,“第一”);scenValue = cb.NumScenarios (scenIdx);widthValue =宽度(scenIdx);持有plot(xlim,100 * [widthValue widthValue],...[scenvalue scenvalue],ylim,...“线宽”2);标题(“宽度为2%的置信区间所需的场景”);

比较高斯和t连系动词

切换到tCopula增加了交易对手之间的默认相关性。这导致了对投资组合损失的更胖的尾部分布,并在压力方案中具有更高的潜在损失。

使用。重新运行模拟tCopula和计算新的投资组合风险度量。默认的自由度(dof)为t连系动词是5。

cc_t =模拟(cc, 1 e5,连系动词的“t”);pr_t = portfolioRisk (cc_t);

看看投资组合风险是如何随着t连系动词。

流(“与高斯Copula的投资组合风险:\ n”);disp (pr)流(' n\ nt关联的投资组合风险(dof = 5): n');DISP(PR_T)
高斯关联组合风险:EL Std VaR CVaR ______ ______ _____ ______ 24.876 23.778 102.4 121.28 t关联组合风险(dof = 5): EL Std VaR CVaR ______ ______ ______ ______ 24.808 38.749 186.08 250.59

比较每个模型的尾部损失。

%绘制高斯copula尾部。图;subplot(2,1,1) p1 = histogram(cc.PortfolioLosses);持有plotline(pr.var,[1 0.5 0.5]) plotline(pr.CVaR,[1 0 0]) xlim([0.8 * pr.VaR 1.2 * pr_t.CVaR]); ylim([0 1000]); grid传奇(损失分布的“VaR”'cvar')标题(“高斯关联的投资组合损失”);包含('亏损($)');ylabel ('频率');%绘制T copula尾巴。subplot(2,1,2) p2 = histogram(cc_t.PortfolioLosses);持有plotline(pr_t.var,[1 0.5 0.5])plotline(pr_t.cvar,[1 0 0])xlim([0.8 * pr.var 1.2 * pr_t.cvar]);ylim (1000 [0]);网格传奇(损失分布的“VaR”'cvar');标题('投资组合损失与t Copula (dof = 5)');包含('亏损($)');ylabel ('频率');

尾部风险度量VaR和CVaR显著高于使用t有五个自由度的Copula。默认的相关性较高tcopula,因此有更多的情况,多个对手违约。自由度的数目起着重要的作用。对于非常高的自由度,结果是tcopula的结果与高斯copula相似。五个自由度是一个非常低的数字,因此,结果显示出惊人的差异。此外,这些结果强调了极端损失的潜力是非常敏感的选择联系符和自由度的数目。

另请参阅

|||||

相关的例子

更多关于