主要内容

creditMigrationCopula

模拟和分析多因素信用评级迁移模型

描述

creditMigrationCopula需要作为输入组合credit-sensitive头寸的交易对手和执行copula-based,多因素的模拟信用评级迁移。交易对手信用评级迁移和随后的组合变化值计算每个场景和几个风险测量报告。

creditMigrationCopula将每一个对手与一个随机变量,称为潜变量,它映射到基于评级转移矩阵的信用评级。为每一个场景,每一个对手的位置是重新计算的基础上,实现了交易对手的信用评级。这些潜在变量模拟采用多因素模型,在系统性信贷波动建模与一系列的风险因素。这些因素可以基于行业(如金融、航空),地理区域(如美国或欧元区),或任何其他信贷风险的潜在推动力。每个对手都是指定一系列的权重确定他们对每一个潜在的信用因素的敏感性。

输入到模型是:

  • migrationValues——值为每个信用评级交易对手的位置。

  • 评级——当前每个交易对手的信用评级。

  • 转移矩阵——信用等级转移概率矩阵。

  • 乐金显示器——损失给予违约(1ˆ复苏)。

  • 权重——权重因子和特殊的模型

在您创建creditMigrationCopula对象(如创建creditMigrationCopula属性),用模拟函数来模拟信用迁移使用多因素模型。然后,详细报告,使用以下功能:portfolioRisk,riskContribution,confidenceBands,getScenarios

创建

描述

例子

cmc= creditMigrationCopula (migrationValues,评级,转移矩阵,乐金显示器,权重)创建一个creditMigrationCopula对象。的creditMigrationCopula对象具有以下属性:

  • 投资组合:

    一个表与以下变量:

    • ID- ID来识别每一个对手

    • migrationValues为每一个信用评级——交易对手的位置的值

    • 评级——当前每个交易对手的信用评级

    • 乐金显示器——鉴于违约损失

    • 权重——因素和交易对手的权重

  • FactorCorrelation:

    因素相关矩阵,NumFactors——- - - - - -NumFactors矩阵定义了风险因素之间的相关性。

  • RatingLabels:

    的所有可能的信用评级。

  • 转移矩阵:

    概率的矩阵,交易对手信用评级开始转换从一个最终的信用评级。行代表信用评级开始,列代表最终的评级。第一行包含概率的对手开始在最高等级(例如AAA)和底部行持有的对手从默认状态。最后一行可以省略,这表明交易对手违约仍在违约。每一行必须总和1。行和列的顺序必须与信用评级中定义的顺序RatingLabels参数。最后一列是每个评级的违约概率。如果未指定的,违约评级标签:“AAA级”、“AA”、“”、“BBB”,“BB”、“B”,“CCC”、“D”

  • VaRLevel:

    风险价值层面,在报告VaR和CVaR时使用。

  • PortfolioValues:

    一个NumScenarios——- - - - - -1向量的组合值。这个属性是空的,直到你使用模拟函数。

例子

cmc= creditMigrationCopula (___,名称,值)属性使用名称-值对和任何的参数在前面的语法。例如,cmc = creditMigrationCopula (migrationValues,评级转移矩阵,乐金显示器,重量、VaRLevel, 0.99)。您可以指定多个名称-值对作为可选参数名称-值对。

输入参数

全部展开

值为每个信用评级交易对手的位置,作为一个指定NumCounterparties——- - - - - -NumRatings矩阵。每一行持有的可能值为每个信用评级交易对手的位置。最后必须违约评级的评级。的migrationValues输入设置投资组合财产。

违约评级迁移值(最后一列migrationValuespre-recovery输入)。这是一个参考价值(例如,票面价值,提出价值在额定电流,或其他)乘以回收率在仿真得到的价值资产的违约事件。经济复苏率被定义为1- - - - - -乐金显示器,在那里乐金显示器指定使用乐金显示器输入参数。的乐金显示器是一个常数或随机数来自贝塔分布(看到的描述吗乐金显示器输入)。

请注意

creditMigrationCopula模型模拟投资组合价值的变化在一个固定的时间(例如,一年)。的migrationValues转移矩阵必须具体到一个特定的时期。

数据类型:

目前的信用评级对于每一个对手,指定为一个NumCounterparties——- - - - - -1向量代表最初的信贷。所有有效的信用评级和他们的订单的集合的定义是通过使用可选的RatingLabels参数。的评级输入设置投资组合财产。

