主要内容

copula的错误风险

这个例子展示了一种使用高斯copula来模拟交易对手信用风险错误路径的方法。

交易对手信用风险(CCR)的基本方法(见交易对手信用风险和CVA假设市场和信用风险因素是相互独立的。对市场风险因素的模拟驱动了投资组合中所有合约的敞口。在另一个单独的步骤中,信用违约掉期(CDS)市场报价决定每个交易对手的违约概率。风险暴露、违约概率和给定的回收率被用来计算每个交易对手的信用价值调整(CVA),这是预期损失的衡量标准。风险因素的模拟和违约概率的模拟是相互独立的。

在实践中,违约概率和市场因素是相互关联的。这种关系对于某些类型的工具可能可以忽略不计,但对于其他类型的工具,市场和信用风险因素之间的关系可能太重要了,以至于在计算风险度量时不能忽视。当交易对手的违约概率和特定合同的风险敞口同时增加时,我们称该合同存在错误方向风险(wrong way risk, WWR)。

这个例子演示了Garcia Cespedes等人所描述的错误风险方法的实施(见参考文献).

接触模拟

许多金融机构都有模拟市场风险因素的系统,并在给定的模拟日期对其投资组合中的所有工具进行估值。这些模拟被用来计算暴露和其他风险措施。由于模拟是计算密集型的,因此重用它们进行后续风险分析是很重要的。

本例使用的数据和仿真结果来自交易对手信用风险和CVA示例,以前保存在ccr.mat文件。的ccr.mat文件包含:

  • RateSpec:计算合同价值时的费率规格

  • 解决:计算合同金额的结算日期

  • simulationDates:模拟日期向量

  • 掉期交易:包含交换参数的结构体

  • :NUMDATESxNUMCONTRACTxNUMSCENARIOS每个日期/场景的模拟合同值的立方体

本例只考察一年时间范围内的预期损失,因此数据是在一年的模拟之后裁剪的。第一年的模拟日期以月为频率,所以第13个模拟日期是我们一年的时间范围(第一个模拟日期是确定日期)。

负载ccr.matoneYearIdx = 13;值=值(1:oneYearIdx,:,);日期= simulationDates (1: oneYearIdx);numScenarios =大小(价值观,3);

信用风险敞口是从模拟的合同价值中计算出来的。这些风险敞口是每个交易对手从结算日到我们的一年时间范围的月度信贷风险敞口。

由于违约可能在一年期期间的任何时间发生,因此通常基于预期正暴露(EPE)的思想对违约暴露(EAD)进行建模。计算每个场景的时间平均曝光量,称为PE(正曝光)。PE的平均值,包括所有场景,是EPE,也可以从exposureprofiles函数。

正曝光矩阵体育每个模拟场景包含一行,每个交易方包含一列。这是本分析中使用的EAD。

计算交易对手风险敞口[敞口,交易对手]=信用敞口(价值,互换)。交易对手,...“NettingID”, swaps.NettingID);numCP =元素个数(对手);计算每个场景的PE(时间平均曝光)intervalWeights = diff(日期)/(日期(结束)-日期(1));exposureMidpoints = 0.5 *(曝光(1:end-1,:,:) +曝光(2:end,:));weightedContributions = bsxfun (@times intervalWeights exposureMidpoints);PE =挤压(sum (weightedContributions));计算每个场景的总投资组合风险totalExp = (PE、2)之和;% PE和totalExp的显示大小体育totalExp
名称大小字节类属性PE 1000x5 40000 double totalExp 1000x1 8000 double

信贷模拟

模拟信用违约的一种常见方法是基于“单因素模型”,有时也被称为“资产价值方法”Gupton等人,1997年).这是模拟相关默认值的一种有效方法。

每个公司是否与随机变量相关,这样

Y β Z + 1 - β 2 ϵ

在哪里Z为“单因素”,这是一个标准的正态随机变量,代表一个系统信用风险因素,其值影响所有公司。公司之间的相关性公因式是beta_i,公司之间的相关性jbeta_i * beta_j.特殊的冲击epsilon_i是另一个标准的正常变量,它可以减少或增加系统因素的影响,独立于任何其他公司的情况。

如果公司的违约概率PDi,则默认为

