exponenta event banner

IRFunctionCurve

Создание объекта кривой процентной ставки из дескриптора функции или функции и соответствие рыночным данным

Синтаксис

CurveObj = IRFunctionCurve(Type,Settle,FunctionHandle)
CurveObj = IRFunctionCurve(Type,Settle,FunctionHandle,Name,Value)

Аргументы

Type

Тип кривой процентной ставки: zero, forward, или discount.

Settle

Скаляр для Settle дата кривой.

Compounding

(Необязательно) Скаляр, задающий частоту объединения в год для IRFunctionCurve объект:

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

  • 1 = Годовое суммирование

  • 2 = Полугодичное объединение (по умолчанию)

  • 3 = Три раза в год

  • 4 = Квартальное суммирование

  • 6 = Компаундирование раз в два месяца

  • 12 = Ежемесячное суммирование

Basis

(Необязательно) Основание счета дня облигации. Скаляр целых чисел.

  • 0 = факт/факт (по умолчанию)

  • 1 = 30/360 (SIA)

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

  • 3 = факт/365

  • 4 = 30/360 (BMA)

  • 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

Дополнительные сведения см. в разделе Базис.

FunctionHandle

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

Parameters

Подогнанные параметры для функции.

Описание

CurveObj = IRFunctionCurve(Type,Settle,FunctionHandle,Name,Value) создает объект кривой процентной ставки непосредственно путем указания дескриптора функции. Необходимо ввести необязательные аргументы для Basis и Compounding как пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

После использования IRFunctionCurve конструктор для создания IRFunctionCurve объект можно подогнать с помощью следующих методов.

МетодОписание
getForwardRates

Возвращает форвардные ставки для дат ввода.

getZeroRates

Возвращает нулевые ставки для дат ввода.

getDiscountFactors

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

getParYields

Возвращает значения доходности для входных дат.

toRateSpec

Преобразует в RateSpec объект.

Это RateSpec структура идентична RateSpec произведенные функцией intenvset.

Кроме того, можно создать IRFunctionCurve с использованием следующих статических методов.

Статический методОписание
fitNelsonSiegel

Соответствует функции Нельсона-Сигеля рыночным данным.

fitSvensson

Соответствует функции Свенссона рыночным данным.

fitSmoothingSpline

Соответствует сглаживающей сплайн-функции рыночным данным.

fitFunction

Соответствует пользовательской функции рыночным данным.

Примеры

irfc = IRFunctionCurve('Forward',today,@(t) polyval([-0.0001 0.003 0.02],t))
irfc = 

			 Type: Forward
		       Settle: 737406 (12-Dec-2018)
	             Compounding: 2
			Basis: 0 (actual/actual)
Представлен в R2008b