如果RatingLabels未指明的,违约评级标签:“AAA级”、“AA”、“”、“BBB”,“BB”、“B”,“CCC”、“D”

数据类型:|字符串|细胞

信用等级转移概率,作为指定NumRatings——- - - - - -NumRatings矩阵。矩阵包含了交易对手的概率从一个特定的信用评级转换到其他评级在一些固定的时间段。每一行持有的所有过渡概率为特定的信用评级。的转移矩阵输入设置转移矩阵财产。

第一行包含概率的对手开始在最高等级(如AAA)。最后一行持有的概率对手从默认状态。最后一行可以省略,这表明交易对手违约仍在违约。每一行必须总和1

行和列的顺序必须与信用评级中定义的顺序RatingLabels参数。最后一列是每个评级的违约概率。如果RatingLabels未指明的,违约评级标签:“AAA级”、“AA”、“”、“BBB”,“BB”、“B”,“CCC”、“D”

请注意

creditMigrationCopula模型模拟投资组合价值的变化在一个固定的时间(例如,一年)。的migrationValues转移矩阵必须具体到一个特定的时期。

数据类型:

鉴于违约,损失作为指定NumCounterparties——- - - - - -1数值向量的元素0通过1,代表了一部分失去当一个交易对手违约的风险。乐金显示器被定义为(1ˆ”复苏)。例如,一个乐金显示器0.6意味着40%的回收率在发生违约。的乐金显示器输入设置投资组合财产。

乐金显示器或者可以指定为一个吗NumCounterparties——- - - - - -2矩阵,第一列包含乐金显示器平均值和第二列乐金显示器标准差。然后,在默认的情况下,乐金显示器值随机来自贝塔分布的参数提供了交易对手违约。

有效的开放时间间隔乐金显示器平均值和标准偏差:

  • 第一列,意味着之间的值01

  • 第二列,乐金显示器标准差之间0sqrt (m * (1 - m))

数据类型:

因素的权重,指定为一个NumCounterparties————(NumFactors+1)数组。每一行包含一个特定的交易对手的因素权重。每一列包含一个潜在的风险因素的权重。在最后一列权重包含特殊的重量为每个交易对手风险。的重量代表了特定公司的信用风险。的总重量为每个交易对手(即每一行)必须总和1。的权重输入设置投资组合财产。

例如,如果一个交易对手的信用等级是由美国60%,欧洲20%,和20%的特质,那么权重向量是(0.6 0.2 0.2)

数据类型:

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:cmc = creditMigrationCopula (migrationValues,评级转移矩阵,乐金显示器,重量、VaRLevel, 0.99)

用户定义id为交易对手,指定为逗号分隔组成的“ID”和一个NumCounterparties——- - - - - -1向量的ID为每一个对手。ID用于识别风险的投资组合表和风险贡献表。ID必须是数值型,字符串数组或单元阵列的特征向量。的ID名称-值对参数设置投资组合财产。

如果未指定的,ID默认值为一个数值向量(1:NumCounterparties)。

数据类型:|字符串|细胞

风险价值水平(用于报告VaRCVaR),指定为逗号分隔组成的“VaRLevel”和一个数字之间01。的VaRLevel名称-值对参数设置VaRLevel财产。

数据类型:

因素相关矩阵,指定为逗号分隔组成的“FactorCorrelation”和一个NumFactors——- - - - - -NumFactors矩阵定义了风险因素之间的相关性。的FactorCorrelation名称-值对参数设置FactorCorrelation财产。

如果没有指定,因素相关矩阵默认为一个单位矩阵,即不相关的因素。

数据类型:

所有可能的信用评级,指定为逗号分隔组成的“RatingLabels”和一个NumRatings——- - - - - -1向量,其中第一个元素是最高信用评级和最后一个元素是默认状态。的RatingLabels名称-值对参数设置RatingLabels财产。

数据类型:细胞||字符串

国旗为模拟,使用并行处理指定为逗号分隔组成的“UseParallel”和一个标量值真正的。的UseParallel名称-值对参数设置UseParallel财产。

请注意

“UseParallel”当创建一个属性只能设置creditMigrationCopula如果你有并行计算工具箱™对象。一旦“UseParallel”属性设置,使用并行处理riskContribution模拟

数据类型:逻辑

属性

全部展开

