Создание объекта кривой процентных ставок на основе дат и данных
CurveObj = IRDataCurve(Type,Settle,Dates,Data) CurveObj = IRDataCurve(Type,Settle,Dates,Data,Name,Value)
Type | Тип кривой процентной ставки. Допустимые значения: |
Settle | Скаляр для |
Dates | Даты, соответствующие данным тарифа. |
Data | Данные процентной ставки для объекта кривой. |
Compounding | (Необязательно) Скаляр, задающий частоту объединения в год для
Примечание Простой процент может быть определен для инструмента путем указания
|
Basis | (Необязательно) База подсчета дней кривой процентных ставок. Скаляр целых чисел.
Дополнительные сведения см. в разделе Базис. |
InterpMethod | (Необязательно) Значения:
|
CurveObj = IRDataCurve(Type,Settle,Dates,Data,Name,Value) строит кривую процентной ставки с указанным Dates и Data. Необходимо ввести необязательные аргументы для Basis, Compounding, и InterpMethod как пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
В качестве альтернативы, IRDataCurve объект может быть загружен из рыночных данных с помощью bootstrap способ.
После IRDataCurve для определения форвардных ставок, нулевых ставок и коэффициентов дисконтирования можно использовать следующие методы. Кроме того, можно использовать toRateSpec метод преобразования объекта кривой процентной ставки в RateSpec структура.
| Метод | Описание |
|---|---|
getForwardRates | Возвращает форвардные ставки для дат ввода. |
getZeroRates | Возвращает нулевые ставки для дат ввода. |
getDiscountFactors | Возвращает коэффициенты дисконтирования для дат ввода. |
getParYields | Возвращает значения доходности для входных дат. |
toRateSpec | Преобразует в |
bootstrap | Начальная загрузка кривой процентной ставки из рыночных данных. |
CurveSettle = datenum('2-Mar-2016'); Data = [2.09 2.47 2.71 3.12 3.43 3.85 4.57 4.58]/100; Dates = datemnth(CurveSettle,12*[1 2 3 5 7 10 20 30]); irdc = IRDataCurve('Zero',CurveSettle,Dates,Data)
irdc = Type: Zero Settle: 736391 (02-Mar-2016) Compounding: 2 Basis: 0 (actual/actual) InterpMethod: linear Dates: [8x1 double] Data: [8x1 double]