Преобразования термина процентной ставки

Эволюция процентной ставки обычно представляется набором процентных ставок, включая начало и конец периодов, к которым применяются уровни. Для нулевых уровней даты начала обычно в дату оценки с расширением уровней с той даты оценки до их соответствующих дат погашения.

Точечная кривая, чтобы передать преобразование кривой

Часто, учитывая набор уровней включая их запуск и даты окончания, можно интересоваться нахождением уровней, применимых к различным условиям (периоды). Эта проблема решается функциональным ratetimes. Эта функция интерполирует процентные ставки, учитывая изменение в исходных терминах. Синтаксис для вызова ratetimes

[Rates, EndTimes, StartTimes] = ratetimes(Compounding, RefRates,
RefEndDates, RefStartDates, EndDates, StartDates, ValuationDate);

где:

  • Compounding представляет частоту, на которой нулевые уровни составлены, когда пересчитано на год.

  • RefRates является вектором начальных процентных ставок, представляющих процентные ставки, применимые к начальным временным интервалам.

  • RefEndDates является вектором дат, представляющих конец (периода) условий процентной ставки, применимого к RefRates.

  • RefStartDates является вектором дат, представляющих начало условий процентной ставки, применимых к RefRates.

  • EndDates представляет даты погашения, для которых интерполированы процентные ставки.

  • StartDates представляет сроки начала работы, для которых интерполированы процентные ставки.

  • ValuationDate является датой наблюдения, от которого вычисляются StartTimes и EndTimes. Эта дата представляет время = 0.

Входные параметры к этой функции могут быть разделены на две группы:

  • Начальные или ссылочные процентные ставки, включая условия, для которых они допустимы

  • Условия, для которых вычисляются новые процентные ставки

Как пример, считайте таблицу уровня заданной в Вычислении Коэффициентов дисконтирования от Уровней.

От

К

Уровень

15 февраля 2000

15 августа 2000

0.05

15 февраля 2000

15 февраля 2001

0.056

15 февраля 2000

15 августа 2001

0.06

15 февраля 2000

15 февраля 2002

0.065

15 февраля 2000

15 августа 2002

0.075

Предположение, что дата оценки 15 февраля 2000, эти уровни представляют уровни облигации с нулевым купоном со сроками платежа, заданными во втором столбце. Используйте функциональный ratetimes, чтобы вычислить форвардные курсы в начале всех периодов, подразумеваемых в таблице. Примите значение соединения 2.

% Reference Rates.
RefStartDates = ['15-Feb-2000'];
RefEndDates  = ['15-Aug-2000'; '15-Feb-2001'; '15-Aug-2001';... 
'15-Feb-2002'; '15-Aug-2002'];
Compounding = 2;
ValuationDate = ['15-Feb-2000'];
RefRates = [0.05; 0.056; 0.06; 0.065; 0.075];

% New Terms.
StartDates = ['15-Feb-2000'; '15-Aug-2000'; '15-Feb-2001';... 
'15-Aug-2001'; '15-Feb-2002'];
EndDates =   ['15-Aug-2000'; '15-Feb-2001'; '15-Aug-2001';... 
'15-Feb-2002'; '15-Aug-2002'];
% Find the new rates.
Rates = ratetimes(Compounding, RefRates, RefEndDates,... 
RefStartDates, EndDates, StartDates, ValuationDate)
Rates =

    0.0500
    0.0620
    0.0680
    0.0801
    0.1155

Поместите эти значения в таблицу как предыдущая. Наблюдайте эволюцию форвардных курсов на основе начальных уровней нулевого купона.

От

К

Уровень

15 февраля 2000

15 августа 2000

0.0500

15 августа 2000

15 февраля 2001

0.0620

15 февраля 2001

15 августа 2001

0.0680

15 августа 2001

15 февраля 2002

0.0801

15 февраля 2002

15 августа 2002

0.1155

Альтернативный синтаксис (ratetimes)

Функция ratetimes может предоставить дополнительным выходным аргументам StartTimes и EndTimes, которые представляют эквиваленты фактора времени векторам EndDates и StartDates. Функция ratetimes использует факторы времени для интерполяции уровней. Эти факторы времени вычисляются от запуска и даты окончания и дата оценки, которые передаются как входные параметры. ratetimes может также использовать факторы времени непосредственно, принимая время = 0 как дата оценки. Этот альтернативный синтаксис:

[Rates, EndTimes, StartTimes] = ratetimes(Compounding, RefRates, RefEndTimes, RefStartTimes, EndTimes, StartTimes);

Используйте эту альтернативную версию ratetimes, чтобы найти форвардные курсы снова. В этом случае необходимо сначала найти факторы времени ссылочной кривой. Используйте date2time для этого.

RefEndTimes = date2time(ValuationDate, RefEndDates, Compounding)
RefEndTimes =

     1
     2
     3
     4
     5
RefStartTimes = date2time(ValuationDate, RefStartDates,... 
Compounding)
RefStartTimes =

     0

Это ожидаемые значения, учитывая полугодовые скидки (как обозначено значением 2 в переменной Compounding), даты окончания, разделенные шестимесячными периодами и датой оценки, равной началу маркировки даты первого периода (фактор времени = 0).

Теперь вызовите ratetimes с альтернативным синтаксисом.

[Rates, EndTimes, StartTimes] = ratetimes(Compounding,... 
RefRates, RefEndTimes, RefStartTimes, EndTimes, StartTimes);
Rates =

    0.0500
    0.0620
    0.0680
    0.0801
    0.1155

EndTimes и StartTimes имеют, как ожидалось, те же значения, которые они имели как входные параметры.

Times = [StartTimes, EndTimes]
Times =

     0     1
     1     2
     2     3
     3     4
     4     5

Смотрите также

| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |

Связанные примеры

Больше о