creditDefaultCopula

Создайте объект creditDefaultCopula моделировать и анализировать мультифакторную модель значения по умолчанию кредита

Описание

Класс creditDefaultCopula моделирует потери портфеля из-за значений по умолчанию контрагента с помощью мультифакторной модели. creditDefaultCopula сопоставляет каждого контрагента со случайной переменной, названной скрытой переменной, которая сопоставлена с default/non-default результатами для каждого сценария, таким образом, что значения по умолчанию происходят с вероятностью PD. В случае значения по умолчанию потеря для того сценария зарегистрирована равная EAD * LGD для контрагента. Эти скрытые переменные моделируются с помощью мультифакторной модели, где системные колебания кредита моделируются с серией факторов риска. Эти факторы могут быть основаны на отраслях промышленности (такой столь же финансовый, космос), географические области (такие как США, еврозона), или любой другой базовый драйвер кредитного риска. Каждый контрагент присвоен серия весов, которые определяют их чувствительность к каждому базовому кредиту факторы.

Входные параметры к модели описывают чувствительный к кредиту портфель воздействий:

  • EAD — Воздействие в значении по умолчанию

  • PD — Вероятность значения по умолчанию

  • Lgd Потеря, данная значение по умолчанию (1 − Recovery)

  • Weights — Факторные и особенные образцовые веса

После того, как объект creditDefaultCopula создается (см., Создают creditDefaultCopula и Свойства), используйте функцию simulate, чтобы моделировать значения по умолчанию кредита с помощью мультифакторной модели. Результаты хранятся в форме распределения потерь на уровне контрагента и портфеле. Несколько мер по риску на уровне портфеля вычисляются, и вклады риска от отдельных должников. Модель вычисляет:

  • Полное моделируемое распределение потерь портфеля через сценарии

  • Потери на каждом контрагенте через сценарии

  • Несколько мер по риску (VaR, CVaR, EL, Std) с доверительными интервалами

  • Рискните вкладами на контрагента (для EL и CVaR)

Создание

Синтаксис

cdc = creditDefaultCopula(EAD,PD,LGD,Weights)
cdc = creditDefaultCopula(___,Name,Value)

Описание

пример

cdc = creditDefaultCopula(EAD,PD,LGD,Weights) создает объект creditDefaultCopula. Объект creditDefaultCopula имеет следующие свойства:

  • Портфель:

    Таблица со следующими переменными (каждая строка таблицы представляет одного контрагента):

    • ID — ID, чтобы идентифицировать каждого контрагента

    • EAD — Воздействие в значении по умолчанию

    • PD — Вероятность значения по умолчанию

    • Lgd Потеря, данная значение по умолчанию

    • Weights — Факторные и особенные веса для контрагентов

  • FactorCorrelation:

    Факторная корреляционная матрица, NumFactors-by-NumFactors матрица, которая задает корреляцию между факторами риска.

  • VaRLevel:

    Подверженный риску значения уровень, используемый при создании отчетов о VaR и CVaR.

  • PortfolioLosses

    Потери портфеля, NumScenarios-by-1 вектор потерь портфеля. Это свойство пусто, пока функция simulate не используется.

пример

cdc = creditDefaultCopula(___,Name,Value) Свойства наборов с помощью пар "имя-значение" и любого из аргументов в предыдущем синтаксисе. Например, cdc = creditDefaultCopula(EAD,PD,LGD,Weights,'VaRLevel',0.99). Можно задать несколько пар "имя-значение" как дополнительные аргументы пары "имя-значение".

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

развернуть все

Воздействие в значении по умолчанию, заданном как NumCounterparties-by-1 вектор кредитных рисков. Вход EAD устанавливает свойство Portfolio.

Примечание

Модель creditDefaultCopula моделирует значения по умолчанию и потери по некоторому фиксированному периоду времени (например, один год). Подверженность контрагента (EAD) и вероятности по умолчанию (PD) должна оба быть характерна для определенного времени.

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

Вероятность значения по умолчанию, заданного как NumCounterparties-by-1 числовой вектор с элементами от 0 до 1, представляя вероятности по умолчанию для контрагентов. Вход PD устанавливает свойство Portfolio.

Примечание

Модель creditDefaultCopula моделирует значения по умолчанию и потери по фиксированному периоду времени (например, один год). Подверженность контрагента (EAD) и вероятности по умолчанию (PD) должна оба быть характерна для определенного времени.

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

Потеря, данная значение по умолчанию, заданное как NumCounterparties-by-1 числовой вектор с элементами от 0 до 1, представляя часть воздействия, которое потеряно когда контрагент значения по умолчанию. LGD задан как (1 − Recovery). Например, LGD 0,6 подразумевает 40%-ю скорость восстановления в случае значения по умолчанию. Вход LGD устанавливает свойство Portfolio.

LGD может альтернативно быть задан как NumCounterparties-by-2 матрица, где первый столбец содержит средние значения LGD, и 2-й столбец содержит стандартные отклонения LGD. Допустимые открытые интервалы для среднего и стандартного отклонения LGD:

  • Для первого столбца средние значения между 0 и 1.

  • Для второго столбца стандартные отклонения LGD между 0 и sqrt(m*(1-m)).