信贷资产组合的细节,指定为一个MATLAB®表,包含所有的投资组合数据作为输入传递creditMigrationCopula对象。

投资组合表中的一列每个构造函数的输入(MigrationValues,评级,乐金显示器,权重,ID)。表的每一行代表一个对手。

例如:

ID MigrationValues评级乐金显示器权重__售予交_______ 1[1×8双]A 0.6509 - 0.5 0.5 - 2[1×8双]" BBB " 0.8283 0.55 0.45 3[1×8双]“AA”0.6041 0.7 0.3 4[1×8双]“BB”5[1×8双]0.6509 0.55 0.45 0.4966 0.75 0.25 " BBB "

数据类型:

相关矩阵对信用因素,指定为一个NumFactors——- - - - - -NumFactors矩阵。指定相关矩阵通过使用可选名称-值对的论点“FactorCorrelation”当您创建的creditMigrationCopula对象。

数据类型:

所有可能的信用评级,使用一个可选的名称指定输入参数“RatingLabels”当您创建的creditMigrationCopula对象。

数据类型:|细胞|字符串

概率,对手从最后一个信用评级的信用评级开始,使用输入参数指定的转移矩阵当您创建的creditMigrationCopula对象。行代表信用评级开始,列代表最终的评级。第一行对应的最高评级。

第一行包含概率的对手开始在最高等级(如AAA)和底部行持有的对手从默认状态。最后一行可以省略,这表明交易对手违约仍在违约。每一行必须总和1

行和列的顺序必须与信用评级中定义的顺序RatingLabels参数。最后一列是每个评级的违约概率。如果RatingLabels未指明的,违约评级标签:“AAA级”、“AA”、“”、“BBB”,“BB”、“B”,“CCC”、“D”

数据类型:

报告时使用VaR风险价值水平和CVaR,使用一个可选的名称-值对指定参数“VaRLevel”当您创建的creditMigrationCopula对象。

数据类型:

投资组合值,指定为一个1——- - - - - -NumScenarios向量。在创建了creditMigrationCopula对象,PortfolioValues属性是空的。在您调用模拟函数,PortfolioValues是在每个场景组合值填充。

数据类型:

国旗使用并行处理仿真,使用一个可选的名称-值对指定参数“UseParallel”当您创建一个creditMigrationCopula对象。的UseParallel名称-值对参数设置UseParallel财产。

请注意

“UseParallel”当创建一个属性只能设置creditMigrationCopula如果你有并行计算工具箱对象。一旦“UseParallel”属性设置,使用并行处理riskContribution模拟

数据类型:逻辑

对象的功能

模拟 模拟信用迁移使用creditMigrationCopula对象
portfolioRisk 生成组合层次风险测量
riskContribution 在投资组合中生成每个交易对手风险的贡献
confidenceBands 置信区间的乐队
getScenarios 交易对手的场景

例子

全部折叠

加载保存组合数据。

负载CreditMigrationData.mat;

规模的债券价格为每一个债券投资组合头寸。

migrationValues = migrationPrices。* numBonds;

创建一个creditMigrationCopula使用对象的四因子模型creditMigrationCopula

cmc = creditMigrationCopula (transMat migrationValues,评级,乐金显示器,重量,“FactorCorrelation”factorCorr)
cmc = creditMigrationCopula属性:组合:[250 x5表]FactorCorrelation: [4 x4双]RatingLabels: x1字符串[8]转移矩阵:[8×8双]VaRLevel: 0.9500 UseParallel: 0 PortfolioValues: []

设置VaRLevel到99%。

cmc。VaRLevel = 0.99;

投资组合属性包含的信息迁移值,评级,乐金显示器和权重。

