Login  Register

Using Inflation Term Structure instead of CPI indices when they overlap

Posted by igitur on Jun 09, 2014; 10:33am
URL: http://quantlib.414.s1.nabble.com/Using-Inflation-Term-Structure-instead-of-CPI-indices-when-they-overlap-tp15428.html

Hi,

This is a continuation of the discussion at http://quantlib.10058.n7.nabble.com/Valuing-CPI-Bond-at-real-yield-curve-td15354.html .

To recap: I want to value a CPI Bond by discounting at the real yield curve and input a zero inflation curve consisting only of 0 rates. I've successfully constructed that curve using InterpolatedZeroCurve. This curve is used for forecasting CPI indices. I also input historic CPI indices from far back to the most recent available.

I'm now in a tricky situation where there is a bit of overlap. Suppose my settlement date is 2014-05-27 and my observation lag is 4 months. What I want to do is use actual CPI indices up to the lagged date of 2014-01-27 (calculated by linear interpolation between 2014-01-01 and 2014-02-01) and for anything after that I want to use the zero inflation curve, which implies any index that is looked up for a date after 2014-01-27 will be exactly the same (no growth).

My zero inflation curve already has a base date of 2014-01-27, and my historic CPI indices go up to April 2014. So there is a bit of overlap. At the moment, the ZeroInflationIndex.fixing() method prefers to use CPI indices if they are available. I want to rather use the zero inflation curve. There is a forecastTodaysFixing parameter which is currently ignored.

I propose to implement the forecastTodaysFixing so that when a 'true' is passed to it, the method will rather using the forecasting part and thus use the zero inflation curve. In CPICoupon, where this method is called, I will check whether the zero inflation curve base date is before the CPICoupon's fixing date and if so, pass 'true'. Or the alternative is to introduce a new parameter in the CPIBond constructor and pass this through to CPICoupon to determine which of the two curves get preference.

I'm posting here to ask what I should look out for? I don't want to introduce a breaking change. The fixing date methods are quite tricky and it took me a while to get my head around it. Any advice will be appreciated.

As a sidenote, limiting the historic CPI indices up to an earlier date doesn't solve the problem. The algorithm uses the availability and observation lags to deduce up to which date the CPI index should be used. So if I exclude indices after 2014-02-01, then a lookup error occurs.

regards,
Francois Botha

------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://www.hpccsystems.com
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev