The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

13
The Nelson- Siegelson-Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Transcript of The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Page 1: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The Nelson-Siegelson-Svensson in Python

¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Page 2: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Our Task To select and fit some of the bootstrapped curves in Python to the NSS Model

Page 3: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The term structure of interest

rates

This is the relationship between the yields of default-free zero-coupon bonds and their time to maturity.

The term structure is not always directly observable in the market yet it is very useful in finance.

Since it cannot be observed, it needs to be estimated using approximation methods which derive the zero coupon yield or spot rate curves from observable data

Page 4: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Approximation

Methods

The Fama-Bliss bootstrapping technique –the process of extracting the zero-coupon rates from the coupon bearing bonds by splitting the coupons and principal of normal bonds to create virtual zero coupon bonds of longer maturity

Cubic splines

Exponential splines

Polynomials functions

Parametric methods like the Nelson-Siegel-Svensson

Non-parametric methods

Page 5: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The Nelson-Siegel-

Svensson Method

The NSS model is an optimization technique used to approximate observable empirical data in order to generate yield curves. It was created by Nelson and Siegel (1987) and to include a third term by Svensson (1994)

It is used by several Central banks and other market participants as a model for the term structure of interest rates. 9 out of 13 Central Banks that report their curve estimation methods Bank of International Settlements use this model.

It helps to estimate the current and also to forecast the future term structure of interest rates.

Page 6: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The Formula

The formula

Where

And

are constants to be estimated and used to fit the models to the bonds university

Page 7: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Interpreting the terms

is the long run level of interest rates,short-term component and medium-term component while is the decay factor. is an additional medium-term component.

Note that smaller values of produce slow decay and can better fit the curve at long maturities while large values of produce fast decay and can better fit the curve at short maturities

The constants are estimated by minimizing the sum of the squared bond price errors weighted by (1/) where equals the duration * price/(1+yield to maturity)

The minimizing problem here can be solved by use of the least squares method or the solver in Excel

Page 8: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The NSS Model

Steps in computation:

1. We take a limited amount of bond yield information, and then extrapolate and interpolate from this a good-fitting yield curve which covers all the ‘potential’ rates in-between using the Nelson-Siegel-Svensson model.

2. We minimize the weighted sum of the squared deviations of the fitted prices from the ‘potential’ prices.

We will conduct both steps first in Excel and then in Python.

Page 9: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦
Page 10: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The Data

Page 11: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

The NSS Model

The Excel Solver

The Python Program

(Find them attached)

Page 12: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Conclusion

Page 13: The Nelson-Siegelson- Svensson in Python ¦Andile Ndiweni ¦ David Brown ¦ Erick Mokaya ¦

Appendix Excel Sheet and 2 python code pages