fitSvensson

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

Описание

пример

outCurve = fitSvensson(Settle,Instruments,CleanPrice) подходит для модели Свенссона, чтобы связать данные.

Примеры

свернуть все

Определите данные облигаций и используйте fininstrument для создания FixedBond объекты прибора.

 Settle = datetime(2017,9,15);
  Maturity = [datetime(2019,9,15);datetime(2021,9,15);...
      datetime(2023,9,15);datetime(2026,9,7);...
      datetime(2035,9,15);datetime(2047,9,15)];
  
  CleanPrice = [100.1;100.1;100.8;96.6;103.3;96.3];
  CouponRate = [0.0400;0.0425;0.0450;0.0400;0.0500;0.0425];
 
nInst = numel(CouponRate);
Bonds(nInst,1) = fininstrument.FinInstrument;
for ii=1:nInst
    Bonds(ii) = fininstrument("FixedBond",'Maturity',Maturity(ii),...
        'CouponRate',CouponRate(ii));
end

Использование fitSvensson для создания parametercurve объект.

SvenModel = fitSvensson(Settle,Bonds,CleanPrice)
Solver stopped prematurely.

lsqnonlin stopped because it exceeded the function evaluation limit,
options.MaxFunctionEvaluations = 6.000000e+02.
SvenModel = 
  parametercurve with properties:

              Type: "zero"
            Settle: 15-Sep-2017
       Compounding: -1
             Basis: 0
    FunctionHandle: @(t)fitF(Params,t)
        Parameters: [0.6861 -38.1136 42.9188 -1.8840 0.3510 1.9195]

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

свернуть все

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

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

Объекты инструмента скрепления, заданные как массив объектов инструмента скрепления.

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

Наблюдаемые рыночные цены, указанные как вектор.

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

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

свернуть все

Подгонянная модель Свенссона, возвращенная как parametercurve объект.

Введенный в R2020a