disc2zero

Нулевая кривая, заданная кривая дисконтирования

В R2017b изменена спецификация необязательных входных параметров. Хотя синтаксис предыдущих упорядоченных входов все еще поддерживается, он может больше не поддерживаться в будущем релизе. Используйте необязательные входы пары "имя-значение": Compounding и Basis.

Описание

пример

[ZeroRates,CurveDates] = disc2zero(DiscRates,CurveDates,Settle) возвращает нулевую кривую, заданную как кривая дисконтирования и ее даты погашения. Если все входы для CurveDates или Settle являются массивами datetime, выходы CurveDates возвращается как массивы datetime.

пример

[ZeroRates,CurveDates] = disc2zero(___,Name,Value) добавляет необязательные аргументы пары "имя-значение"

Примеры

свернуть все

Учитывая следующие факторы скидки DiscRates по набору дат погашения CurveDates, и дату расчета Settle:

DiscRates = [0.9996
             0.9947
             0.9896
             0.9866
             0.9826
             0.9786
             0.9745
             0.9665
             0.9552
             0.9466];

CurveDates = [datenum('06-Nov-2000')
              datenum('11-Dec-2000')
              datenum('15-Jan-2001')
              datenum('05-Feb-2001')
              datenum('04-Mar-2001')
              datenum('02-Apr-2001')
              datenum('30-Apr-2001')
              datenum('25-Jun-2001')
              datenum('04-Sep-2001')
              datenum('12-Nov-2001')];

Settle = datenum('03-Nov-2000');

Установите ежедневное компаундирование для кривого выхода нуля на фактическом/365 базису.

Compounding = 365;
Basis = 3;

Выполните функцию disc2zero который возвращает нулевую кривую ZeroRates в даты погашения CurveDates.

[ZeroRates, CurveDates] = disc2zero(DiscRates, CurveDates,... 
Settle, Compounding, Basis)
ZeroRates = 10×1

    0.0487
    0.0510
    0.0523
    0.0524
    0.0530
    0.0526
    0.0530
    0.0532
    0.0549
    0.0536

CurveDates = 10×1

      730796
      730831
      730866
      730887
      730914
      730943
      730971
      731027
      731098
      731167

Для читаемости, DiscRates и ZeroRates показаны здесь только к базовой точке. Однако программное обеспечение MATLAB ® вычисляло их с полной точностью. Если вы вводите DiscRates как показано, ZeroRates может отличаться из-за округления.

Учитывая следующие факторы скидки, DiscRates, за набор дат погашения, CurveDates, и дату расчета, Settle, использовать datetime входы для возврата нулевой кривой, ZeroRates, в даты погашения, CurveDates.

DiscRates = [0.9996
             0.9947
             0.9896
             0.9866
             0.9826
             0.9786
             0.9745
             0.9665
             0.9552
             0.9466];

CurveDates = [datenum('06-Nov-2000')
              datenum('11-Dec-2000')
              datenum('15-Jan-2001')
              datenum('05-Feb-2001')
              datenum('04-Mar-2001')
              datenum('02-Apr-2001')
              datenum('30-Apr-2001')
              datenum('25-Jun-2001')
              datenum('04-Sep-2001')
              datenum('12-Nov-2001')];

Settle = datenum('03-Nov-2000');
Compounding = 365;
Basis = 3;

CurveDates = datetime(CurveDates,'ConvertFrom','datenum','Locale','en_US');
Settle = datetime(Settle,'ConvertFrom','datenum','Locale','en_US');

[ZeroRates, CurveDates] = disc2zero(DiscRates, CurveDates,...
Settle, Compounding, Basis)
ZeroRates = 10×1

    0.0487
    0.0510
    0.0523
    0.0524
    0.0530
    0.0526
    0.0530
    0.0532
    0.0549
    0.0536

CurveDates = 10x1 datetime
   06-Nov-2000
   11-Dec-2000
   15-Jan-2001
   05-Feb-2001
   04-Mar-2001
   02-Apr-2001
   30-Apr-2001
   25-Jun-2001
   04-Sep-2001
   12-Nov-2001

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

свернуть все

Коэффициенты дисконтирования, заданные как вектор-столбец десятичных дробей. В совокупности, факторы в DiscRates составляют кривую дисконтирования для инвестиционного горизонта, представленного CurveDates.

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

Даты погашения, которые соответствуют коэффициентам дисконтирования в DiscRates, заданный как вектор-столбец с использованием серийных номеров дат, векторов символов даты или массивов datetime.

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

Общая дата расчета для ставок дисконтирования в DiscRates, заданный как серийные номера дат, векторы символов даты или массивы datetime.

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

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

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

Пример: [ZeroRates,CurveDates] = disc2zero(DiscRates,CurveDates,Settle,'Compounding',6,'Basis',9)

Скорость, с которой выходные нулевые скорости суммируются в годовом исчислении, задается в виде числового значения. Допустимые значения:

  • 0 - Простой интерес (без компаундирования)

  • 1 - Ежегодное компаундирование

  • 2 - Полугодовое компаундирование (по умолчанию)

  • 3 - Смешивание три раза в год

  • 4 - ежеквартальное компаундирование

  • 6 - Двухмесячное компаундирование

  • 12 - Ежемесячное компаундирование

  • 365 - Ежедневное компаундирование

  • -1 - Непрерывное компаундирование

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

Базис отсчета дней, используемый для аннуализации выхода скоростей нулей, заданных в виде числового значения. Допустимые значения:

  • 0 = факт/факт

  • 1 = 30/360 (SIA)

  • 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 = BUS/252

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

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

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

свернуть все

Нулевая кривая для инвестиционного горизонта, представленного CurveDates, возвращенный как вектор-столбец десятичных дробей. Нулевые ставки - этих выражений к погашению по теоретическим облигациям с нулевым купоном.

Даты зрелости, соответствующие ZeroRates, возвращается как вектор-столбец. Этот вектор аналогичен вектору входа CurveDates, но выход сортируется по возрастающей зрелости. Если все входы для CurveDates или Settle являются массивами datetime, выходы CurveDates возвращается как массивы datetime.

Представлено до R2006a