Затем в случае значения по умолчанию значения LGD чертятся случайным образом от бета распределения с обеспеченными параметрами для принимающего значение по умолчанию контрагента.

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

Факторные и особенные веса, заданные как NumCounterparties (NumFactors + 1) массив. Каждая строка содержит факторные веса для конкретного контрагента. Каждый столбец содержит веса для фактора базового риска. Последний столбец в Weights содержит особенный вес риска для каждого контрагента. Особенный вес представляет специфичный для компании кредитный риск. Общее количество весов для каждого контрагента (то есть, каждой строки) должно суммировать к 1. Вход Weights устанавливает свойство Portfolio.

Например, если кредитоспособность контрагента состоит из 60% США, 20%-го европейца, и особенных 20%, то вектором Weights был бы [0.6 0.2 0.2].

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

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

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

Пример: cdc = creditDefaultCopula(EAD,PD,LGD,Weights,'VaRLevel',0.99)

Пользовательские идентификаторы для контрагентов, заданных как пара, разделенная запятой, состоящая из 'ID' и NumCounterparties-by-1 вектор ID s для каждого контрагента. ID используется, чтобы идентифицировать воздействия в таблице Portfolio и таблице вклада риска. ID должен быть числовым, массивом строк или массивом ячеек из символьных векторов. Аргумент пары "имя-значение" ID устанавливает свойство Portfolio.

Если незаданный, значения по умолчанию ID к числовому векторному 1:NumCounterparties.

Типы данных: double | string | cell

Значение подверженный риску уровень (используемый для создания отчетов о VaR и CVaR), заданный как пара, разделенная запятой, состоящая из 'VaRLevel' и числового между 0 и 1. Аргумент пары "имя-значение" VaRLevel устанавливает свойство VaRLevel.

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

Факторная корреляционная матрица, заданная как пара, разделенная запятой, состоящая из 'FactorCorrelation' и NumFactors-by-NumFactors матрица, которая задает корреляцию между факторами риска. Аргумент пары "имя-значение" FactorCorrelation устанавливает свойство FactorCorrelation.

Если не заданный, факторные значения по умолчанию корреляционной матрицы к единичной матрице, означая, что факторы не коррелируются.

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

Отметьте, чтобы использовать параллельную обработку для симуляций, заданных как пара, разделенная запятой, состоящая из 'UseParallel' и скалярное значение true или false. Аргумент пары "имя-значение" UseParallel устанавливает свойство UseParallel.

Примечание

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

Типы данных: логический

Свойства

развернуть все

Детали кредитного портфеля, заданного как таблица MATLAB®, которая содержит все данные о портфеле, которые были переданы как вход в creditDefaultCopula.

Таблица Portfolio имеет столбец для каждых из входных параметров конструктора (EAD, PD, LGD, Weights и ID). Каждая строка таблицы представляет одного контрагента.

Например:

    ID     EAD         PD          LGD       Weights 
    __    ______    _________    _______    _________
    1     122.43     0.064853    0.68024    0.3  0.7
    2     70.386     0.073957    0.59256    0.3  0.7
    3     79.281     0.066235    0.52383    0.3  0.7
    4     113.42     0.01466     0.43977    0.3  0.7
    5     100.46     0.0042036   0.41838    0.3  0.7

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

Корреляционная матрица для факторов кредита, заданных как NumFactors-by-NumFactors матрица. Задайте корреляционную матрицу с помощью дополнительного аргумента пары "имя-значение" 'FactorCorrelation', когда вы создадите объект creditDefaultCopula.

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

Подверженный риску уровень значения использовал при создании отчетов о VaR и CVaR, заданном использовании дополнительного аргумента пары "имя-значение" 'VaRLevel', когда вы создаете объект creditDefaultCopula.

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

Общие потери портфеля, заданные как 1-by-NumScenarios вектор. Свойство PortfolioLosses пусто после того, как вы создадите объект creditDefaultCopula. После того, как функция simulate вызывается, свойство PortfolioLosses заполняется с вектором потерь портфеля.

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

Отметьте, чтобы использовать параллельную обработку для симуляций, заданного использования дополнительного аргумента пары "имя-значение" 'UseParallel', когда вы создадите объект creditDefaultCopula. Аргумент пары "имя-значение" UseParallel устанавливает свойство UseParallel.

Примечание

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

Типы данных: логический

Функции объекта

simulateМоделируйте значения по умолчанию кредита с помощью объекта creditDefaultCopula
portfolioRiskСгенерируйте измерения риска уровня портфеля
riskContributionСгенерируйте вклады риска для каждого контрагента в портфеле
confidenceBandsПолосы доверительного интервала
getScenariosСценарии контрагента

Примеры

свернуть все

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

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;

Моделируйте 100 000 сценариев и просмотрите меры по портфельному риску.

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

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

 portRisk = portfolioRisk(cdc)
portRisk=1×4 table
      EL       Std       VaR       CVaR 
    ______    ______    ______    ______

    24.774    23.693    101.57    120.22

Просмотрите гистограмму потерь портфеля.

histogram(cdc.PortfolioLosses);
title('Distribution of Portfolio Losses');

Для последующего анализа используйте simulate, portfolioRisk, riskContribution, и функции getScenarios с объектом creditDefaultCopula.

Ссылки

[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

Для просмотра документации необходимо авторизоваться на сайте