cdsbootstrap

Загрузите кривую вероятности по умолчанию от рыночных котировок кредитного дефолтного свопа

Описание

пример

[ProbData,HazData] = cdsbootstrap(ZeroData,MarketData,Settle) загружает кривую вероятности по умолчанию с помощью рыночных котировок кредитного дефолтного свопа (CDS). Рыночные котировки могут быть выражены как список дат погашения и соответствующих распространений рынка CDS, или как список сроков платежа и соответствующего upfronts и стандартных распространений для стандартных контрактов CDS. Оценка использует стандартную модель вероятности выживания.

пример

[ProbData,HazData] = cdsbootstrap(___,Name,Value) добавляют дополнительные аргументы пары "имя-значение".

Примеры

свернуть все

В этом примере показано, как использовать cdsbootstrap с рыночными котировками для CDS сокращается, чтобы сгенерировать ProbData и HazData значения.

Settle = '17-Jul-2009'; % valuation date for the CDS
Spread_Time = [1 2 3 5 7]';
Spread = [140 175 210 265 310]';
Market_Dates = daysadd(datenum(Settle),360*Spread_Time,1);
MarketData = [Market_Dates Spread];
Zero_Time = [.5 1 2 3 4 5]';
Zero_Rate = [1.35 1.43 1.9 2.47 2.936 3.311]'/100;
Zero_Dates = daysadd(datenum(Settle),360*Zero_Time,1);
ZeroData = [Zero_Dates Zero_Rate];

format long
[ProbData,HazData] = cdsbootstrap(ZeroData,MarketData,Settle)
ProbData = 5×2
105 ×

   7.343360000000000   0.000000233427859
   7.347010000000000   0.000000575839968
   7.350670000000000   0.000001021397017
   7.357970000000000   0.000002064539982
   7.365280000000000   0.000003234110940

HazData = 5×2
105 ×

   7.343360000000000   0.000000232959886
   7.347010000000000   0.000000352000512
   7.350670000000000   0.000000476383354
   7.357970000000000   0.000000609055766
   7.365280000000000   0.000000785241515

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

свернуть все

Нулевые данные об уровне, заданные как M- 2 вектор дат и нулевых уровней или IRDataCurve объект нулевых уровней.

Когда ZeroData IRDataCurve объект, ZeroCompounding и ZeroBasis неявны в ZeroData и избыточны в этой функции. В этом случае задайте эти дополнительные параметры при построении IRDataCurve объект перед использованием cdsbootstrap функция.

Для получения дополнительной информации о IRDataCurve возразите, смотрите Создание Объекта IRDataCurve (Financial Instruments Toolbox).

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

Данные о рынке облигаций, заданные как N- 2 матрица дат и соответствующих распространений рынка или N- 3 матрица дат, upfronts, и стандартные распространения контрактов CDS. Даты должны быть введены, когда последовательные числа даты, upfronts должен быть числовыми значениями между 0 и 1, и распространения должны быть в пунктах.

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

Расчетный день, заданный как последовательный номер даты или вектор символов даты. Settle дата должна быть ранее, чем или равна датам в MarketData

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

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

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

Пример: [ProbData,HazData] = cdsbootstrap(ZeroData,MarketData,Settle,'RecoveryRate',Recovery,'ZeroCompounding',-1)

Примечание

Любой дополнительный вход размера N- 1 также приемлемо как массив размера 1- N, или как одно значение, применимое ко всем контрактам. Одно значения внутренне расширены до массива размера N- 1.

Скорость восстановления, заданная как разделенная запятой пара, состоящая из 'RecoveryDate' и N- 1 вектор скоростей восстановления, заданных как десятичное число от 0 к 1.

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

Premium платежная частота, заданная как разделенная запятой пара, состоящая из 'Period' и N- 1 вектор со значениями 1, 2, 3, 4, 6, или 12.

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

Основание дневного количества контракта, заданного как разделенная запятой пара, состоящая из 'Basis' и положительное целое число с помощью NINST- 1 вектор.

  •  0 = фактический/фактический

  •  1 = 30/360 (СИА)

  •  2 = Фактический/360

  •  3 = Фактический/365

  •  4 = 30/360 (PSA)

  •  5 = 30/360 (ISDA)

  •  6 = 30/360 (европеец)

  •  7 = Фактический/365 (японский язык)

  •  8 = фактический/фактический (ICMA)

  •  9 = Фактический/360 (ICMA)

  •  10 = Фактический/365 (ICMA)

  •  11 = 30/360E (ICMA)

  •  12 = Фактический/365 (ISDA)

  •  13 = ШИНА/252

