Svensson {YieldCurve}R Documentation

Estimation of the Svensson parameters

Description

Returns the estimated coefficients of the Svensson's model.

Usage

Svensson(rate, maturity )

Arguments

rate

vector or matrix which contains the interest rates.

maturity

vector which contains the maturity (in months) of the rate. The vector's length must be the same of the number of columns of the rate.

Details

The Svensson's model to describe the forward rate is:

yt(τ)=β0+β1exp(τλ1)+β2τλ1exp(τλ1)+β3τλ2exp(τλ2)y_t(\tau) = \beta_{0} + \beta_{1} \exp\left( -\frac{\tau}{\lambda_1} \right) + \beta_2 \frac{\tau}{\lambda_1} \exp \left( -\frac{\tau}{\lambda_1} \right) + \beta_3 \frac{\tau}{\lambda_2} \exp \left( -\frac{\tau}{\lambda_2} \right)

The spot rate can be derived from forward rate and it is given by:

yt(τ)=β0+β11exp(τλ1)τλ1+β2[1exp(τλ1)τλ1exp(τλ1)]+β3[1exp(τλ2)τλ2exp(τλ2)] y_t(\tau) = \beta_0 + \beta_1 \frac{ 1- \exp( -\frac{\tau}{\lambda_1}) }{\frac{\tau}{\lambda_1} } + \beta_2 \left[\frac{ 1- \exp( -\frac{\tau}{\lambda_1}) }{\frac{\tau}{\lambda_1} } - \exp( -\frac{\tau}{\lambda_1}) \right] + \beta_3 \left[\frac{ 1- \exp(-\frac{\tau}{\lambda_2}) }{\frac{\tau}{\lambda_2} } - \exp( -\frac{\tau}{\lambda_2}) \right]

Value

Returns a data frame with the estimated coefficients: β0\beta_{0}, β1\beta_{1}, β2\beta_{2},β3\beta_{3}, λ1\lambda_1 and λ2\lambda_2.

Author(s)

Sergio Salvino Guirreri

References

Svensson, L.E. (1994), Estimating and Interpreting Forward Interest Rates: Sweden 1992-1994, IMF Working Paper, WP/94/114.

Nelson, C.R., and A.F. Siegel (1987), Parsimonious Modeling of Yield Curve, The Journal of Business, 60, 473-489.

Examples

data(ECBYieldCurve)
maturity.ECB <- c(0.25,0.5,seq(1,30,by=1))
A <- Svensson(ECBYieldCurve[1:10,], maturity.ECB )
Svensson.rate <- Srates( A, maturity.ECB, "Spot" )
plot(maturity.ECB, Svensson.rate[5,],main="Fitting Svensson yield curve",
 xlab=c("Pillars in years"), type="l", col=3)
lines( maturity.ECB, ECBYieldCurve[5,],col=2)
legend("topleft",legend=c("fitted yield curve","observed yield curve"),
col=c(3,2),lty=1)
grid()

[Package YieldCurve version 5.1 Index]