mertonByTimeSeries

Оцените вероятность по умолчанию с помощью версии модели Мертона во timeseries

Описание

пример

[PD,DD,A,Sa] = mertonByTimeSeries(Equity,Liability,Rate) оценивает вероятность фирмы по умолчанию при помощи модели Мертона.

пример

[PD,DD,A,Sa] = mertonByTimeSeries(___,Name,Value) добавляет необязательные аргументы пары "имя-значение".

Примеры

свернуть все

Загрузите данные из MertonData.mat.

load MertonData.mat
Dates     = MertonDataTS.Dates;
Equity    = MertonDataTS.Equity;
Liability = MertonDataTS.Liability;
Rate      = MertonDataTS.Rate;

Вычислите вероятность по умолчанию с помощью подхода timeseries модели Мертона.

[PD,DD,A,Sa] = mertonByTimeSeries(Equity,Liability,Rate);
plot(Dates,PD)

Figure contains an axes. The axes contains an object of type line.

Загрузите данные из MertonData.mat.

load MertonData.mat
Dates     = MertonDataTS.Dates;
Equity    = MertonDataTS.Equity;
Liability = MertonDataTS.Liability;
Rate      = MertonDataTS.Rate;

Вычислите график для значений вероятностей по умолчанию с помощью подхода timeseries модели Мертона. Вы вычисляете PD0 (синяя линия) при помощи значений по умолчанию. Вы вычисляете PD1 (красная линия) путем задания дополнительного Drift значение.

PD0 = mertonByTimeSeries(Equity,Liability,Rate);
PD1 = mertonByTimeSeries(Equity,Liability,Rate,'Drift',0.10);
plot(Dates, PD0, Dates, PD1)

Figure contains an axes. The axes contains 2 objects of type line.

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

свернуть все

Рыночное значение капитала фирмы в виде положительного значения.

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

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

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

Годовая процентная ставка без риска, заданная в виде числа значения.

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

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

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: [PD,DD,A,Sa] = mertonByTimeSeries(Equity,Liability,Rate,'Maturity',4,'Drift',0.22,'Tolerance',1e-5,'NumPeriods',12)

Время до срока, соответствующего порогу ответственности, заданному как разделенная разделенными запятой парами, состоящая из 'Maturity' и положительное значение.

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

Годовая ставка дрейфа, ожидаемая норма возврата активов фирмы, указанная как разделенная разделенными запятой парами, состоящая из 'Drift' и числовое значение.

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

Количество периодов в год, заданное как разделенная разделенными запятой парами, состоящая из 'NumPeriods' и положительное целое число. Типичные значения 250 (ежегодно), 12 (ежемесячно), или 4 (ежеквартально).

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

Допуск для сходимости решателя, заданный как разделенная разделенными запятой парами, состоящая из 'Tolerance' и положительная скалярная величина значение.

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

Максимально допустимое количество итераций, заданное как разделенная разделенными запятой парами, состоящая из 'MaxIterations' и положительное целое число.

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

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

свернуть все

Вероятность дефолта фирмы при погашении, возвращенная в виде числа.

Расстояние до значения по умолчанию, определяемое как количество стандартных отклонений между средним значением распределения активов на сроке и порогом обязательств (точка по умолчанию), возвращается в виде числа.

Значения активов фирмы, возвращенные в виде числа значения.

Годовая волатильность активов фирмы, возвращенная в виде числа значения.

Подробнее о

свернуть все

Модель Мертона для временных рядов

В модели Merton значение капитала компании рассматривается как call option на ее активах, а обязательство принимается как цена забастовки.

Учитывая временные ряды наблюдаемых значений капитала и порогов ответственности для компании, mertonByTimeSeries калибрует соответствующие значения активов, волатильность активов во временном интервале выборки и вычисляет вероятность дефолта для каждого наблюдения. В отличие от этого, mertonmodelВход волатильности капитала не требуется для timeseries версии модели Мертона. Вы вычисляете вероятность значения по умолчанию и расстояния до значения по умолчанию с помощью формул в Алгоритмах.

Алгоритмы

Учитывая временные ряды для капитала (E), пассива (L), процентной ставки без риска (r), дрейфа активов (μA) и срока (T), mertonByTimeSeries устанавливает следующую систему нелинейных уравнений и решает для значений активов временных рядов (A) и одной волатильности активов (, A). В каждом временном периоде t, где t = 1... n:

A1=(E1+L1er1T1N(d2)N(d1))At=(Et+LtertTtN(d2)N(d1))...An=(En+LnernTnN(d2)N(d1))

где N - совокупное нормальное распределение. Чтобы упростить обозначение, индекс времени опускается для d1 и d2. В каждом временном периоде d1 и d2 определяются как:

d1=ln(AL)+(r+0.5σA2)TσAT

d2=d1σAT

Формулы для расстояния до значения по умолчанию (DD) и вероятности по умолчанию (PD) в каждом временном периоде:

DD=ln(AL)+(μA0.5σA2)TσAT

PD=1N(DD)

Ссылки

[1] Модели Зелински, Т. Мертона и KMV в управлении кредитными рисками.

[2] Loeffler, G. and Posch, P.N. Credit Risk Modeling Using Excel и VBA. Wiley Finance, 2011.

[3] Kim, I.J., Byun, S.J, Hwang, S.Y. An итерационный метод реализации Merton.

[4] Мертон, Р. К. «О ценообразовании корпоративного долга: структура риска процентных ставок». Финансовый журнал. Том 29. стр 449–470.

Введенный в R2017a