Для получения дополнительной информации смотрите Основание.

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

Соглашения рабочего дня, заданные как разделенная запятой пара, состоящая из 'BusDayConvention' и вектор символов. Выбор для соглашения рабочего дня определяет, как обработаны нерабочие дни. Нерабочие дни заданы как выходные плюс любая другая дата, что компании не открыты (например, установленные законом праздники). Значения:

  • 'actual' — Нерабочие дни эффективно проигнорированы. Потоки наличности, которые падают в нерабочие дни, приняты, чтобы быть распределенными в фактическую дату.

  • 'follow' — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день.

  • 'modifiedfollow' — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день. Однако, если следующий рабочий день находится в различном месяце, предыдущий рабочий день принят вместо этого.

  • 'previous' — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день.

  • 'modifiedprevious' — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день. Однако, если предыдущий рабочий день находится в различном месяце, следующий рабочий день принят вместо этого.

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

Отметьте для накопленных уплаченных страховых взносов на значение по умолчанию, заданное как разделенная запятой пара, состоящая из 'PayAccruedPremium' и N- 1 вектор булевых флагов, который является true (значение по умолчанию), если накопленные премии заплачены на значение по умолчанию, false в противном случае.

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

Номер дней, чтобы взять в качестве временного шага для численного интегрирования, заданного как разделенная запятой пара, состоящая из 'TimeStep' и неотрицательное целое число.

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

Соединение частоты кривой нулевой ширины, заданной как разделенная запятой пара, состоящая из 'ZeroCompounding' и целое число со значениями:

  • 1 — Ежегодное соединение

  • 2 — Полугодовое соединение

  • 3 — Соединение три раза в год

  • 4 — Ежеквартально соединение

  • 6 — Два раза в месяц соединение

  • 12 — Ежемесячно соединение

  • −1 — Непрерывное соединение

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

Основание кривой нулевой ширины, заданной как разделенная запятой пара, состоящая из 'ZeroBasis' и целое число со значениями, которые идентичны Basis.

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

Даты данных о вероятности, заданных как разделенная запятой пара, состоящая из 'ProbDates' и P- 1 вектор дат, данных как последовательные числа даты или векторы символов даты.

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

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

свернуть все

Значения вероятности по умолчанию, возвращенные как P- 2 матрица с датами и соответствующими совокупными значениями вероятности по умолчанию. Даты совпадают с теми в MarketData, если дополнительный входной параметр ProbDates обеспечивается.

Значения показателя риска, возвращенные как N- 2 матрица с датами и соответствующими значениями показателя риска для вероятностной модели выживания. Даты совпадают с теми в MarketData.

Примечание

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

Алгоритмы

Если время, чтобы принять значение по умолчанию обозначается τ, кривой вероятности по умолчанию, или функцией, PD(t), и его дополнением, функция выживания Q(t), дают:

PD(t)=P[τt]=1P[τ>t]=1Q(t)

В стандартной модели вероятность выживания задана в терминах кусочного постоянного показателя риска h(t). Например, если h(t) =

λ1, для 0tt1

λ2, для t1 <tt2

λ3, для t2 <t

затем функция выживания дана Q(t) =

eλ1t, для 0tt1

eλ1tλ2(tt1), для t1 <tt2

eλ1t1λ2(t2t1)λ3(tt2), для t2 <t

Учитывая даты рынка n t1,...,tn и соответствующий CDS рынка распространяют S1,...,Sn, cdsbootstrap калибрует параметры λ1,...,λn и оценивает PD(t) в даты рынка или дополнительный пользовательский набор дат.

Ссылки

[1] Beumee, J., Д. Бриго, Д. Шимерт и Г. Стойл. “Беря курс через CDS Большой взрыв”. Решения Fitch, количественный анализ, глобальный специальный отчет. 7 апреля 2009.

[2] Оболочка, J. и A. Белый. “Оценка Кредитных дефолтных свопов I: Никакой Кредитный риск Контрагента”. Журнал Производных. Издание 8, стр 29–40.

[3] О'Кэйн, D. и С. Тернбулл. “Оценка кредитных дефолтных свопов”. Lehman Brothers, фиксированный доход количественное исследование кредита, апрель 2003.

Представленный в R2010b

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