exponenta event banner

parametercurve

Создать parametercurve объект для хранения функции кривой процентной ставки

Описание

Построить parametercurve объект с использованием parametercurve.

После создания parametercurve объект, можно использовать связанные функции объекта discountfactors, zerorates, forwardrates, fitNelsonSiegel, и fitSvensson.

Дополнительные сведения об этом потоке операций см. в разделе Начало работы с потоками операций с использованием объектной структуры для расчета цен на финансовые инструменты.

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

Создание

Описание

пример

parametercurve_obj = parametercurve(Type,Settle,FunctionHandle) создает parametercurve объект.

пример

parametercurve_obj = parametercurve(___,Name,Value) задает свойства, используя пары имя-значение и любой из аргументов в предыдущем синтаксисе. Например, parametercurve_obj = parametercurve('zero',datetime(2017,1,30),@(t)polyval([-0.0001 0.003 0.02],t),'Compounding',4,'Basis',5,'Parameters',[-0.0001 0.003 0.02]) создает parametercurve объект для нулевой кривой. Можно указать несколько аргументов пары имя-значение.

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

развернуть все

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

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

Дата расчета для кривой, заданная как скалярная дата-время, порядковый номер даты, вектор символов даты или строка даты.

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

Даты, соответствующие данным скорости, указанным как дескриптор функции. Дескриптор функции требует одного числового ввода (время до погашения) и возвращает один числовой вывод (процентную ставку или коэффициент дисконтирования). Дополнительные сведения о создании дескриптора функции см. в разделе Создание дескриптора функции.

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

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

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

Пример: parametercurve_obj = parametercurve('zero',datetime(2017,1,30),@(t)polyval([-0.0001 0.003 0.02],t),'Compounding',4,'Basis',5,'Parameters',[-0.0001 0.003 0.02])

Частота объединения для кривой, заданная как пара, разделенная запятыми, состоящая из 'Compounding' и скалярное число, использующее поддерживаемые значения: –1, 0, 1, 2, 3, 4, 6, или 12.

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

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

  • 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

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

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

Свойства

развернуть все

Тип инструмента, возвращаемый в виде строки.

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

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

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

Дескриптор функции, определяющий кривую процентной ставки, возвращаемый как дескриптор скалярной функции.

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

Частота объединения для кривой, возвращаемая в виде скалярного числа.

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

Базисное число дней, возвращаемое как скалярное целое число.

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

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

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

Функции объекта

discountfactorsРасчет коэффициентов дисконтирования для parametercurve объект
zeroratesРассчитать нулевые ставки для parametercurve объект
forwardratesРасчет форвардных ставок для parametercurve объект
fitNelsonSiegelСоответствие модели Нельсона-Сигеля данным рынка облигаций
fitSvenssonСоответствие модели Свенссона данным рынка облигаций

Примеры

свернуть все

Создать parametercurve объект с использованием parametercurve.

PCobj = parametercurve('zero',datetime(2019,9,15),@(t)polyval([-0.0001 0.003 0.02],t),'Compounding',4,'Basis',5,'Parameters',[-0.0001 0.003 0.02])
PCobj = 
  parametercurve with properties:

              Type: "zero"
            Settle: 15-Sep-2019
       Compounding: 4
             Basis: 5
    FunctionHandle: @(t)polyval([-0.0001,0.003,0.02],t)
        Parameters: [-1.0000e-04 0.0030 0.0200]

Представлен в R2020a