Понимание структуры терминов процентной ставки

Введение

Структура процентных ставок представляет собой эволюцию процентных ставок во времени. В MATLAB®процентная ставка окружения инкапсулирована в структуру, называемую RateSpec (спецификация скорости). Эта структура содержит всю информацию, необходимую для полного определения эволюции процентных ставок. Несколько функций, включенных в программное обеспечение Financial Instruments Toolbox™, предназначены для создания и управления RateSpec структура. Многие другие считают эту структуру входного параметра, представляющей эволюцию процентных ставок.

Прежде чем смотреть дальше на RateSpec структура, исследуйте три функции, которые обеспечивают ключевую функциональность для работы с процентными ставками: disc2rate, его противоположное, rate2disc, и ratetimes. Первые две функции отображают между факторами дисконтирования и процентными ставками. Третья функция, ratetimes, вычисляет эффект изменений сроков на процентные ставки.

Процентные ставки от коэффициентов дисконтирования

Коэффициенты дисконтирования являются коэффициентами, обычно используемыми для нахождения текущего значения будущих денежных потоков. Таким образом, существует прямое отображение между ставкой, применимой к периоду времени, и соответствующим коэффициентом дисконтирования. Функция disc2rate преобразует коэффициенты дисконтирования для данного срока (периода) в процентные ставки. Функция rate2disc делает обратное; он преобразует процентные ставки, применимые к данному сроку (периоду), в соответствующие коэффициенты дисконтирования.

Вычисление коэффициентов дисконтирования из ставок

В качестве примера рассмотрим эти годовые ставки облигаций с нулевым купоном.

От

Кому

Уровень

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

Чтобы вычислить коэффициенты дисконтирования, соответствующие этим процентным ставкам, позвоните rate2disc использование синтаксиса

Disc = rate2disc(Compounding, Rates, EndDates, StartDates, 
ValuationDate)

где:

  • Compounding представляет частоту, с которой нулевые скорости складываются в годовом исчислении. В данном примере примите это значение равным 2.

  • Rates - вектор годовых процентных ставок, представляющих процентную ставку, применимую к каждому временному интервалу.

  • EndDates - вектор дат, представляющих конец каждого процентного срока (периода).

  • StartDates - вектор дат, представляющих начало каждого срока действия процентной ставки.

  • ValuationDate - дата наблюдения, для которой вычисляются коэффициенты дисконтирования. В этом конкретном примере используйте 15 февраля 2000 года в качестве даты начала для всех условий процентной ставки.

Затем установите переменные в MATLAB.

StartDates = ['15-Feb-2000'];
EndDates  = ['15-Aug-2000'; '15-Feb-2001'; '15-Aug-2001';... 
'15-Feb-2002'; '15-Aug-2002'];
Compounding = 2;
ValuationDate = ['15-Feb-2000'];
Rates = [0.05; 0.056; 0.06; 0.065; 0.075];

Наконец, вычислите коэффициенты скидки.

Disc = rate2disc(Compounding, Rates, EndDates, StartDates,... 
ValuationDate)
Disc =

    0.9756
    0.9463
    0.9151
    0.8799
    0.8319

Путем добавления четвертого столбца в таблицу ставок (см. Расчет коэффициентов дисконтирования из ставок) для включения соответствующих скидок можно увидеть эволюцию коэффициентов дисконтирования.

От

Кому

Уровень

Скидка

15 февраля 2000 года

15 Авг 2000

0.05

0.9756

15 февраля 2000 года

15 февраля 2001 года

0.056

0.9463

15 февраля 2000 года

15 Авг 2001

0.06

0.9151

15 февраля 2000 года

15 февраля 2002 года

0.065

0.8799

15 февраля 2000 года

15 Авг 2002

0.075

0.8319

Опциональные выходы коэффициента времени

Функция rate2disc при необходимости возвращает два дополнительных выходных аргументов: EndTimes и StartTimes. Эти векторы временных факторов представляют даты начала и даты окончания в периодических модулях измерения скидки. Шкала этих модулей определяется значением переменного входа Compounding.

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

[Disc, EndTimes, StartTimes] = rate2disc(Compounding, Rates,... 
EndDates, StartDates, ValuationDate);

Расположите два вектора в один массив для более легкой визуализации.

Times = [StartTimes, EndTimes]
Times =

     0     1
     0     2
     0     3
     0     4
     0     5

Поскольку дата оценки равна дате начала для всех периодов, StartTimes вектор состоит из 0 с. Кроме того, поскольку значение Compounding 2, ставки складываются раз в полгода, что устанавливает модули периодической скидки в шесть месяцев. Векторная EndDates состоит из дат, разделенных интервалами в шесть месяцев от даты оценки. Это объясняет, почему EndTimes вектор является прогрессией целых чисел от 1 до 5.

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

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

Disc = rate2disc(Compounding, Rates, EndTimes, StartTimes)

Использование в качестве входных параметров StartTimes и EndTimes векторы, вычисленные ранее, вы должны получить предыдущие результаты для коэффициентов дисконтирования.

Disc = rate2disc(Compounding, Rates, EndTimes, StartTimes)
Disc =

    0.9756
    0.9463
    0.9151
    0.8799
    0.8319

Расчет ставок от скидок

Функция disc2rate является дополнением к rate2disc. Он находит ставки, применимые к набору периодов компаундирования, учитывая коэффициент дисконтирования в этих периодах. Синтаксис вызова этой функции:

Rates = disc2rate(Compounding, Disc, EndDates, StartDates, 
ValuationDate)

Каждый аргумент этой функции имеет то же значение что и в rate2disc. Используйте результаты, найденные в предыдущем примере, чтобы вернуть начатые вами значения скорости.

Rates = disc2rate(Compounding, Disc, EndDates, StartDates,... 
ValuationDate)
Rates =

    0.0500
    0.0560
    0.0600
    0.0650
    0.0750

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

Как в случае с rate2disc, disc2rate при необходимости возвращается StartTimes и EndTimes векторы, представляющие начальное и конечное время, измеренное в периодических модулях дисконтирования. Снова, работая с теми же значениями, что и прежде, вы должны получить те же цифры.

[Rates, EndTimes, StartTimes] = disc2rate(Compounding, Disc,... 
EndDates, StartDates, ValuationDate);

Расположите результаты в матрице, удобной для отображения.

Result = [StartTimes, EndTimes, Rates]
Result =

         0    1.0000    0.0500
         0    2.0000    0.0560
         0    3.0000    0.0600
         0    4.0000    0.0650
         0    5.0000    0.0750

Как и в случае rate2discотношение между ставками и коэффициентами дисконтирования определяется временными периодами, а не абсолютными датами. Итак, альтернативный синтаксис для disc2rate использует временные векторы вместо дат и принимает, что дата оценки соответствует времени = 0. Синтаксис вызова на основе времени:

Rates = disc2rate(Compounding, Disc, EndTimes, StartTimes);

Используя этот синтаксис, вы снова получите исходные значения для процентных ставок.

Rates = disc2rate(Compounding, Disc, EndTimes, StartTimes)
Rates =

    0.0500
    0.0560
    0.0600
    0.0650
    0.0750

См. также

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

Похожие примеры

Подробнее о