Sample Data for the Basic Building Blocks of Yield Curve Smoothing
As before, we continue to insist in this section of our series that any smoothing technique that does not fit the market exactly is unacceptable for practical use. In the meantime, we continue to fit this raw data with our derived “best” yield curve.
Example E: Quadratic Forward Rate Splines and Related Yields
As always, “yields” are always meant to be continuously compounded zero coupon bond yields and “forwards” are the continuous forward rates that are consistent with the yield curve. We define our criterion for best and specify what constraints we impose on the “best” technique to fit our desired trade-off between simplicity and realism. We again answer the nine questions posed in Part 2 of this series. We make one modification versus part 6—we make the object of the smoothing exercise forward rates, not yields, because it was the forward rates that were disappointing in Example D.
Step 1: Should the smoothed curves fit the observable data exactly?
1a. Yes
1b. No
1a. Yes. Our answer is unchanged. With only six data points at six different maturities, a technique which cannot fit this simple data (like Nelson-Siegel cannot) is too simplistic for practical use.
Step 2: Select the element of the yield curve and related curves for analysis
2a. Zero coupon yields
2b. Forward rates
2c. Continuous credit spreads
2d. Forward continuous credit spreads
2b. Forward rates is our choice for Example E. We continue to observe that we would never choose 2a or 2b to smooth a curve where the underlying securities issuer is subject to default risk. In that case, we would make the choices in either 2c or 2d. We do that later in this series.
Step 3: Define “best curve” in explicit mathematical terms
3a. Maximum smoothness
3b. Minimum length of curve
3c. Hybrid approach
3b. Minimum length of curve. We continue with this criterion for best. As noted in earlier blogs, the following article on www.wikipedia.com explains how to calculate the length of a curve given the mathematical function that produced the curve:
http://en.wikipedia.org/wiki/Arc_length
The length s of a yield curve or forward rate curve between maturities a and b is
where f’(x) is the first derivative of the yield curve or forward rate curve. We want to minimize s over the full length of the yield curve. Our answers in Steps 4 and 5 make the analytical valuation of s possible as in example D.
Step 4: Is the curve constrained to be continuous?
4a. Yes
4b. No
4b. Yes. As in Examples B and later, we insist on continuous yields and see what this implies for forward rates.
Step 5: Is the curve differentiable?
5a. Yes
5b. No
5a. Yes. This is the change first imposed in Example D. We seek to take the spikes out of yields and forward rates by requiring that the first derivatives of two curve segments be equal at the knot point where they meet. This constraint also means that a linear “curve” isn’t sufficiently rich to satisfy the constraints we’ve imposed.
Step 6: Is the curve twice differentiable?
6a. Yes
6b. No
6b. No. As noted in Parts 3 through 6, the curve will not be twice differentiable at some points on the full length of the curve.
Step 7: Is the curve thrice differentiable?
7a. Yes
7b. No
7b. No. The reason is due to our choice of 6b.
Step 8: At the spot date, time 0, is the curve constrained?
8a. Yes, the first derivative of the curve is set to zero or a non-zero value x.
8b. Yes, the second derivative of the curve is set to zero or a non-zero value y.
8c. No
8c. No. For simplicity, we again answer No to this question. We wait until later blogs in this series to explore this option.
Step 9: At the longest maturity for which the curve is derived, time T, is the curve constrained?
9a. Yes, the first derivative of the curve is set to zero or a non-zero value j at time T.
9b. Yes, the second derivative of the curve is set to zero or a non-zero value k at time T.
9c. No
9a. Yes. As we explain below, our other constraints and our definition of “best” put us in a position where the parameters of the best yield curve are not unique without one more constraint. We impose this constraint to obtain unique coefficients and then optimize the parameter used in this constraint to achieve “the best” yield curve. We explore choice 9b in later blogs. The constraint is imposed on forward rates, not yields, in Example E.
Now that all of these choices have been made, both the functional form of the line segments for forward rates and the parameters that are consistent with the data can be explicitly derived from our sample data.
Deriving the Form of the Forward Rate Curve Implied by Example E
Our data set has observable yield data at maturities of 0, 0.25 years, 1, 3, 5 and 10 years. We have 6 knot points in total and 4 interior knot points (0.25, 1, 3, and 5) where we require (a) the adjacent forward rate curve segments to produce the same forward values and (b) first derivative of forwards at a given knot point.
That means that we need to step up to a functional form for each forward rate segment that has more parameters than a linear segment. The following two links to Wikipedia articles nicely summarize the progression from linear to quadratic to cubic splines, as we mentioned in Example D:
http://en.wikipedia.org/wiki/Spline_interpolation
http://en.wikipedia.org/wiki/Spline_%28mathematics%29
In the current Example E, we are still defining the “best” forward rate curve as the one with the shortest possible length or maximum “tension.” When we turn to cubic splines, we will discuss the proof that cubic splines produce the “smoothest” curve. In this example, we will numerically force the quadratic splines we derive to be the shortest possible quadratic forward rate splines that are consistent with the constraints we’re imposing in our continuing search for greater financial realism.
As in Example D, we can derive the shortest possible quadratic forward spline implementation in two ways. First, we could evaluate the function s explicitly given in Step 3, since for the first time the full forward rate curve will be continuously differentiable, even at the knot points. Alternatively, we can again measure the length the curve by approximating the curve with a series of line segments, thanks to Pythagoras, whom we invoked in Part 3 of this series:
We chose the latter approach for consistency with our earlier examples. We break the 10 year yield curve into 120 monthly segments to numerically measure length. We now derive the set of five quadratic spline coefficients that are consistent with the constraints we have imposed.
Each forward rate curve segment has the quadratic form
The subscript i refers to the segment number. The segment from 0 to 0.25 years is segment 1, the segment from 0.25 years to 1 year is segment 2, and so on. The first constraint requires the first curve to be equal to the observable value of y at time zero since y(0)=f(0).
Where for this first constraint t_{j} = 0. In addition we have four constraints that require the forward rate curves to be equal at the four interior knot points:
at the interior knot points. We rearrange these four constraints, for j=1,4 like this:
At each of these knot points, the first derivatives of the two segments that join at that point must be also be equal:
When we solve for the coefficients, we will rearrange these four constraints in this manner:
So far, we have 9 constraints to solve for 5x3=15 coefficients. We have 5 more constraints that are similar to those used in Part 5 of this series:
Our last constraint is imposed at the right hand side of the forward rate curve, time T=10 years. We will discuss in later blogs the alternative specifications, but for now assume we want to constrain the first derivative of the forward rate curve at T=10 to take a specific value x:
In the equation above, j=5, the fifth line segment and maturity T=10. The most commonly used value for x is zero, the constraint that the forward rate curve be flat where T=10. Our initial implementation will use x=0.
In matrix form, our constraints look like this:
Note that it is the last element of the “y Vector” matrix where we have set the constraint that the first derivative of the forward rate curve be zero at 10 years. When we invert the coefficient matrix, we get the following result:
We solve for the following coefficient values:
These coefficients give us the five quadratic functions that make up the forward rate curve. We use the second and third relationships below to derive the yield curve implied by the combination of the actual input yields and the derived coefficients for the forward curve:
The yield function for any segment j is
We note that y* denotes the observable value of y at the left hand side of the line segment where the maturity is t_{j}. Within the segment, y is a cubic function of t, divided by t.
We can now plot the yield and forward rate curves to see whether or not our definition of “best forward rate curve” and the related constraints we imposed have produced a realistic yield curve and forward rate curve:
Somewhat surprisingly, the answer for Example E is quite plausible, especially in comparison to the relatively implausible results we obtained in Example D where the quadratic functions were applied to zero yields instead of forward rates. Here in Example E, the yield curve itself fits the data perfectly, our standard “necessary” condition. The forward rate curve is also reasonably smooth and looks quite plausible given where the observable yields (in black) are. Is it possible to do even better by optimizing the value of x, the 15th constraint that we imposed on the forward curve where T=10?
Before doing that, however, we overlay the yield and forward curves on the best fitting (but not perfectly fitting) Nelson-Siegel curve:
As we’ve noted before, the Nelson-Siegel curves are simply wrong and do not pass through the actual data points (in black). Why, then, does anyone use Nelson-Siegel? We’ve now reach the point in these examples in which the current method, quadratic splines of forward rates, is both more accurate and (literally) easier to calculate than Nelson-Siegel. We derive the “best” forward rate and yield curve with one matrix inversion. Nelson-Siegel requires the ability to optimize a non-linear function and, even after that optimization, doesn’t meet the minimum standard of consistency with observable market data.
Even though forcing the first derivative of the forward rate curve to zero at the 10 year point worked well, we can potentially do better. Let’s again ask the question “Can we improve the quadratic spline approach by optimizing the value of x in the 15^{th} constraint, f’(10)=x?” This insight, as we said in Part 6 of our blog, comes from a working paper by Tibor Janosi and Robert A. Jarrow in 2002, who noted that this constraint and others like it could have important implications for the “best” curve. Our first implementation was x=0, a flat forward rate curve on the long end of the curve. We now look at alternative values for x.
There are two criteria for “best” that we could use given our statement above that the “best” curve is the one that is the shortest, the one with maximum tension. We could choose the value of x that produces the shortest forward rate curve or the value of x that produces the shortest yield curve. We do both.
If we use common spreadsheet software and iterate x so that the length (calculated numerically at 120 monthly intervals) of the yield curve is minimized, we get this set of coefficients:
If we iterate x so that the length of the forward rate curve is minimized, we get still another set of coefficients:
The value of x that produces the shortest yield curve is -0.00342. The value of x that produces the shortest forward rate curve is -0.00166. We can compare these three variations on the yield curve produced by the quadratic spline forward rate approach:
The yield curves are so similar that we don’t have enough pixels to distinguish yield differences on this graph. When we look at forward rates associated with these yield curves, we get the following view:
The forward curve with the shortest length, consistent with a quadratic spline of yields, is shown in blue. The curve in orange produces the shortest yield curve, and the curve in red is consistent with the first derivative of f being flat at T=10. All three alternatives are very plausible and fit the observable data exactly.
The table below summarizes the analytical choices we have made in this and other examples and compares the lengths of the forward and yield curves using our discrete monthly numerical approximation:
By optimizing x in our 15^{th} constraint, we reduced the length of the forward rate curve to 15.264 compared to 15.28 with a flat forward curve and from 17.21 in the case of quadratic yield smoothing. When we optimized x to minimize the length of the yield curve, we were able to get the length of the yield curve down to 11.068, only slightly more than Nelson-Siegel (10.23, but it is inconsistent with the data) and linear yield curve smoothing (10.99, but with discontinuous forward rates and kinks in the yield curve). We’re continuing to make progress in more and more realistic yield curve smoothing.
In part 8 of this blog, we apply the criterion of “maximum smoothness” for the first time.
Donald R. van Deventer
Kamakura Corporation
Honolulu, December 8, 2009