fitSvensson

Подгонка функции Свенссона к данным рынка облигаций

fitSvensson для IRFunctionCurve не рекомендуется. Использовать fitSvensson с parametercurve вместо этого объект. Для получения дополнительной информации см. fitSvensson.

Синтаксис

CurveObj = IRFunctionCurve.fitSvensson(Type, Settle,Instruments)
CurveObj = IRFunctionCurve.fitSvensson(Type,Settle,Instruments,Name,Value)

Аргументы

Type

Тип кривой процентной ставки для облигации: zero или forward.

Settle

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

Instruments

N-by- 4 матрица данных для Instruments где первый столбец Settle дата, второй столбец Maturity, третий столбец - чистая цена, а четвертый столбец - CouponRate за связь.

Compounding

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

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

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

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

IRFitOptions

(Необязательно) Объект, созданный из IRFitOptions.

Параметры КИПиА

Для каждого Instrument облигацийможно задать следующие дополнительные параметры инструмента в виде пар "имя-значение". Для примера, InstrumentBasis различает Basis связующего инструмента значение от Basis кривой значение.

InstrumentPeriod

(Необязательно) Купоны в год облигации. Вектор из целых чисел. Допустимые значения 0, 1, 2 (по умолчанию), 3, 4, 6, и 12.

InstrumentBasis

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

  • 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

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

InstrumentEndMonthRule

(Необязательно) Правило конца месяца. Вектор. Это правило применяется только тогда, когда Maturity - дата окончания месяца для месяца, имеющего 30 или менее дней. 0 = игнорировать правило, означающее, что дата купонного платежа облигации всегда совпадает с числовым днем месяца. 1 = установите правило (по умолчанию), означающее, что дата купонного платежа облигации всегда является последним фактическим днем месяца.

InstrumentIssueDate

(Необязательно) Дата выпуска инструмента.

InstrumentFirstCouponDate

(Необязательно) Дата, когда облигация производит свой первый купонный платеж; используется, когда облигация имеет нерегулярный первый купонный период. Когда FirstCouponDate и LastCouponDate оба заданы, FirstCouponDate имеет приоритет при определении структуры купонного платежа. Если вы не задаете FirstCouponDateДаты платежа денежного потока определяются из других входов.

InstrumentLastCouponDate

(Необязательно) Дата последнего купона облигации до даты погашения; используется, когда облигация имеет нерегулярный последний купонный период. При отсутствии заданного FirstCouponDate, a заданное LastCouponDate определяет купонную структуру облигации. Купонная структура облигации усечена в LastCouponDate, независимо от того, где он падает, и сопровождается только датой движения денежных средств по облигации со сроком погашения. Если вы не задаете LastCouponDateДаты платежа денежного потока определяются из других входов.

InstrumentFace

(Необязательно) Грань или номинал. По умолчанию = 100.

Примечание

При использовании Instrument Пары "имя-значение" можно задать простой процент для облигации путем определения InstrumentPeriod значение как 0. Если InstrumentBasis и InstrumentPeriod не заданы для облигации, используются следующие значения по умолчанию: Basis является 0 (действие/действие) и Period является 2.

Описание

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

После создания модели Свенссона можно просмотреть параметры модели Свенссона используя:

CurveObj.Parameters
где порядок параметров [Beta0,Beta1,Beta2,Beta3,tau1,tau2].

Примеры

свернуть все

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

Settle = datenum('15-Apr-2014'); 
Maturity = datemnth(Settle,12*[1 2 3 5 7 10 20 30]'); 

CleanPrice = [100.1 100.1 100.2 99.0 101.8 99.2 101.7 100.2]'; 
CouponRate = [0.0200 0.0275 0.035 0.042 0.0475 0.0525 0.055 0.052]'; 
Instruments = [repmat(Settle,size(Maturity)) Maturity CleanPrice CouponRate]; 
PlottingPoints = datemnth(Settle,1:360); 
Yield = bndyield(CleanPrice,CouponRate,Settle,Maturity); 

SvenssonModel = IRFunctionCurve.fitSvensson('Zero',Settle,Instruments); 

SvenssonModel.Parameters 
ans = 1×6

    1.8297   -1.2299    1.6316   12.3891    1.6982    8.9423

% create the plot
plot(PlottingPoints, getParYields(SvenssonModel, PlottingPoints),'g') 
hold on 
scatter(Maturity,Yield,'black') 
datetick('x') 
legend({'Svensson Fitted Curve','Yields'},'location','best')

Figure contains an axes. The axes contains 2 objects of type line, scatter. These objects represent Svensson Fitted Curve, Yields.

Алгоритмы

Подобная модель Нельсона-Зигеля является моделью Свенссона, которая добавляет два дополнительных параметра, чтобы принять во внимание большую гибкость в структуре термина. Эта модель предлагает, чтобы форвардная ставка могла быть смоделирована со следующей формой:

Как и выше, это может быть интегрировано, чтобы вывести уравнение для нулевой кривой:

Ссылки

[1] Nelson, C.R., Siegel, A.F. «Parsimonious modeling of выражения curves». Журнал бизнеса. Том 60, 1987, стр. 473-89.

[2] Свенссон, L.E.O. Оценка и интерпретация форвардных процентных ставок: Швеция 1992-4. Международный валютный фонд, рабочий документ МВФ, 1994/114 год.

[3] Фишер, М., Нычка, Д., Зервос, Д. «Подбор кривой срочной структуры процентных ставок с сглаживанием сплайнов». Совет управляющих Федеральной резервной системы, рабочий документ Федерального резервного совета 1995-1.

[4] Anderson, N., Sleath, J «. Новые оценки реальных и номинальных кривых выражения Великобритании». Ежеквартальный бюллетень Банка Англии, ноябрь 1999, стр. 384-92.

[5] Вагонер, Д. «Методы сплайна для извлечения кривых процентной ставки из цен купонных облигаций». Рабочий документ Федерального резервного совета 1997-10.

[6] «Кривые выражения с нулевым купоном: техническая документация». Документы БИС № 25, октябрь 2005 года.

[7] Bolder, D.J., Gusba, S. «Exponentials, Polynomials and Fourier Series: More Yield Curve Modeling at the Bank of Canada». Рабочие документы 2002-29, Банк Канады.

[8] Bolder, D.J., Streliski, D. «Yield Curve Modeling at the Bank of Canada». Технические отчеты 84, 1999, Банк Канады.

Введенный в R2008b