头(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

迁移中的列值的顺序相同评级的违约评级在最后一列。

例如,这些迁移值的第一个对手。注意,默认的值高于非默认的评级。这是因为违约评级迁移值是一个参考价值(例如,票面价值,提出价值在额定电流,或其他)乘以回收率在仿真得到的价值资产的违约事件。1 -回收率乐金显示器乐金显示器输入creditMigrationCopula是一个常数乐金显示器价值(乐金显示器输入一列)。时的恢复速率是一个随机量乐金显示器输入creditMigrationCopula被指定为贝塔分布的平均值和标准偏差(乐金显示器输入有两列)。

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

图包含一个坐标轴对象。坐标轴对象与标题为第一家公司迁移值包含一个对象类型的酒吧。

使用模拟函数模拟100000个场景,然后视图使用投资组合风险措施portfolioRisk函数。

cmc =模拟(cmc, 1 e5)
cmc = creditMigrationCopula属性:组合:[250 x5表]FactorCorrelation: [4 x4双]RatingLabels: x1字符串[8]转移矩阵:[8×8双]VaRLevel: 0.9900 UseParallel: 0 PortfolioValues: [2.0082 e + 06 1.9950 e + 06 1.9933 e + 06 2.0009 1.9819 e + e + 06 06 1.9955 e + 06 1.9962 e + 06年1.9966 2.0018 e + e + 06 06 2.0036 e + 06 1.9873 e + 06年1.9929 2.0015 e + e + 06 06 1.9875 e + 06 1.9962 e + 06年2.0070 2.0054 e + e + 06 06 2.0037 e + 06 2.0032 e + 06 1.9990 e + 06……]
portRisk = portfolioRisk (cmc)
portRisk =1×4表EL性病VaR CVaR _____ _____ _____ _____ 4515.9 12963 57176 83975

查看直方图的组合值。

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

图包含一个坐标轴对象。投资组合的坐标轴对象与标题分布值包含一个直方图类型的对象。

加载保存组合数据。

负载CreditMigrationData.mat;

规模的债券价格为每一个债券投资组合头寸。

migrationValues = migrationPrices。* numBonds;

创建一个creditMigrationCopula使用对象的四因子模型creditMigrationCopula

cmc = creditMigrationCopula (transMat migrationValues,评级,乐金显示器,重量,“FactorCorrelation”factorCorr)
cmc = creditMigrationCopula属性:组合:[250 x5表]FactorCorrelation: [4 x4双]RatingLabels: x1字符串[8]转移矩阵:[8×8双]VaRLevel: 0.9500 UseParallel: 0 PortfolioValues: []

设置VaRLevel到99%。

cmc。VaRLevel = 0.99;

使用模拟函数模拟100000个场景,然后视图使用投资组合风险措施portfolioRisk函数。

cmc =模拟(cmc, 1 e5)
cmc = creditMigrationCopula属性:组合:[250 x5表]FactorCorrelation: [4 x4双]RatingLabels: x1字符串[8]转移矩阵:[8×8双]VaRLevel: 0.9900 UseParallel: 0 PortfolioValues: [2.0082 e + 06 1.9950 e + 06 1.9933 e + 06 2.0009 1.9819 e + e + 06 06 1.9955 e + 06 1.9962 e + 06年1.9966 2.0018 e + e + 06 06 2.0036 e + 06 1.9873 e + 06年1.9929 2.0015 e + e + 06 06 1.9875 e + 06 1.9962 e + 06年2.0070 2.0054 e + e + 06 06 2.0037 e + 06 2.0032 e + 06 1.9990 e + 06……]
portRisk = portfolioRisk (cmc)
portRisk =1×4表EL性病VaR CVaR _____ _____ _____ _____ 4515.9 12963 57176 83975

查看直方图的组合值。

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

图包含一个坐标轴对象。投资组合的坐标轴对象与标题分布值包含一个直方图类型的对象。

叠加组合的值需要如果所有交易对手保持当前的信用评级。

CurrentRatingValue = portRisk。EL +的意思(cmc.PortfolioValues);持有情节([CurrentRatingValue CurrentRatingValue],[0马克斯(h.Values)],“线宽”2);网格

图包含一个坐标轴对象。坐标轴对象2标题投资组合价值分布包含对象类型的柱状图,线。

引用

[1]Crouhy, M。Galai D。,Mark, R. “A Comparative Analysis of Current Credit Risk Models.”银行与金融杂志》上。24卷,2000年,页59 - 117。

[2]戈迪,m .“信用风险模型的比较解剖学。”银行与金融杂志》上。24卷,2000年,页119 - 149。

[3]Gupton G。,手指,C。,Bhatia, M.“CreditMetrics——技术文档。”j.p.摩根,纽约,1997年。

[4]Jorion, P。金融风险管理手册。第六版。威利金融,2011。

[5]Loffler G。P。,波什的说法,信用风险建模使用Excel VBA。威利金融,2007。

麦克内尔[6],A。弗雷,R。,Embrechts, P.定量风险管理:概念、技术和工具。普林斯顿大学出版社,2005年。

版本历史

介绍了R2017a