Note on Cubc Splne Valuaton Methodology Regd. Offce: The Internatonal, 2 nd Floor THE CUBIC SPLINE METHODOLOGY A model for yeld curve takes traded yelds for avalable tenors as nput and generates the curve through nterpolaton and curve fttng, so as to mnmze the error between traded and model prces. Cubc splne methodology has been chosen by FIMMDA as t allows mnmum error whle gvng a smooth, contnuous curve, whch s essental for correct prcng of debt securtes. The techncal detals of the yeld curve constructon, optmzaton, smoothng s gven n Annexure. Process of the methodology The methodology for generaton of the yeld curve and the valuaton for G-Secs s hghlghted below: - ) Identfcaton of Benchmark Bonds: - At the start of every month, FIMMDA along wth market partcpants would dentfy the Benchmark Bonds based on the traded volume and amount. 2) Selecton of bonds for curve constructon: - From the unverse of all the traded bonds on a partcular day, a. For each year only one bond would be taken for curve constructon. b. Benchmark Bonds: - Traded: - Any Benchmark Bond whch was traded would be taken for curve constructon Proxy yeld (for tenors -7 and 0 years): - In the curve constructon there needs to be one yeld for every year between tenors to 7 and 0 years; proxy yelds would be taken for ponts where no trade n Benchmark Bonds has taken place on that day. The proxy yeld for a bond would be calculated as the dfference between today s traded yeld and prevous day s yeld, of other Benchmark Bonds (process explaned under subsecton Proxy Yeld below) c. Non-Benchmark Bonds: - For tenors other than -7 and 0 years, f Benchmark Bond has not traded, a non-benchmark Bond can be taken for curve constructon f on that day t satsfes the crtera lad down by FIMMDA Valuaton Commttee every month. If more than one non-benchmark Bond qualfes as per the gven crtera, then the bond wth the hghest number of trades on the partcular day would be taken.
d. Adjustment for 30-year tenor pont: The curve needs to be generated tll 30 years. If the 30-year Benchmark Bond does not trade on a partcular day, then the dfference between ts last traded yeld (provded t was traded n the past 4 days) and the model generated 20-year par-yeld for the correspondng day s calculated. Ths dfference s added to the current day s 20-year model generated par-yeld to arrve at the 30-year Benchmark Bond yeld. If the bond dd not trade n the last 4 workng days then the yeld of the farthest tenor traded bond of the current day would be taken as the yeld of the 30-year Benchmark Bond. e. Other crtera: The other crtera n selectng nputs for the curve constructon are If a new bond has been ssued durng the month and the bond meets FIMMDA s crtera for beng a Benchmark Bond (but not desgnated as such) then the new bond would be taken nto curve constructon f the number of trades n the new bond were hgher than the number of trades n the exstng benchmark on that day. For the tenors less than-year tenor, the lowest tenor traded T-Bll would be used and t would be extrapolated tll overnght perod Only G-Secs wthout features lke floatng coupon, embedded optons etc. would be used as nputs for curve constructon. 3) Base lqud zero rate curve and par-yeld curve generaton: - Based on the above data, a base lqud zero rate curve based on cubc splne approach s generated. Further a smoothng technque s appled to ensure that the forward rate curve s smooth. The par-yeld curve s generated from the zero-rate curve. 4) Computaton of llqudty: - The llqudty factor s calculated based on the yeld dfferental between the yeld of a traded bond and the model generated yeld for the same bond s resdual tenor on that day. It would be generated every Monday on a 4-week movng average bass. The process of calculatng the llqudty factor s elaborated n Illqudty Factor below 5) Valuaton: - a. Prces of all outstandng G-Secs (except floatng rate bonds) would be generated based on the par yeld generated by the model for the resdual tenor and the approprate llqudty factor. b. However, f traded yelds of benchmarks and non-benchmarks (whch satsfes the crtera decded every month by the Valuaton Commttee meetng) or proxy yelds are avalable, then the model prce would be substtuted wth the last traded prce or prce generated from proxy yeld.
Proxy yeld For each year between tenors to 7 years and 0 years, a yeld must be taken for base curve calbraton. Ths s needed as the steepness n the curve between each of these tenors changes sgnfcantly. If for any year (n the tenors to 7 and 0 years) the Benchmark Bond does not trade on a partcular day then proxy yeld for that tenor has to be generated. Proxy yeld would be generated as follows:. For Benchmark Bond that dd not get traded (n the tenors to 7 and 0 years), the proxy yeld would be calculated by addng a factor to that bond s traded/proxy yeld of the prevous day. The factor would be calculated as follows: a. Dfference n yeld s computed for the traded benchmark securty of the tenor mmedately precedng the tenor for whch proxy yeld s requred. Smlar dfference n yeld s computed for mmedately succeedng tenor b. Average of the dfference n yeld of the of the two tenors (traded on the day) s computed as the factor c. If no precedng Benchmark Bond s traded (T-Bll s not consdered for ths calculaton), then the factor would be the dfference n yeld of the mmedate succeedng traded Benchmark Bond; or d. If no succeedng Benchmark Bond s traded (T-Bll s not consdered for ths calculaton), then the factor would be the dfference n yeld of the mmedate precedng traded Benchmark Bond. For calculatng proxy yelds, only tenors of -7, and 0 years would be consdered. Illqudty factor The llqudty factor would be calculated as below: For each bond the llqudty value s calculated as the dfference n the traded yeld and model generated lqud par-yeld for the bond s resdual tenor. Sample calculaton for the G-Secs maturng n 202 as at June, 200 s shown below:
Bond Maturty Date Actual Traded Yeld Interpolated Par Yeld from model curve Regd. Offce: The Internatonal, 2 nd Floor Illqudty value (n bps) 6.85 04/05/2 N.T 7.40 05/03/2 6.05% 6.05% 0.00 0.25 06/0/2 N.T.03 07/8/2 6.2% 6.2% 9.00 9.40 09//2 6.23% 6.7% 6.00 4.63 /0/202 N.T N.T Not Traded Smlar exercse s done daly and the movng average for the past 4 weeks s calculated for each securty. Further, an average of postve llqudty spreads for all the bonds maturng n a partcular tenor s also calculated. For example, n the llustraton above, an average of the llqudty spreads would be taken for all bonds maturng n 202. The averages calculated are floored to zero. Ths s done to ensure that no bond has a negatve llqudty factor. If a partcular bond has traded for more than 5 days n the past 4 weeks then the 4- week average llqudty value calculated for that partcular bond would be used as the llqudty factor. If a partcular bond has traded on less than 5 days n the past 4-weeks, then the average llqudty value calculated for all the bonds maturng n a partcular tenor would be used as the llqudty factor. 4 week movng averages would be calculated on every Tuesday based on the mmedate precedng 4 weeks and appled for the valuatons durng the week. If none of the bonds maturng n a partcular tenor have traded n the past 4 weeks then the average of the llqudty factor of mmedate next and mmedate prevous tenors would be used. For example f none of the bonds maturng n 207 have traded n the last 4 weeks then llqudty factor would be calculated as the average of llqudty factor for 206 (say 8 bps) and 208 (say 2 bps).e. 5 bps. When there are no trades beyond a partcular tenor say beyond 2027, then the llqudty factor applcable to the mmedate precedng avalable traded tenor, say, 2027 would be appled.
Annexure A detaled descrpton of the Penaar Choudhry method for extracton Zero rates and Par Yelds from Traded Bond Prces FIMMDA was entrusted wth the task of developng a sutable model for the yeld curve generaton and streamlnng the process for arrvng at the prces for the G-Secs. Nelson Segel Svensson and cubc splne zero curve were consdered. A model based on Nelson Segel Svensson provdes a smooth zero curve; however t suffers from the demert of a relatvely hgher prce errors. Ths s because the model cannot ncorporate multple changes n curvature across varous tenors. A cubc splne curve was consdered to be approprate for the Indan markets as the curve tracks the nput prce of varous tenors and thereby produces a lower model error. In ths approach the traded or proxy yelds serve as the nput for curve constructon and a cubc splne s used to nterpolate between the nput yelds to generate the curve. The cubc splne s a seres of curves that s contnuous at all the ponts. Each curve of 3 2 the splne s of thrd order and has the form Y = ax + bx + cx + d where Y s zero-rate for the tenor x. In the current method an optmzaton functon s used to ft a natural cubc splne based zero curve to a set of traded bond prces. A yeld curve s generated from the cubc splne based zero curve. The base research paper used as reference s authored by Rod Penaar and Moorad Choudhry. A smple cubc splne based mplementaton gves a good ft but leads to wavy forward curve. Hence a further smoothenng constrant s appled to the optmzaton procedure that generates a curve whch has mnmum curvature and mnmum prce error. Ths smoothenng leads to a better behavor of forward rates extracted from the zero rate curve. The zero rate curve thus obtaned s also used to extract par-yelds for dfferent maturtes. What s a cubc splne functon? A cubc splne functon s a pecewse cubc polynomal functon that passes through a gven 2 3 set of ponts n a smooth fashon.. The functon takes the form f = a + b Δ + c Δ + d Δ ; where represents the porton of the tme axs where we want to measure zero-rate. If T represents the tme to maturty of a traded bond, then between T and T +, Δ takes values from 0 to T T. + The tme axs s dvded n to regons by knot ponts at tmes T (usually the traded bond maturty n years). As we can see there s a dfferent set of coeffcents ( a, b, c, d ) descrbng the zero-rate curve between every T and T +. The value of the cubc splne functon as well as ts frst and second dervatves are the same when measured from ether sde of the knot pont.
For example, consder three consecutvely maturng bonds, wth maturty dates 4/06/205, 7/08/206 and 28/08/207. The current date s 29/07/200; the tme to maturty for each of these bonds s 4.875 years, 6.05 and 7.0805556 years respectvely. So wthn the cubc splne framework the zero-rate between 4.875 and 6.05 years s descrbed by one set of coeffcents ( a, b, c, d ) and between 6.05 years and 7.08 years s descrbed by another set of parameters ( a, b, c, d ). The value of Δ vares from 0 to (6.05-4.875=.75) between 4.875 and 6.05 + + + + years. Smlarly Δ takes the values from 0 to.0305 between 6.05 and 7.08 years. The zero-rate for 4.875 years s a, whle that for 6.05 years s a +. Based on the constrants applcable for natural cubc splne (dscussed n Annexure (a) ) t s possble to descrbe the ( b, c, d ) coeffcents n terms of the a coeffcents and the maturtes T. So n the optmzaton set-up the problem s to fnd values of a such that the squared dfference between the model generated prces and traded prces s least Prcng a coupon-bond gven a zero rate curve Suppose the values of the a coeffcents for the cubc splne are as follows Dates a coeffcents 29/07/200 5.60% 02/07/20 6.08% 03/09/203 7.047% 4/06/205 7.550% 7/08/206 7.72% 28/08/207 7.762% 03/05/2020 7.776% 5/02/2022 8.064% 02/07/2040 8.33% Then as dscussed earler t s possble to obtan zero-rates (guesses) for any maturty. Consder the bond wth coupon 9.39% and maturty date 02/07/20. The (model) prce for ths bond s obtaned usng dscount factors obtaned from zero rates (see dagram below).
9.39 bond maturty.e. 02/07/20 Dscount factors obtaned by convertng zero-rates Coupon Dates Coupons PV for coupon DF (dscount) 02/ 0/ 20 4.695 0.975503799 4.57999033 02/ 07/ 20 04.695 0.945663949 99.006287 Drty Prce 03.586277 Accrued nterest 0.70425 Clean Prce 02.882027 Ths clean prce s the model prce of the coupon bond. Prcng a T-bll gven a zero-rate curve The prce of the T-bll s taken as 00 tmes the dscount factor (from zero rates) for the maturty of the T-bll. Fttng the zero-curve to reproduce traded bond prces Let P represent the traded bond prce (ether T-bll or coupon bondand P ) model prce (produced as above usng a guess of the zero-curve). The values of coefcents ( b, c, d ) can be found from coeffcent a. So by modfyng a coeffcent (usng an optmzaton algorthmlevenberg Marquardt algorthm has been used n the current mplementaton) the 2 cumulatve prce dfference ( P ) P) between the model prce and traded prce of the traded bonds s mnmzed. Smoothenng of zero-rate curve To ensure that smooth forward rates are obtaned from the zero-rate curve, a curvature 2 term s added to the mnmzaton of prce dfferences. So nstead of mnmzng ( P P) (bond prce dfference), ) t 2 ( P P) + λ( t)*[ f ] 2 " 2 t ) s mnmzed. The start pont for ths mnmzaton s taken as the curve obtaned by smply matchng bond prces from the prevous step. " f represents the zero-rate curve and f the second dervatve of the curve. Here λ (t) ( t beng tme n years or maturty of the traded bond) s a functon that augments the curvature, t s also called the VRP (varable roughness penalty) functon.
Usng ths form of mnmzaton leads to smoother curve but wth possble msmatch n model prce of bonds and traded prce of bonds. In the current mplementaton λ(t) s same as suggested by Danel F. Waggoner 2. It s a stepwse functon and takes the followng values: λ() t = 0._ for _ t < λ() t = 00_ for _ t < 0 λ( t) = 00000 _ for _ 0 t Results:Once the zero rate s obtaned by the above method the par yeld s derved from t. Par yeld (or par rate) s the coupon rate for whch the prce of a coupon bond s equal to ts par-value. For varous maturtes such as 0.25 years, 0.5 years, let C represent the dfmat par-yeld. Then one can solve the equaton C =, to obtan the par-yeld for that df k k maturty. Here df represents the dscount factor for the maturty date of the magnary mat bond (say for.5 years maturty) and df k represents the dscount factors for the K-th coupon payment date of ths magnary coupon-bond. Agan the dscount factors are obtaned from the zero-rate curve obtaned from optmzaton earler.
Appendx (a) a Obtanng other coeffcents from coeffcents Matchng the values of zero-rate, the frst dervatve of zero rate and the second dervatve of the zero rate at the knot ponts T t s possble to wrte the followng equatons: 2 3 a = a + bδ + c Δ + d Δ + b b ( c c ) + + c c + d = - (B) 3Δ = +Δ - (A) c For the coeffcent the followng recurrence relaton can be wrtten: a a a a + + 2 + Δ c +Δ c + 2( Δ +Δ ) c = 3{( ) ( )} - (C ) + + 2 + + Δ Δ + Furthermore f there are n all N bonds, the values of c and c N are taken as zero (these condtons are called Natural cubc splne condtons), then the recurrence relaton for the c coeffcent s can be rewrtten n the matrx form as a set of lnear equatons: [2( Δ + Δ ) Δ... ] = 2 2 [ Δ 2( Δ + Δ ) Δ ] = 2 2 2 3... 2 3 2 [ 3{( ) ( )}] 2 3 2 4 3 [ 3{( ) ( )}] [... [... ] = [...] a a a a a a a a Δ Δ 2 3 N N 2 N N [... Δ 2( Δ + Δ )] = [ 3{( ) ( )}] N 2 N 2 N Δ Δ a a a a Δ Δ N 2 N - (D) From the set of lnear equatons (D) one can fnd reference to trdagonal system of matrces). c c.... 2 2 cn usng matrx mathetcs (see
c Thus as a frst step the coeffcent s are obtaned from the a coeffcent s and then the remanng coeffcents are obtaed usng equatons (A) and (B). Once all coeffcents are obtaned we have our zero-rate curve. References: Fttng the term structure of nterest rates: the practcal mplementaton of cubc splne methodology http://www.yeldcurve.com/mktresearch/fles/penaarchoudhry_cubcsplne2.pdf 2 Splne methods for extractng nterest rate curves from coupon bond prces http://www.frbatlanta.org/flelegacydocs/wp970.pdf http://en.wkpeda.org/wk/par_yeld http://en.wkpeda.org/wk/trdagonal_matrx_algorthm http://en.wkpeda.org/wk/natural_cubc_splne