Φ ( Y < P D

在哪里 Φ 为累积标准正态分布。

变量有时被解释为资产收益,有时又被称为潜在变量。

这个模型是一个高斯关联函数,它引入了信用违约之间的相关性。copula提供了一种特殊的方式来引入相关,或者更普遍地说,两个相互依赖未知的随机变量之间的相互依赖。

利用CDS息差来引导每个交易对手一年的违约概率。CDS报价来自《华尔街日报》使用的掉期投资组合电子表格交易对手信用风险和CVA的例子。

为每一交易对手进口CDS市场信息swapFile =“cva-swap-portfolio.xls”;cd = readtable (swapFile,“表”“CDS利差”);cdsDates = datenum (cds.Date);cdsSpreads = table2array (cds(:, 2:结束));每个交易对手的启动默认概率(RateSpec zeroData =。EndDates RateSpec.Rates];defprobb = 0 (1, size(cdsSpreads,2)); / /i = 1:numel(defProb) probData = cdsbootstrap(zeroData, [cdsDates cdsSpreads(:,i)],...解决,“probDates”、日期(结束));defProb (i) = probData (2);结束

现在模拟信贷场景。因为违约很少见,所以通常会模拟大量信贷场景。

敏感性参数β被设置为0.3所有交易对手。这个值可以被校准或调整以探索模型的灵敏度。看到参考文献为更多的信息。

numCreditScen = 100000;rng (“默认”);% Z是单个信用因素Z = randn (numCreditScen, 1);%是特殊因素ε= randn (numCreditScen numCP);%是交易对手对信用因素的敏感性beta = 0.3 * ones(1,numCP);%交易对手潜在变量Y = bsxfun(@times,beta,Z) + bsxfun(@times,根号(1 - beta.^2),);%违约指标isDefault = bsxfun (@lt normcdf (Y), defProb);

关联风险敞口和信贷情景

既然已经有了一组分类过的投资组合风险敞口场景和一组默认场景,那么可以遵循Garcia Cespedes等人的方法,使用高斯关联函数生成相关的风险敞口-默认场景对。

定义一个潜在变量映射到模拟曝光的分布。被定义为

Y e ρ Z + 1 - ρ 2 ϵ e

在哪里Z是信贷模拟中计算的系统因素,epsilon_e是一个独立的标准正态变量和ρ被解释为市场信用相关参数。通过建设,一个标准正态变量是否与Z与相关参数ρ

之间的映射模拟暴露要求我们根据一些可分类的标准,以一种有意义的方式对暴露场景进行排序。标准可以是任何有意义的数量,例如,它可以是合约价值(如利率)的潜在风险因素,总投资组合风险敞口,等等。

在本例中,使用总投资组合风险敞口(totalExp)作为风险敞口情景准则,将信用因素与总风险敞口关联起来。如果ρ是负的,低价值的信贷因素Z往往与高价值的,因此曝光率高。这表示为负值ρ介绍WWR。

实现之间的映射还有暴露场景,把暴露场景分类totalExp值。假设暴露场景的数量是年代(numScenarios).鉴于,求值j这样

j - 1 年代 Φ ( Y e < j 年代

然后选择场景j从排序的暴露场景。

是否与模拟暴露有关Z与模拟的默认值相关。的相关性ρ之间的Z因此,是风险敞口和信贷模拟之间的关联。

%排序总曝光[~, totalExpIdx] = (totalExp)进行排序;场景切割点割点= 0:1 / numScenarios: 1;% epsilonExp是潜在变量的特殊因素epsilonExp = randn (numCreditScen, 1);%设置市场信用相关值ρ= -0.75;%潜变量y = rho * Z +根号(1 - rho^2) * epsilonExp;%找到相应的曝光场景binidx =离散化(normcdf(你们),割点);scenIdx = totalExpIdx (binidx);totalExpCorr = totalExp (scenIdx);PECorr = PE (scenIdx:);

下图显示了总投资组合风险敞口和第一个交易对手的相关风险敞口-信用情景。由于负相关性,信用因子值为负Z对应于高暴露水平(错误的风险)。

我们最多只能设计10000个场景numScenPlot = min(10000年,numCreditScen);图;散射(Z (1: numScenPlot) totalExpCorr (1: numScenPlot))散射(Z (1: numScenPlot) PECorr (1: numScenPlot, 1)包含(“信贷因素(Z)”) ylabel (“曝光”)标题('相关风险敞口-信贷情况,\rho = 'num2str(ρ)])传说(“总投资”“CP1曝光”)举行

图中包含一个轴对象。标题为空白e x p u r e e e e e e e t空白s e e n r o s,空白rho空白=空白- 0的轴对象。包含2个类型为scatter的对象。这些对象代表总曝光量,CP1曝光量。

为正值时ρ,信用因素和风险暴露之间的关系是反向的(正确的风险)。

ρ= 0.75;y = rho * Z +根号(1 - rho^2) * epsilonExp;binidx =离散化(normcdf(你们),割点);scenIdx = totalExpIdx (binidx);totalExpCorr = totalExp (scenIdx);图;散射(Z (1: numScenPlot) totalExpCorr (1: numScenPlot))包含(“信贷因素(Z)”) ylabel (“曝光”)标题('相关风险敞口-信贷情况,\rho = 'num2str(ρ)))

图中包含一个轴对象。坐标轴对象标题C o r r e l t e d空白e x p o s u r e - C r e d i C t空白s e n r i o s,空白空白ρ= 0。包含一个类型为scatter的对象。

对相关的敏感性

您可以探索的敏感性暴露或其他风险措施的一个范围的值ρ

对于每个值ρ,计算每个信贷场景的总损失以及每个交易对手的预期损失。本示例假设恢复率为40%。

复苏= 0.4;rhoValues = 1:0.1:1;totalLosses = 0 (numCreditScen元素个数(rhoValues));expectedLosses = 0 (numCP, nummel (rhoValues));i = 1:numel(rhoValues) rho = rhoValues(i);%潜变量y = rho * Z +根号(1 - rho^2) * epsilonExp;%找到相应的曝光场景binidx =离散化(normcdf(你们),割点);scenIdx = totalExpIdx (binidx);simulatedExposures = PE (scenIdx:);%根据风险暴露和违约事件计算实际损失损失= isDefault .* simulateexposure * (1-Recovery);totalLosses (:, i) =(损失,2)之和;我们计算每个交易对手的预期损失expectedLosses(:,我)=意味着(损失);结束displayExpectedLosses (rhoValues expectedLosses)
预期损失Rho CP1 CP2 CP4 CP5 ------------------------------------------------- -1.0 604.10 260.44 194.70 1234.17 925.95-0.9 583.67 250.45 189.02 1158.65 897.91-0.8 560.45 245.19 183.23 1107.56 865.33-0.7 541.08 235.86 177.16 1041.39 835.12-0.6 521.89 228.78 170.49 991.70 803.22-0.5 502.68 217.30 165.25 926.92 774.27-0.4 487.15 211.29160.80 881.03 746.15 -0.3 471.17 203.55 154.79 828.90 715.63 -0.2 450.91 197.53 149.33 781.81 688.13 -0.1 433.87 189.75 144.37 744.00 658.19 0.0 419.20 181.25 138.76 693.26 630.38 0.1 399.36 174.41 134.83 650.66 605.89 0.2 385.21 169.86 130.93 617.91 579.01 0.3 371.21 164.19 124.62 565.78 552.83 0.4 355.57 158.14 119.92 530.79 530.19 0.5 342.58 152.10116.38 496.27 508.86 0.6 324.73 145.42 111.90 466.57 485.05 0.7 319.18 140.76 108.14 429.48 465.84 0.8 303.71 136.13 103.95 405.88 446.36 0.9 290.36 131.54 100.20 381.27 422.79 1.0 278.89 126.77 95.77 358.71 405.40

你可以想象经济资本(EC)对市场信用相关参数的敏感性。将EC定义为一个百分点之间的差异损失的分布,减去预期损失。

负的ρ导致更高的资本要求,因为WWR。

pct = 99;ec = prctile(totalLosses,pct) - mean(totalLosses);图;情节(rhoValues ec)标题(“经济资本(99%)vs . rho”)包含(的ρ);ylabel (“经济资本”);

图中包含一个轴对象。标题为E o o o m i c blank c a p ta l blank (9 9%) blank v E r s u s blank rho的轴对象包含一个类型为line的对象。

最后的评论

这个例子实现了一种基于连接的WWR方法,遵循Garcia Cespedes等人的方法。该方法可以有效地重用现有的风险敞口和信贷模拟,并且可以有效地计算出所有相关值对市场信贷相关参数的敏感性,并方便地可视化。

本文提出的单参数copula方法可以推广到更全面的探索投资组合的WWR。例如,可以应用不同类型的copula,可以使用不同的标准来对曝光场景进行排序。其他扩展包括模拟多个系统信贷风险变量(多因素模型),或从一年期转换为多期框架,以计算信贷价值调整(CVA)等措施,如Rosen和Saunders(见参考文献).

参考文献

  1. 加西亚·塞斯佩德斯《巴塞尔协议II》中错误方向风险、交易对手信用风险资本和阿尔法的有效建模》风险模型验证杂志,第4卷/第1卷,71-98页,2010年春季。

  2. 格普顿,C.芬格和巴西亚。CreditMetrics™-技术文档。jp·摩根,纽约,1997年。

  3. 罗森博士和桑德斯博士。“CVA是错误的方式。”金融机构风险管理学报。第5卷,第3期,252-272页,2012。

本地函数

函数displayExpectedLosses (rhoValues expectedLosses)流(“预期损失\ n”);流(' Rho CP1 CP2 CP3 CP4 CP5\n');流('-------------------------------------------------\ n ');i = 1:元素个数(rhoValues)显示预期损耗%流(' % .1f % 9.2 f % 9.2 f % 9.2 f % 9.2 f % 9.2 f 'rhoValues (i), expectedLosses (:, i));结束结束

另请参阅

|||

相关的例子

更多关于

外部网站