моделировать

Моделируйте значения по умолчанию кредита с помощью объекта creditDefaultCopula

Синтаксис

cdc = simulate(cdc,NumScenarios)
cdc = simulate(___,Name,Value)

Описание

пример

cdc = simulate(cdc,NumScenarios) выполняет полную симуляцию сценариев кредита и вычисляет значения по умолчанию и потери для портфеля, заданного в объекте creditDefaultCopula. Для получения дополнительной информации об использовании объекта creditDefaultCopula смотрите creditDefaultCopula.

Примечание

При создании объекта creditDefaultCopula можно установить свойство 'UseParallel', если у вас есть Parallel Computing Toolbox™. Если свойство 'UseParallel' установлено, параллельная обработка используется, чтобы вычислить simulate.

пример

cdc = simulate(___,Name,Value) добавляют дополнительные аргументы пары "имя-значение" для (Copula, DegreesOfFreedom и BlockSize).

Примеры

свернуть все

Загрузите сохраненные данные о портфеле.

load CreditPortfolioData.mat;

Создайте объект creditDefaultCopula с 2D факторной моделью.

cdc = creditDefaultCopula(EAD,PD,LGD,Weights2F,'FactorCorrelation',FactorCorr2F)
cdc = 
  creditDefaultCopula with properties:

            Portfolio: [100x5 table]
    FactorCorrelation: [2x2 double]
             VaRLevel: 0.9500
          UseParallel: 0
      PortfolioLosses: []

Установите VaRLevel на 99%.

cdc.VaRLevel = 0.99;

Используйте функцию simulate с объектом creditDefaultCopula. После использования simulate можно затем использовать portfolioRisk, riskContribution, confidenceBands, и функции getScenarios с обновленным объектом creditDefaultCopula.

cdc = simulate(cdc,1e5)
cdc = 
  creditDefaultCopula with properties:

            Portfolio: [100x5 table]
    FactorCorrelation: [2x2 double]
             VaRLevel: 0.9900
          UseParallel: 0
      PortfolioLosses: [1x100000 double]

Можно использовать riskContribution с объектом creditDefaultCopula сгенерировать таблицу Contributions риска.

Contributions = riskContribution(cdc);
Contributions(1:10,:)
ans=10×5 table
    ID        EL           Std          VaR          CVaR   
    __    __________    __________    ________    __________

     1      0.038604       0.02495     0.10482       0.12868
     2      0.067068      0.036472     0.17378       0.24527
     3        1.2527       0.62684      2.0384        2.3103
     4     0.0023253    0.00073407           0     0.0026274
     5       0.11766      0.042185     0.27028       0.26223
     6       0.12437       0.07545     0.37669       0.47915
     7       0.82913        0.3475         1.6        1.6516
     8    0.00085629    4.3929e-05    0.001544    0.00089197
     9       0.91406       0.87311        3.55         4.009
    10       0.24352       0.36543      1.5864        2.2781

Входные параметры

свернуть все

Объект creditDefaultCopula, полученный из creditDefaultCopula.

Для получения дополнительной информации об объекте creditDefaultCopula смотрите creditDefaultCopula.

Количество сценариев, чтобы моделировать, заданный как неотрицательное целое число. Сценарии обрабатываются в блоках, чтобы сохранить ресурсы машины.

Типы данных: double

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: cdc = simulate(cdc,NumScenarios,'Copula','t','DegreesOfFreedom',5)

Тип связки, заданной как пара, разделенная запятой, состоящая из 'Copula' и вектора символов или строки. Возможные значения:

  • 'Gaussian' — Гауссова связка

  • T Связка t со степенями свободы, заданными с помощью DegreesOfFreedom.

Типы данных: char | string

Степени свободы для связки t, заданной как пара, разделенная запятой, состоящая из 'DegreesOfFreedom' и неотрицательного числового значения. Если Copula установлен в 'Gaussian', параметр DegreesOfFreedom проигнорирован.

Типы данных: double

Количество сценариев к процессу в каждой итерации, заданной как пара, разделенная запятой, состоящая из 'BlockSize' и неотрицательного числового значения.

Если незаданный, значения по умолчанию BlockSize к значению приблизительно 1 000 000 / (Номер контрагентов). Например, если существует 100 контрагентов, BlockSize по умолчанию является 10 000 сценариев.

Типы данных: double

Выходные аргументы

свернуть все

Объект Updated creditDefaultCopula. Объект заполняется с моделируемым PortfolioLosses.

Для получения дополнительной информации об объекте creditDefaultCopula смотрите creditDefaultCopula.

Примечание

В функции simulate Weights (заданный при использовании creditDefaultCopula) преобразовывается, чтобы гарантировать, что скрытые переменные имеют среднее значение 0 и отклонение 1.

Ссылки

[1] Crouhy, M., Galai, D. и Марк, R. “Сравнительный анализ Текущих Моделей Кредитного риска”. Журнал Банковского дела и Финансов. Издание 24, 2000, стр 59–117.

[2] Gordy, M. “Сравнительная Анатомия Моделей Кредитного риска”. Журнал Банковского дела и Финансов. Издание 24, 2000, стр 119–149.

[3] Gupton, G., палец, C. и Bhatia, M. “CreditMetrics – технический документ”. J. P. Morgan, Нью-Йорк, 1997.

[4] Jorion, P. Финансовое руководство менеджера по рискам. 6-й выпуск. Финансы Вайли, 2011.

[5] Löffler, G. и Posch, P. Credit Risk Modeling Using Excel и VBA. Финансы Вайли, 2007.

[6] Макнейл, A., Фрэй, R. и Embrechts, P. Количественное управление рисками: Концепции, методы и инструменты. Издательство Принстонского университета, 2005.

Введенный в R2017a