主要内容

模拟

使用模拟信用迁移creditMigrationCopula对象

描述

例子

cmc=模拟(cmcNumScenarios中定义的投资组合,执行信用场景的完整模拟,并计算由于信用评级更改而导致的价值变化creditMigrationCopula对象。有关使用的详细信息creditMigrationCopula对象,看到creditMigrationCopula

请注意

当创建creditMigrationCopula对象时,可以设置“UseParallel”属性,如果您有并行计算工具箱™。一旦“UseParallel”属性,则使用并行处理进行计算模拟

例子

cmc=模拟(___名称,值为(添加可选的名称-值对参数)连系动词DegreesOfFreedom,BlockSize).

例子

全部折叠

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

负载CreditMigrationData.mat

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

migrationValues = migrationPrices .* numBonds;

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

cmc = creditMigrationCopula(migrationValues,ratings,transMat,...乐金显示器,重量,“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到99%。

cmc。VaRLevel = 0.99;

使用模拟函数模拟100,000个场景。在使用模拟之后,您可以使用portfolioRiskriskContributionconfidenceBands,getScenarios随着更新creditMigrationCopula对象。

CMC =模拟(CMC,1e5)
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…]

您可以使用riskContribution函数与creditMigrationCopula对象来生成风险贡献表格

贡献=风险贡献(cmc);贡献(1:10,:)
ans =10×5表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

输入参数

全部折叠

creditMigrationCopula对象,从creditMigrationCopula

有关a的更多信息creditMigrationCopula对象,看到creditMigrationCopula

要模拟的场景数,指定为非负整数。场景以块的方式处理,以节省机器资源。

数据类型:

名称-值参数

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

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来名字在报价。

例子:cmc =模拟(cmc,NumScenarios,'Copula','t','DegreesOfFreedom',5,'BlockSize',1000)

连接符类型,指定为逗号分隔的对,由连系动词的和字符向量或字符串。可能取值为:

  • “高斯”-高斯联结

  • “t”- - - - - -t使用所指定的自由度的CopulaDegreesOfFreedom

数据类型:字符|字符串

a的自由度tCopula,指定为逗号分隔的对,由“DegreesOfFreedom”和一个非负数值。如果连系动词设置为“高斯”,DegreesOfFreedom参数被忽略。

数据类型:

每次迭代中要处理的场景数量,指定为由逗号分隔的对组成的“BlockSize”和一个非负数值。调整BlockSize为了性能,特别是在执行大型模拟时。

如果未指定的,BlockSize缺省值约为1,000,000 /(交易对手数)。例如,如果有100个交易对手,则默认BlockSize是10000种情况。

数据类型:

输出参数

全部折叠

creditMigrationCopula对象,返回为用模拟对象填充的更新对象PortfolioValues

有关a的更多信息creditMigrationCopula对象,看到creditMigrationCopula

请注意

模拟函数,权重(在使用creditMigrationCopula)进行转换,以确保潜在变量具有的平均值0和的方差1

参考文献

[1] Crouhy, M., Galai, D., and Mark, R. <现行信用风险模型的比较分析>。银行与金融杂志。卷24,2000,第59 - 117页。

[2] Gordy M. <信用风险模型的比较解剖>。银行与金融杂志。卷24,2000,第119 - 149页。

[3] G.古普顿,C.芬格,M.巴蒂亚。“信用指标-技术文件。”jp摩根,纽约,1997年。

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

[5] Löffler, G.和Posch, P。利用Excel和VBA建立信用风险模型。威利金融,2007年。

[6]麦克尼尔A,弗雷R,埃姆布雷希茨P。量化风险管理:概念、技术和工具。普林斯顿大学出版社,2005年。

版本历史

在R2017a中引入

Baidu
map