Retrieving Svensson's model parameters - On what order are these parameters provided?

3 views (last 30 days)
After creating a Svensson model I would like to store the parameters calculated by the fitSvensson function.
I already know I can get the six parameters (Beta0, Beta1, Beta2, Beta3, Tau1, Tau2) from the model's "Parameters" attribute but I have no idea about on what order are these parameters provided. I searched the documentation but up to this time I found no reference to this information.
The example (below - and _ here _) doesn't help very much.
Settle = repmat(datenum('30-Apr-2008'),[6 1]);
Maturity = [datenum('07-Mar-2009');datenum('07-Mar-2011');...
datenum('07-Mar-2013');datenum('07-Sep-2016');...
datenum('07-Mar-2025');datenum('07-Mar-2036')];
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];
Instruments = [Settle Maturity CleanPrice CouponRate];
PlottingPoints = datenum('07-Mar-2009'):180:datenum('07-Mar-2036');
Yield = bndyield(CleanPrice,CouponRate,Settle,Maturity);
SvenssonModel = IRFunctionCurve.fitSvensson('Zero',datenum('30-Apr-2008'),Instruments);
SvenssonModel.Parameters
ans =
0.0002 3.7616 -24.5489 34.3165 10.8867 11.9282
Which one is Beta1? Which one is Tau2? Any clues?
Thank you in advance and Merry Christmas to all of you!
Fernando
  3 Comments
Luiz Fernando Carnot R de Almeida
I tried to use the parameters in the following order: Beta0, Beta1, Beta2, Beta3, Tau1 and Tau2.
In the original formula the results found are different from those calculated by the getZeroRates method on my SvenssonModel.
Using the formula presented in Mathworks' URL the results don't make any sense.
I also tried other parameter combinations but the results got even worse. It seems that either I am unable to find the right combination of the parameters or the formula used to calculate the zero rate is a bit different from each of the formulas in the previous comment.
Gokturk
Gokturk on 26 Mar 2014
Hi, Im trying to get parameters but receiving an error 'No appropriate method, property, or field Parameters for class IRFunctionCurve' can you pls help me on that thnks

Sign in to comment.

Accepted Answer

Luiz Fernando Carnot R de Almeida
According to the source code (IRFunctionCurve.m):
% The fitted parameters can be recovered from the Parameters % field and are the following: (Beta0, Beta1, Beta2, Beta3, % Tau1, Tau2)
  1 Comment
Luiz Fernando Carnot R de Almeida
The problem is solved.
Do not pay attention to the "Svenson's function" provided in MatLab's online documentation. Use the original one. It works.
Furthermore, bear in mind that each unity of maturity corresponds to a full year, so if you plan to calculate the interest rate of a single day and your basis is BUS/252 make sure your maturity parameter is 1/252.
Hope this helps.

Sign in to comment.

More Answers (0)

Categories

Find more on Energy Production in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!