# Notes on Swaps and Other Derivatives by gillenpj

VIEWS: 124 PAGES: 64

• pg 1
```									Swaps and Other Derivatives
Richard Flavell
Summary by Patrick Gillen, 11 October 2012

Chapter 1 (Swaps and Other Derivatives)

This workbook summarises BIS statistics over the past years. The BIS statistics (adjusted for double
counting) are the amounts outstanding in billions of US dollars for the OTC derivatives market,
broken down by half year, asset class, and product type. Both notional amounts outstanding and
gross market values are given. Simpler ISDA data from an earlier period are presented too. For the
two largest asset classes, viz., FX and interest rates, the statistics are broken down by contract
maturity and currency also.

Key points:

   Despite all the publicity given to more exotic transactions, the overwhelming workhorse is
the relatively short-term interest rate swap
   The majority of FX derivatives, predominantly forwards, are under 1 year in maturity;
interest rate derivatives are typically much longer, averaging between 5 and 10 years
   In terms of currencies, the major ones are EUR, USD, JPY, and GBP

Chapter 2 (Short-term Interest Rate Swaps)

Market data

Cash rates for 7-day, 1-month, 3-month, 6-month, and 12-month maturities with 2-day settlement
are given. A cash rate for a maturity between 1 and 3 months is derived using linear interpolation.

Worksheet to calculate a discount factor from a set of cash rates

Using the same cash rates, discount factors for 2 days hence are derived assuming ACT/360 day
count convention. A cubic curve is fitted to both rates and discount factors. A discount factor for a
maturity of 9 months is derived using (a) linear interpolation of cash rates and deriving discount
factor from interpolated rate, (b) cubic interpolation of cash rates and deriving discount factor from
interpolated rate, (c) cubic interpolation of discount factors, (d) linear interpolation of logs of
discount factors and deriving discount factor from interpolated value by taking exponential. The
maximum difference arising from using these different methods to derive a factor to discount \$100
million is more than \$50,000 or 5bps.
Worksheet to demonstrate the concepts of discounting

Using the discount factors derived from 3- and 12-month cash rates, deals with exactly the same
maturity dates as the cash rates but paying different coupons are compared.

Worksheet to calculate forward rates from a set of cash rates

3/6, 6/9, and 9/12 forward rates are calculated using the 9-month interpolated discount factor
derived earlier. The results are shown below.

3.2%
3 monthly
3.0%                                                                        forward rates
2.8%
Linear interpolation of rates

Cubic interpolation of rates
2.6%
Linear interpolation of DF's

2.4%                                                            Cubic interpolation of DF's

Log-linear interpolation of DF's
2.2%
3/6            6/9           9/12

[Another] Worksheet to calculate forward rates from a set of cash rates

Using the same four interpolation techniques as before, discount factors are derived for maturities
15 days apart, out to 1 year. A set of 15-day forward rates are derived for each set of discount
factors. These are compared below.
3.5%
15-day forward rates
3.0%

2.5%

2.0%
Linear Interpolation of rates
1.5%
Cubic Interpolation of rates
1.0%                                                              Linear Interpolation of DF's
Cubic Interpolation of DF's
0.5%
Log-linear Interpolation of DF's
0.0%
-           50          100          150          200         250          300          350          400

The maximum difference between forward rates with the same settlement and maturity dates is
more than 40bps; the average difference is more than 11bps.

Worksheet to use futures to calculate a FRA

Eurodollar futures1 prices for 3-month contracts with maturities in Mar and Jun ’08 are given. An
FRA2 for a 3-month period beginning between Mar and Jun ‘08 is priced by estimating the fair 3-
month rate from the rates implied by the futures prices3: this is usually done by simple linear
interpolation between neighbouring implied futures rates.

The net P/L from a portfolio comprising two sold futures in the ratios shown in the formula above
and one sold \$1,000,000 FRA is computed for parallel and rotational shifts under simplifying
assumptions that (a) P/L from futures can be calculated by multiplying \$25 by number of basis points
applied in shifts at their maturity dates and (b) P/L from FRA can be calculated by multiplying -
\$1,000,000 by number of actual days between its settlement and maturity dates as fraction of 360
by number of basis points applied in shift at its settlement date.

From a credit perspective, is it correct to use futures to price an FRA? Futures are effectively risk
free due to the margining process, whereas an FRA is an OTC product. We will see later that since
OTC products use collateralisation extensively futures and FRA rates are comparable.
1
The buyer of a futures contract benefits from its price increasing or equivalent the implied interest rate
falling; the price of the contact at maturity is derived from the spot 3-month LIBOR rate at that time.
2
The seller of an FRA agrees to pay a floating interest rate to receive a fixed interest rate; the buyer of an FRA
agrees to pay the fixed interest rate and to receive the floating interest rate.
3
Although forward rates can be created by spot money market transactions, FRAs are off-balance sheet
whereas cash trades are on-balance sheet. If a liquid interest rate futures market exists it is much more likely
to be used to price and hedge FRAs.
Pricing a money market swap using Futures and Cash

A money market swap is a short-dated swap typically priced and hedge using a futures strip. This
spreadsheet prices a 1-year swap to receive fixed annual on Actual/360 basis and to pay 3-month
LIBOR on Actual/360 basis quarterly. A strip of cash rates out to 1 year and a strip of futures prices
out to slightly beyond 1 year are given. The maturity dates of the (interpolated) cash rates coincide
with the fixing/payment dates of the swap; the maturity dates of the futures contracts do not.
Nevertheless using the same technique as in the previous spreadsheet the futures prices are used to
estimate the forward LIBOR rates. Using the discount factors implied by the cash rates, the net
present value of the floating leg is calculated. The net present value of the fixed leg is calculated
assuming a coupon of 100% and is derived by solving for the value that sets the net present value
of both legs equal. The net P/L from a portfolio comprising four sold futures in the ratios needed to
hedge the floating leg and the floating leg itself is computed for a non-parallel increase in the implies
rates of the futures contracts under simplifying assumptions that(a) P/L from futures can be
calculated by multiplying \$25 by number of basis points applied in shifts at their maturity dates and
(b) P/L from floating leg can be calculated by re-computing the LIBOR fixings using the new implied
rates of the futures contracts and discounting the cash flows using discount factors derived from the
original (un-shifted) cash rates. This a serious practical flaw in the model, in that it uses futures for
estimating the future LIBOR fixings and cash rates for deriving the discount factors but although both
markets are providing information over the 12-month period shifts are only applied to futures and
not to cash rates.

Pricing a money market swap off a futures strip [tweak to previous worksheet]

This spreadsheet uses the linearly-interpolated cash rate to the first futures contract’s maturity and
the implied interest rates for the futures strip to derive discount factors for the maturity dates of the
futures strip. These are translated into zero rates, which are linearly interpolated to arrive at values
at the fixing/payment dates of the swaps, whence the discount factors for computing the net
present value of the swap payments are obtained. This method of discounting the discount curve is
widely used, often under the name “continuously compounded interpolation”. Simple linear
interpolation of neighbouring futures implied rates is used to obtain LIBOR fixings, as before.

The construction of a discount curve when futures are not evenly spaced - correcting for the date
mismatches in the futures

This spreadsheet converts the simple implied rates of interest for the futures contracts into daily
compounded rates, creates a set of non-overlapping contiguous periods, either copies over
compounded rates or averages compounded rates of neighbouring periods, and converts the results
into simple interest rates to derive discount factors as before. The swap is re-priced with negligible
change in net present value. Simple linear interpolation of neighbouring futures implied rates is
used to obtain LIBOR fixings, as before.

This spreadsheet also contains the results of “blipping” the curve. Because futures affect the swap
both through the estimation of LIBOR fixings and the discounting process, it is easiest to use
numerical perturbation to estimate the impact of changing market conditions. In turn, each futures
price is perturbed 1 basis point downwards (equivalent to 1 basis point increase in the implied rate,
which is conventional) and the change in net present value of the swap is noted.
Pricing a money market swap off a futures strip - version 2

This spreadsheet is similar to the one before the previous one, except that instead of deriving
discount factors via continuously compounded interpolation (of zero rates), they are estimated
directly from the estimated LIBOR fixings of the swap of the swap.

The author notes that this technique can only be used when the fixed and floating legs have the
same payment frequencies or the frequency of one if a multiple of the other4.

Pricing a money market swap off a futures strip using forward valuing

The final spreadsheet in this workbook demonstrates another way of computing the fixed payment
at maturity necessary to render the swap’s net present value at inception equal to zero. We assume
that the bank funds the floating leg cash flows at each payment date borrowing at LIBOR flat. The
fixed cash flow received at maturity must be enough to repay the outstanding borrowings at that
date. Conventionally, swap pricing assumes that banks can always fund themselves at LIBOR flat.
This forward-valuing approach can be applied to embed the bank’s funding cost into a swap. For
example, if we use LIBOR + 100bps as our effective borrowing cost on the floating leg, the rate on
the fixed leg rises by about 4bps. This approach will be applied to more complex transactions later.

Aside: Convexity bias in futures [not in worksheet]

Thinking about selling a single futures contract versus buying an FRA with the tenor, dates, etc.,
what should the implied rate on the futures contract be in comparison to the rate agreed in the
FRA? If rates increase, we can expect to make money on both positions; however, the futures
margin is received immediately and can be invested at the higher rate whereas the win on the FRA
position is only realised at maturity. All other things being equal, this bestows an economic
advantage to the seller of the futures contract versus the buyer of the FRA, and the former must pay
for by accepting a lower price on day 0, i.e., agreeing to a high implied rate of interest. The
theoretical adjustment that needs to be added onto the FRA rate can be modelled within the HJM
framework. The adjustment is small under 2 years; typically it is about 6bp for the 5-year forward
rate and 18bp for the 10-year forward rate.

Chapter 3 (Generic Interest Rate Swaps)

Market data

Cash rates for o/n 7-day, 1-month, 3-month, 6-month, and 12-month maturities with spot
settlement are given. Mid-level swap rates annual actual/360 basis against 3-month LIBOR are given
for maturities from 1 to 30 years. Finally, a strip of futures prices out to 10 years is given.

Worksheet to generate the cashflows of a generic USD swap

4
Yet another alternative is to estimate both LIBOR fixings and discount factors via continuously compounded
interpolation (of zero rates).
This spreadsheet shows the cash flows for a 7-year swap to receive fixed and pay floating. The first
LIBOR fixing is known; the others are just showed as ‘Libor’. The spreadsheet also demonstrates
how the notional exchange of principal and the start and end of the swap can be included without
changing the economics. A set of discount factors for the (annual) payment dates of the fixed leg is
derived from a fixed simple interest rate,cou and using these discount factors the net present value
of the cash flows on the fixed leg, including initial and final notional exchange of principal, is shown
to be zero.

Worksheet to demonstrate the discovery of a synthetic par bond

This spreadsheet shows how to go from semi-annual actual/365 yields-to-maturity for government
bonds to annual actual/360 swap rates by adding spread to account for (i) differences in credit
between underlying bond market and interbank swap market, (ii) demand versus supply, and (iii)
hedging costs, e.g., buying bond to hedge paying fixed and financing transition through reverse repo
with borrowing rates typically lower than LIBOR but with potential to rise over quarter and give rise
to additional costs/risks; and re-stating resultant rate on annual actual/365 basis. It is observed that
the resultant rates are not too far off swap rates for similar maturities quoted in the market (yes—
that the purpose of the spreads added to the yields-to-maturity.) To price a swap at a maturity not
represented by the underlying bond market, one approach demonstrated in this spreadsheet is to
interpolate the yields-to-maturity available in the bond markets and calculate the swap spreads at
maturities available in the swap market. Adding the interpolated yield-to-maturity and swap spread
gives the swap rate at the desired maturity.

Worksheet to generate the fixed cashflows of a generic USD swap

This worksheet demonstrates how to calculate net present value of the fixed legs of 2- and 10-year
swaps, taking into account day count conventions, etc., and using discount factors calculated on a
subsequent worksheet. (Repeat of concept demonstrated in previous spreadsheet, to some extent.)

Worksheet to calculate a discount curve using linear interpolation on the swap curve and different
methods on the discount curve

This worksheet presents a subset of the market rates shown earlier: 7-day, 1-month, 3-month cash
rates, a strip of futures to beyond 15 months, a strip of 14 swaps from 2 to 30 years. Step 1, futures
prices for 6-, 9-, and 12-months are computed using linear interpolation. Step 2a, the maturities of
the “missing swaps”, e.g., 11-, 13-, 14-year swaps, are computed by adding whole numbers of years
onto settlement date using modified forward convention. Step 2b, the rates of the “missing swaps”
are computed using linear interpolation. Step 3a, the discount factors corresponding to the
maturities of the cash rates are computed in the usual way (simple compounding). Step 3b, the
discount factors corresponding to 6-, 9-, and 12-month maturities are computed in the usual way
(simple compounding of previous discount factor). Step 3c, the discount factors corresponding to
the maturities of the augmented set of swaps are computed by figuring out how the final cash flow
(final notional exchange of principal plus final coupon) must be discounted such that when
combined with the present value of the earlier coupons (discounted using already computed factors)
and the initial notional exchange of principal results in a swap worth par. Step 4, the zero coupon
rates corresponding to the maturities of the augmented set of swaps are computed in the usual way.
The rest of the spreadsheet interpolates discount factors for a set of evenly spaced dates 3 months
apart using a variety of interpolation schemes: (i) linear interpolation of discount factors, (ii) linear
interpolation of zero coupon rates, and (iii) linear interpolation of logs of discount factors. The
average maximum difference between the three methods is about 7bps. There are very significant
jumps in the forward rates across the maturity dates of the original set of swaps.

Details of Hermitian Interpolation

This spreadsheet demonstrates the use of Hermitian interpolation to smooth out the original set of
swap rates. The idea is that we fit a cubic polynomial to the values of the target function and its
derivatives (approximated using finite difference) at each end of each segment.

Worksheet to calculate a discount curve using Hermite interpolation on the swap curve and different
methods on the discount curve

This spreadsheet shows a comparison of bootstrapped discount factors both derived using
continuously compounded interpolation, i.e., linear interpolation of zero coupon rates. (The
spreadsheet repeats the illustration of the other methods that may used to interpolate discount
factors but the comparison is limited to the case of continuously compounded interpolation.) The
curves differ in that the second set take as the starting point the augmented set of swap rates
obtained using Hermitian interpolation rather than using linear interpolation as we did earlier. The
differences in implied forward rates fluctuate by -30bps to +30bps, although the average difference
is quite small—which is to be expected because both curves will “price” the original set of swap
rates correctly and these swap rates are in a sense an average of the forward rates along the curve.
Moreover, the two forward curves diverge appreciably at the long end.

Worksheet to calculate a discount curve using an optimisation approach

This spreadsheet computes the discount factors out to 1 year using in the usual way using a 3-month
cash rate and future prices for 3-, 6-, and 9-month maturities (interpolated if necessary). After that
date, discount factors are derived from 3-month forward rates and these are chosen by an
optimisation routine that attempts to minimise the sum of the square of the change from one
forward rate to the next while correctly pricing the original set of swap rates, i.e., there is no
augmented set of swap rates and the methodology focuses on fitting the actual information
provided by the market. The resultant curve is considerably smoother than the boot-strapped curve
and yet remains arbitrage-free.
Bootstrapping a swap curve
7.0%

6.0%

5.0%

4.0%
Cubic Hermite
3.0%                                            interpolation of swap…

2.0%
0                         10                          20                         30
Building a blended curve using optimisation

The previous worksheet produces an arbitrage-free curve that is also smooth. This worksheet
attempts a more difficult problem in that there is overlap between the futures and swaps segments,
making it impossible to achieve both objectives completely. Therefore, the worksheet sets as its
objective 90% of total (square) error fitting to market data plus 10% of smoothing measure (defined
as earlier).
3 monthly Forwards
6%

5%

4%
Axis Title

3%

2%
Smooth
1%
Arbitrage-free
0%
0           2                  4                 6                8                 10
Axis Title

Addendum – curve fitting in the real-world

At a Tier 1 bank, Patrick worked at for many years...

Discount factors were derived from cash, futures, and swaps using bootstrap for cash and,
optionally, futures, and a non-linear solver for swaps. Overlapping futures are handled similarly to
how they are handled in the workbook Short-term swaps.xls, except that the number of days in the
separate segments are taken into account. Cash rates maturing after the first cash rate to overlap
the first futures contract are immediately discarded. The remaining overlap may be handled either
by bootstrapping (stub rates) or via the non-linear solver. Gaps between futures contracts or
between the cash rates and futures rates are filled via interpolation. Discount factors at dates that
are not maturities of build instruments may be determined in a variety of ways, including
continuously compounded interpolation (i.e., linear interpolation of zero rates).

Chapter 4 (The Pricing and Valuation of Non-generic Swaps)

Market data

The market data for this workbook are zero coupon rates for maturities out to 30 years and spaced 3
months apart—from which discount factors and forward rates are derived.

4.2: Pricing of Non-Generic Swap - 1/5 Forward Starting - using Hedging Swaps

This spreadsheet demonstrates how the correct fixed rate for a 1-into-4 (forward starting) swap can
be deduced from the rates for (spot starting) 1- and 5 year swaps.
4.3: Pricing of Non-Generic Swap - 1/5 Forward Starting - using NPA

This spreadsheet demonstrates the same pricing as 4.2, except by valuing the fixed leg of the swap
(including initial notional outflow of principal) at par.

4.4: Pricing of Non-Generic Swap - 1/5 Forward Starting - using Implied Forwards

This spreadsheet bites the bullet and values the 1-into-4 year swap’s fixed and floating legs using the
discount factors and forward rates implied by the market data.

4.5: Pricing of Non-Generic Swap - 1/5 Forward Starting - using a Formula

This spreadsheet gives a simple formula for implying the 1-into-4 swap rate:

which follows from comparing the interest paid on the floating leg to the interest paid on the fixed
leg.

4.6: Pricing of Non-Generic Swap - 1/5 Forward Starting - using the Reference rate method and
Implied Forwards

This spreadsheet allows the tenor of the reference rate for the floating leg to differ from the period
between fixing/payment dates. This swap can be valued in the standard way using implied forwards,
etc.

The remaining spreadsheets in this workbook show how to value amortising and rollercoaster swaps

Chapter 5 (Asset Packaging)

Market data

The market data for this workbook are zero coupon rates for maturities out to 30 years and spaced 3
months apart, plus rates for 1 week and 1 month.

5.2: Diagram of the Impact of the Accord on Capital

This spreadsheet shows a stylised plot illustrating how capital requirements are risk sensitive under
Basel 3.

5.3: Creating a simple Par asset swap with a bond trading below par

A par asset swap is the combination of a bond purchase (pay bond dirty price, receive bond cash
flows, net present value of zero) plus a par swap with fixed leg pays away bond cash flows. The
margin over LIBOR on the floating leg can be worked out in the usual way. The purpose of this
spreadsheet is to compute this margin. Note, the initial outlay to purchase the bond is 100, which
means if the bond is trading at a discount then the discount is paid away via the swap’s fixed leg at
inception. Of course, the redemption amount from the bond is also 100 and exchange of principal
on the swap legs is only notional.

5.4: Creating a simple Par maturity asset swap with a bond trading below par

This spreadsheet is similar to the one before except that the dates of the bond cash flows, therefore
also the dates of the swap’s fixed leg cash flows, are different from the dates of the swap’s floating
leg cash flows. Effectively the redemption amount of the bond is paid at the (regularised) final date
of the swap’s floating leg.

5.5: Creating a simple discount asset swap with a bond trading below par

This spreadsheet is similar to 5.3 except that the money received from and paid back to the investor
is 90 (rather than 100) and the swap’s leg is adjusted to provide/remove the additional funding at
inception/termination. Of course, the margin on the LIBOR leg increases, because the shortfall
between what the investor pays and the cost of the bond is being financed. The limitation is in this
spreadsheet is that the financing is happening at LIBOR flat even though the investor may not
warrant this. The next spreadsheet gets around this limitation.

5.6: Forward Valuing an Asset Swap

In Ch 2 Short-term swaps.xls we discussed the concept of forward valuing cash flows, where, instead
of discounting, we assumed all cash flows paid have to be borrowed at some rate (possibly a spread
over LIBOR) and all cash flows received have to be invested in the money market account to earn
LIBOR flat. We use this same technique to factor in a cost of credit (for the bond’s issuer) in the
discount asset swap considered in 5.5. We assume the initial shortfall between the cost of the bond
and the amount paid by the investor has to be financed at LIBOR + 50 bps p.a. This has the effect of
reducing the margin paid on the swap’s floating leg by several basis points. The idea here is that if
the bond’s issuer defaults, the investor loses his investment but no more, which means the amount
lent to make up the purchase price of the bond is lost. In effect, this risk is paid for by the 50 bps

Chapter 6 (Credit Derivatives)
Spreadsheets: Ch 6 Credit Derivatives.xls, Ch 6 Credit Adjusted Pricing.xls, Ch 6 Appendix
Modelling a portfolio CDS

Market data

The market data for this workbook are zero coupon rates for maturities out to 30 years and spaced 3
months apart, plus rates for 1 week and 1 month.

This worksheet also presents next Standardised Credit Market roll dates, which occur on 20th of Mar,
Jun, Sep, Dec of each year adjusted (forward) for weekends.

There is also a graph showing gross CDS notional principal outstanding between 2011 and 2008, with
a peak of USD 62.2 trillion in 07H2,
6.2: Creating a simple Par maturity asset swap

This spreadsheet models a par maturity asset swap that exchanges the coupons from a 5-year bond
paid on odd dates for a spread paid over LIBOR on the standardised credit market roll dates. Note,
the initial outlay to purchase the bond is 100, which means if the bond is trading at a discount then
the discount is paid away via the swap’s fixed leg at inception.

6.3: Estimating the Z-spread for a bond

This spreadsheet computes the z-spread for the bond modelled in the previous worksheet. The z-
spread is the constant spread that must be added to the zero coupon rate curve such that resultant
discount factors price the bond correctly to market. The z-spread is lower than the spread
computed in the previous spreadsheet. Note the spread over LIBOR does not need to price the
default risk of the bond’s issuer because the full purchase price has been paid by the investor and he
has undertaken to continue to pay the bond’s coupons whether or not he receives them from the
bond’s issuer.

6.4: Hedging a generic CDS

The spreadsheet is premised on the observation that selling protection via a CDS is equivalent to
buying a “risk free” FRN with matching maturity for 100, generating LIBOR, and selling a risky FRN for
100, assuming the same credit risk as under the CDS, generating LIBOR + spread. The spread, which
can be estimated using the par maturity asset swap considered in the previous worksheets, is called
the Asset Swap (ASW) spread. In this spreadsheet, a small drop in the bond price (due to increased
riskiness) is translated into an equivalent increase in the ASW spread. Because of various factors,
such as cost of funding bonds, delivery option for physical-settled CDS, material change clauses
embedded in bond illiquidity of bonds, the basis between the CDS premium and the ASW spread
averages out at about 10-20bps above zero but of course supply and demand plays a major role.

6.5: Modelling a CDS on a quarterly basis

This spreadsheet prices a 5-year CDS under the simplifying assumption that if default occurs during a
quarter the event payment occurs at the end of the period and if the reference entity survives to the
beginning of the quarter then the premium is received (without risk) at the end of the period. The
spreadsheet takes as its input the strip of quarterly Forward Default Probabilities ( ). The author
states these are unconditional probabilities of default for each quarter, from which probabilities of
default conditioned on survival to start of quarter (default intensities) are derived—nevertheless,
these are used as if they are conditional probabilities of default, i.e., default intensities. ASSUME
THIS AN ERROR

6.6: Modelling a CDS on a monthly basis

This spreadsheet repeats the same calculation as before but now using monthly forward default
probabilities. The solved-for margin is materially unchanged.

6.7: Estimating FDP curve using quarterly time periods
This spreadsheet estimates a strip of quarterly forward default probabilities out to 30 years by first
interpolating quarterly CDS prices using Hermitian interpolation of actual CDS prices in the market
for a small set of yearly / half-yearly maturities (in reality even these are not available). The
quarterly forward default probabilities are solved for analytically, such that the interpolated CDS
prices are reproduced (i.e., such the net present value of the floating and fixed legs are matched for
each swap).

6.8: Hermitian interpolation

This spreadsheets carries out the actual interpolation of CDS prices used above using Hermitian
interpolation (i.e.., fits cubic polynomials in each segment to match terminal values and first order
derivatives calculated using finite differ.9rencing).

6.9: Estimating FDP curve using monthly time periods

This spreadsheet is similar to 6.7, except that it gives monthly forward default probabilities.
However, the forward default probabilities are assumed to be constant within quarters. In theory,
this leads to more accurate approximation to net present values of floating and fixed legs. Note, it’s
no longer possible to compute the forward default probabilities analytically, and instead we have to
resort to optimisation.

6.10: Estimating FDP curve using daily time periods

This spreadsheet is similar to 6.9, except that it gives daily forward default probabilities. In theory,
this leads to even more accurate approximation to net present values of floating and fixed legs.
Note, it’s no longer possible to compute the forward default probabilities analytically, and instead
we have to resort to optimisation.

6.11: Estimating forward default probability curve using optimisation on a quarterly basis

This spreadsheet returns to computing quarterly forward default probabilities but using optimisation
instead of doing so analytically. The optimisation attempts to match the CDS prices observed in the
market, so no Hermitian interpolation of CDS prices is carried out, and additionally it seeks to to
maximise the smoothness (actually minimise the sum of the squared changes) of the forward default
probability curve.
Estimating FDP curves using GM data
6%

5%

4%

3%

2%                                             Optimisation

Bootstrapping, using qu hermitian interpolation
1%

0%
0    20   40   60   80 100 120 140 160 180 200 220 240 260 280 300 320 340 360

6.12: Estimating forward default probability curve using optimisation on a monthly basis

This spreadsheet is very similar to 6.11, except that it leads to monthly forward default probabilities.
Again, the optimisation attempts to match CDS prices observed in the market (no interpolation) and
a smoothness criterion is imposed. The assumption of constant forward default probabilities within
each quarter is dropped.

6.13: Estimating forward default probability curve by fitting a Nelson-Siegel curve

This spreadsheet estimates quarterly forward default probabilities to match quarterly CDS prices
derived using Hermitian interpolation. The forward default probabilities are constraint to fit a
Nelson-Siegel curve of the form: b0 + b1 * exp{-t/tau} + b2 * (t/tau) * exp{-t/tau}. The four
parameters b0, b1, b2, and tau are calibrated through optimisation with minimisation of sum of
square errors in (interpolated) CDS prices as objective.

6.14: Modelling a 3 year knock-out forward starting CDS

This is a straightforward forward-starting CDS. The survival probabilities using to net present value
the fixed leg and the probabilities of default in the various periods take account of the possibility of
default before either leg commences.

6.15: Modelling a 3 year no-knock-out forward starting CDS

In contrast to the previous model, this one makes the floating leg more valuable (therefore
commensurately a lower spread is required to be paid on this leg) by making the payment of the first
premium contingent only on survival during the preceding period, i.e., survival probability to start of
first accrual period is reset to 100%.

6.16: Pricing a Floating Credit default swap

This spreadsheet prices a floating CDS, which means the premium is not fixed over the lifetime but is
refixed at the beginning of each period. Effectively this means that in each accrual period the
premium compensates for the default risk in just that period. The PVlet of the fixed and floating legs
are equal for each accrual period.

6.17: Constant Maturity Credit default swap pricing with no convexity adjustment, 6.18: Estimated
volatilities and correlations for convexity adjustment, 6.19: Constant Maturity Credit default swap

[These spreadsheets tackle the pricing of a constant maturity CDS where, like a floating CDS, the
premium resets each period but in this case is linked to a longer term CDS rate, just like a yield curve
swap]

6.20: Valuing an old CDS

This spreadsheet demonstrates the pricing of a CDS with an off-market premium. This presents no
issues and is a straightforward application of techniques already covered.

6.21: Market data for Credit Adjusted pricing

Strip of discount factors 3 months apart out to 10-years, whence strip of 3-month forward rates is
derived. Strip of 3-month forward log-normal volatilities out to 10 years. Calculated is strip of
PV01s, each with periodicity 1 year, out to 30 years, whence spot swap rates are derived. Strip of 1-
year forward rates also derived; corresponding strip of 1-year forward volatilities derived via
arithmetic averaging.

6.22: Modelling the Forward IR envelope

For a sequence of forward simulation times, this spreadsheet calculates 95% confidence intervals for
the remaining 1-year forward rates, knitting them together to give simplistic “95% confidence”
envelopes for the strips of remaining 1-year forward rates.
Forward curve with 95% envelopes
12%
1 yr forward
10%                 5yrs forward
12yrs forward
8%

6%

4%

2%

0%
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

These evolved forward rates are used to derive evolved discount factors, PV01s, and swap rates at
each simulation time—whence we evolve the net present values of swaps struck at inception with
unchanging fixed rates.

6.23: Worksheet to summarise modelling swap exposure and to plot Potential Future Exposure

This spreadsheet collects together the results for 5- and 12-year swaps and plots them.

95% exposure envelopes

25%
12 year
20%
5 year
% 15%
of
NPA 10%

5%

0%
0           2              4            6             8            10                12
maturity

6.24: Estimation of PELs for IRS and CCS

6.25: IRS PEL
6.26: CCS PEL

These spreadsheets contain extracts and plots of a Bank of England report estimating the PELs (peak
exposure limits) for an IRS and CCS under a range of maturities and probability envelopes.

6.27: Worksheet to calculate the credit adjustment on the pricing of an IRS

This worksheet calculates the credit adjustment for an IRS under a range of maturities using the
formula

This charge is calculated on the basis that it should be sufficient to cover a 95% loss with no recover
and ignores any possibility that the swap might have a current market-to-market loss. The survival
probabilities, etc. are derived from extracted from Moody's Corporate Bond Default report, Jan 1995
Table 8.

6.28: Accumulative default probs

This chart plots the default probabilities extracted from Moody’s Corporate Bond Default report, Jan
1995 Table 8.

6.29: Graph of CA pricing

It follows that the number of basis points that should be collected periodically until the time of
default of the counterparty is

These are plotted in this chart for an IRS under a range of counterparty ratings and swap maturities.

6.30: Market data for Appendix to Chapter 6

A strip of discount factors out to 30 years, spaced one quarter of a year apart, is given.

Base correlation matrix between sectors

The following base correlations between sectors are given

Sectors      Financial     Chemical      Mining         Oil    Transport
1           2          3           4            5
Financial         100%           30%        20%         30%          40%
Chemical           30%         100%         40%         60%          30%
Mining           20%          40%       100%          50%          40%
Oil          30%          60%         50%        100%          80%
Transport          40%          30%         40%         80%         100%
From this a shifted correlation matrix between sectors is derived using the formula

Additionally, the following recovery rates data are given

Recovery rates
(% of Face Value)
Mean     St dev
Senior secured          53.80%    26.86%
Senior unsecured          51.13%    25.45%
Senior subordinated         38.52%    23.81%
Subordinated          32.74%    20.18%
Junior subordinated         17.09%    10.90%

6.32: Accumulative default probabilities (from S & P)

The following rate-specific term structures of default probabilities are given

0               3             6         9          12 ...
AAA         0.00%          0.00%         0.00%     0.00%       0.00%
AA        0.00%          0.00%         0.00%     0.01%       0.02%
A        0.00%          0.00%         0.00%     0.01%       0.02%
BBB         0.00%          0.02%         0.05%     0.09%       0.13%
BB        0.00%          0.24%         0.51%     0.80%       1.12%
B        0.00%          1.02%         2.12%     3.27%       4.46%
CCC         0.00%          6.48%        12.26%    17.42%      22.03%
Time            0            0.25           0.5      0.75           1 ...

stretching out to five years. These are derived from S&P data.

6.33: Original Portfolio - with full details

A portfolio of 100 (reference) assets is presented. Each asset is assigned a sector, rating, seniority,
principal, and maturity—whence PD to maturity and LGD are assigned based on the lookup tables
given earlier. A base correlation with sector parameter is assigned to each asset, presumably based
on an (unseen) factor model for asset value return. These parameters can be shifted using the
formula presented earlier.

6.34: Constructed Asset correlation matrix from sectoral factors

This spreadsheet computes the asset correlations between in the individual assets in the pool using
their correlations with the sector indices and the correlations between sector indices. If

where is the sector index of the -th asset then the correlation between          and     is given by
This matrix      is decomposed into                                               5.

6.35: This worksheet runs a single scenario to calculate the PV of payments to be made under the
CDS

Step 1: generate 100 variates from independent uniform distributions

Step 2: transform using inverse standard normal distribution function6; we now have 100 variates
from independent standard normal distributions, which we assemble into vector

Step 3: Calculate vector          ; we now have 100 variates from correlated standard normal
distributions

Step 4: transform using standard normal distribution function; we now have 100 variates from
correlated uniform distributions, which we assemble into vector

Step 5: If         then asset has defaulted; term structure of PDs for asset’s rating until maturity
can be used to determine timing of default7.

Step 6: Calculate net present value of payments from defaulted assets from principal, LGD, and
appropriate discount factor

6.36: This worksheet runs a single antithetic scenario to calculate the PV of payments to be made
under the CDS

This worksheet is identical to previous spreadsheets, except that samples in Step 1 are generated as
antithetic8 variates.

6.37: This worksheet will run a range of scenarios (currently 500 normal and 500 antithetic), build a
Loss Distribution and fit a Weibull distribution

Using the TABLE function, which I don’t understand, this worksheet reruns the two earlier ones to
come up with 1,000 scenarios (including ones based on antithetic variates) for the net present values
of payments from default assets. From these data, a frequency distribution sliced into 10 buckets
(this is a parameter) is derived and then conditioned on the event of one or more defaults by

5
The Cholesky decomposition or Cholesky triangle is a decomposition of a Hermitian, positive-definite matrix
into the product of a lower triangular matrix and its conjugate transpose. When it is applicable, the Cholesky
decomposition is roughly twice as efficient as the LU decomposition for solving systems of linear equations. In
a loose, metaphorical sense, this can be thought of as the matrix analogue of taking the square root of a
number.
6
The spreadsheet also offers the possibility of mapping using t-distribution function, with number of degrees
of freedom as free parameter.
7
The spreadsheet appears to have a bug whereby it uses term structures for A or BBB or else defaults to BB.
8
The antithetic variates method is a variance reduction technique used in Monte Carlo methods and is based
on the observation that if N is a standard normal variable then so is N (see
http://en.wikipedia.org/wiki/Antithetic_variates for mathematical explanation). This method has two
advantages. First, it enables the number of simulations to be doubled without simulating more random
numbers. Second, it reduces the variance of estimators derived from the simulation. Another good feature of
this method is that all odd moments of the simulation are correct.
dividing through by the probability of this event. A parametric distribution (Weibull) is fit to the
resultant empirical distribution.

Loss distribution
55%
50%
45%
40%
35%
30%
25%
20%
15%
10%
5%
0%
0.0%     0.7%      2.0%     3.4%      4.7%     6.1%     7.4%      8.8%     10.1%    11.5%

The spreadsheet makes no attempt to price tranches on the pool of assets but this would be only a

Chapter 7 (More Complex Swaps)
Spreadsheets: Ch 7 Mismatch Swaps.xls, Measuring the convexity effect in an IRS using BGM.xls,
Appendix Convexity structures.xls

7.1: Market data

A strip of zero coupon rates for 1-week, 1-month, 3-month, 6-month, etc. is given, from which
discount factors are derived. The 1-week and 1-month rates are not used.

7.2: Pricing an in-arrears swap

which means payment at end of accrual period is based on fixing at beginning of accrual period, in
exchange for paying 3-month LIBOR in arrears, which means payment at end of accrual period is
based on fixing at end of accrual period. It is noted that the “fair spread” over LIBOR on the pay leg
is 7.52 basis points, which is similar to 7.83 spread between the first and last LIBOR fixing.

7.3: Creating a customised average-rate swap

This spreadsheet demonstrates and “prices” a typical application of an average rate swap. A client is
holding a portfolio of floating rate bonds each paying 3-month LIBOR (in advance) but resetting on
different dates. She enters into an average-rate swap that receives the weighted average of the
forward rates of five floating rate bonds and pays a fixed rate, both rates accrued on the total
notional of the bonds.

7.4: Creating a compound swap
This spreadsheet demonstrates and “prices” a typical application of a compound swap. A client
wishes to swap 3-month LIBOR paid quarterly for a fixed rate paid annually but is concerned about
the credit risk on the fixed leg. Instead she reinvests the floating payments as they are paid at the
new 3-month LIBOR for the next period. Eventually a single cash payment is made at the end of the
year, matching the frequency of the fixed side and thereby reducing the credit exposure
substantially.

7.5: Pricing a Constant Maturity Swap - using sa. Reference Rate

This spreadsheet “prices” a 4-year swap that semi-annually exchanges 6-month LIBOR for 5-year
CMS less a spread. The payment frequency on both legs is semi-annual. The payment frequency of
the fixed leg of the (reference) 5-year CMS is also semi-annual. The CMS rates are computed from
the initial term structure of discount factors (by computing forward swap rates) with no convexity

7.6: Pricing a Constant Maturity Swap - using qu. Reference Rate paying sa

This spreadsheet “prices” a 4-year swap that exchanges 6-month LIBOR for 5-year CMS less a spread.
The payment frequency on both legs is semi-annual. In contrast to the previous spreadsheet,
however, the payment frequency of the fixed leg of the (reference) 5-year CMS is quarterly. The
CMS rates are computed from the initial term structure of discount factors (by computing forward
swap rates) with no convexity adjustments.

7.7: Pricing a Constant Maturity Swap - using sa. Reference Rate paying qu

This spreadsheet “prices” a 4-year swap that exchanges 6-month LIBOR for 5-year CMS less a spread.
In contrast to the previous two spreadsheets, the payment frequency on both legs is quarterly.
Similar to spreadsheet 7.5, however, the payment frequency of the fixed leg of the (reference) 5-
year CMS is semi-annual. The CMS rates are computed from the initial term structure of discount
factors (by computing forward swap rates) with no convexity adjustments.

7.8: Pricing a Participation Constant Maturity Swap - using sa. Reference Rate

Similar to spreadsheet 7.5, this worksheet “prices” a 4-year swap that exchanges 6-month LIBOR for
5-year CMS. Instead of subtracting a spread from the CMS leg, however, a participation rate is
compute to set the fair value of the swap to zero at inception. The participation is a scalar applied to
the reference rate of the CMS leg, e.g., 78%.

7.9: Estimating the convexity effect of a Generic IRS using forward rates

This spreadsheet examines the convexity, defined as the sum of the P/L for +/- 100bp parallel shifts
of the forward curve, for par receiver swaps of varying maturities. The convexity effect, expressed in
basis points of swap notional normalised by swap maturity, is seen to increases with the maturity of
the swap.
0.14

0.12

0.10

0.08

0.06

0.04

0.02

0.00
0        5        10         15         20          25     30        35

7.10: Pricing a Constant Maturity Swap: how does it change in Value for a shift in the Forward Curve

This worksheet conducts an analysis similar to spreadsheet 7.9, except that it examines changes in
the value of a CMS swap for parallel shifts of the forward curve of varying sizes. The convexity
effect, expressed in basis points of swap notional, for a 4-year swap that pays 5-year CMS and
receives 6-month LIBOR is seen to increases with the size of the parallel shift.

0.70

0.60

0.50

0.40

0.30

0.20

0.10

0.00
0        100           200        300         400        500       600

7.11 Market data: extracted from Market Data worksheet for Chapter 7 Appendix

The market data for this workbook are discount factors and zero coupon rates for maturities out to
30 years and spaced 3 months apart—from which the gradient of the zero coupon rate curve at
various points are derived.

7.12 Pricing an in-arrears swap with CX adjustments

This worksheet is similar to spreadsheet 7.2 in that it prices a contract that receives 3-month LIBOR
in advance and pays 3-month LIBOR in arrears, except that it includes a convexity adjustment. After
taking account of the convexity adjustment, the margin is increased from 7.52bp to just over 8bp.
The formula for the convexity-adjusted in-arrears rate paid at time is

where is implemented exactly as in the appendix separately for the cases of constant
instantaneous volatility (   ) and reverting instantaneous volatility (                       ).

7.13 Pricing an in-arrears swap via Simulation to assess CX

This worksheet is similar to spreadsheet 7.2 in that it prices a contract that receives 3-month LIBOR
computed in spreadsheet 7.12 to the pay (normal LIBOR) leg. It runs a simulation for the implied
forward rates using a log-normal model for forward bond prices. For each scenario, it computes the
additional margin (incremental to the theoretical convexity adjustment) needed to value the swap at
par. The average additional margin across 500 scenarios is 0.54bp; the range is -35.86bp to 30.09bp.
[I’m not sure of the point of this worksheet]

7.14 Creating a customised average-rate swap with CX adjustment

This worksheet is similar to spreadsheet 7.3 in that it prices a contract that receives the weighted
average of the forward rates of five floating rate bonds and pays a fixed rate, both rates accrued on
the total notional of the bonds, except that this version includes a convexity adjustment. After
taking account of the convexity adjustment, the margin is increased from 7.52bp to just over 8bp.
The formula for the convexity-adjusted floating rates paid at time is

where is implemented exactly as in the appendix for the case of constant instantaneous volatility.
Here is the fixing date of the rate, is its tenor, and is the time when the fixing is paid. A
volatility of 1% lowers the fixed rate paid by just under 0.2bp. A volatility of 5% lowers the fixed rate
paid by just 4.5bp. And a volatility of 10% lowers the fixed rate paid by just under 18bp.

7.15 Turbo Swaps - pricing a 4 year qu/qu swap with CX adjustment

This worksheet demonstrates the pricing of a turbo leg of a four-year, quarterly swap. The price of
the leg of the four-year swap is 4.107 without convexity adjustment. It increases to 4.1819 with
convexity adjustment based on constant instantaneous volatility of 1%. And it increases further to
6.2164 with convexity adjustment based on constant instantaneous volatility of 5%. These results
are based on a power of turbo of 1.2. If instead the power of turbo is 2.0, the equivalent results are
10.7665, 12.6586, and 58.0805! Evidently the convexity effects for a turbo swap can be significant.

7.16 Pricing a Constant Maturity Swap with Convexity Adjustment

This worksheet is similar to spreadsheet 7.5 in that it prices a 4-year swap that semi-annually
exchanges 6-month LIBOR for 5-year CMS less a spread, except this version includes a convexity
adjustment. (Note, since the swap pays semi-annually, the CMS rate must be divided by two when
used as a par yield in convexity adjustment.) The fair spread to subtract from the CMS leg is 91.08bp
without convexity adjustment. The fair spread to subtract from the CMS leg is 91.31bp with
convexity adjustment based on constant instantaneous volatility of 5%.

7.17 Pricing a Constant Maturity Swap with CX Adjustment - using Hagan's model

[Convexity adjustment using Hagan’s model (not studied)]

7.18 Pricing a Constant Maturity Swap with Convexity Adjustment and Timing Adjustment

This worksheet is similar to spreadsheet 7.16 in that it prices a 4-year swap that semi-annually
exchanges 6-month LIBOR for 5-year CMS less a spread, except this version includes an additional
timing adjustment. The fair spread to subtract from the CMS leg is 91.31bp without timing
on constant instantaneous swaption and caplet volatilities of 5% and instantaneous correlation of

7.19 Measuring the convexity effect of a Constant Maturity Swap under parallel shifts

[Not studied]

7.20 Measuring the scale of the convexity effect of a Constant Maturity Swap by simulation

[Not studied]

7.21 – 7.26

[These worksheets measure the convexity effect in an IRS using BGM]

Appendix

A broad class of exotic interest rate derivatives, including in-arrears, average-rate, compound, and
constant-maturity swaps, can be valued simply by adjusting the forward interest rate. This is known
as a convexity adjustment. The author discusses two approaches. The first is based on evaluating the
expectation of the payoff with respect to the forward measure approximately using a Taylor
expansion of the price of a bond in terms of its yield, assumed to be log-normally distributed. The
second is based on evaluating the expectation of the payoff with respect to the risk-neutral
probability measure exactly using a simple HJM model, assuming either constant or reverting
instantaneous volatility.

See Convexity Adjustment.pdf for theoretical discussion

Chapter 8 (Cross-market and Other Market Swaps)
Spreadsheets: Ch 8 Cross-market and other market swaps v2.xls, Ch8 Inflation swap models v3.xls,
Ch8 Inflation – Seasonality adjustments.xls, Ch8 LPI Inflation swap.xls, Ch8 Building an inflation
curve by optimisation.xls

8.1: Market data
A strip of USD zero coupon rates for 1-week, 1-month, 3-month, 6-month, etc. is given, from which
discount factors and 3-month forwards are derived. A strip of JPY zero coupon rates for the same
maturity tenors, from which JPY rates for the same maturity dates as USD cash rates are derived
using linear interpolation. The spot USD/JPY exchange rate is given. A strip of 1-month forward
rates for USD, presumably obtained by fitting a smooth curve through the other rates for USD.

8.2 Modelling an EONIA swap

This spreadsheet calculates the (realised) cash flows from a 1-month EONIA9 swap that pays the
accrued interest on a notional amount invested at the overnight rate and receives a fixed rate on the
same notional amount. The swap leg that pays the overnight rate compounds the interest, making
its actual payment only at the end of the month-long period. An EONIA swap is an example of an
overnight index swap (OIS). In the example presented, both the 1-month and overnight rates
accrued on ACT/360 basis.

8.3 Some Basis swap quotes

This spreadsheet gives quotes for Fed Funds, Prime, Commercial Paper, and T-Bill swaps of various
maturities. All these quotes are added to the non-LIBOR reference rate. For example, a bank would
enter into a 10-year swap to pay (resp. receive) 3-month LIBOR and receive CP + 30bp (resp. pay CP
+ 15bp).

8.4 Modelling CP-LIBOR swaps

When a CP swap is first entered into, obviously the CP fixings are unknown and need to be implied
off a forward curve. This spreadsheet constructs the forward curve from the basis swap curve, using
the current LIBOR forward curve and LIBOR discount factors on each side. If we put the principals in
on both sides, the LIBOR leg will have a zero value and so we can write

Given we know the quoted margins       we can therefore estimate the implied forward rates    .
The spreadsheet actually derives spreads over the LIBOR forward curve such that the basis swaps are
priced to market and the resultant CP curve meets a smoothness criterion.

9
Euro Overnight Index Average
1-month CP-Libor curves

6.0%

5.5%

5.0%

4.5%

4.0%

3.5%                                                           CP forwards

3.0%                                                           Libor forwards

2.5%

2.0%
0      12      24       36        48      60       72        84          96   108    120

8.5 Modelling Muni-LIBOR swaps

Other forward reference curves can be constructed in a very similar fashion to the method described
above for CP-LIBOR swaps, with one major exception: muni-LIBOR swaps are quoted very differently.
The basic structure is to receive 13-week arithmetic average of a muni index and to receive   times
3-month LIBOR, where        is a constant depending on maturity. Using the same approach as
spreadsheet 8.4, we can work out the forward curve for 13-week average muni rates. If we make
the additional assumption that the 13-month average muni rates are        times the corresponding
13-week average LIBOR rates, we can solve for these multiplicative factors as follows:

Finally, the spreadsheet assumes that the 3-month muni rates are       times the corresponding 3-
month LIBOR rates. A smoothness criterion is applied to the multiplicative factors in the
optimisation.
3-month Muni - Libor swap
6.0%

5.0%

4.0%

3.0%                                                      Muni forwards

2.0%                                                      Libor forwards

1.0%

0.0%
0             20            40             60             80            100           120

8.6: Example of Fixed Notional Equity Swap - without randomness

This spreadsheet demonstrates the cash flows from a 2-year swap that pays the performance of the
S&P Index plus 10bp and receives USD LIBOR on a quarterly basis. The spreadsheet also
demonstrates how the swap may be hedged by borrowing the principal notional amount and
purchasing a represent portfolio of S&P Index constituents. In theory, as with most basis swaps, a
LIBOR-equity swap should be priced very close to flat. The existence of the margin reflects supply
and demand, the bank’s efficiency in replicating the index, the bank’s ability to fund in the interbank
market, various costs of running the portfolio, and, of course, the required return on capital
required.

8.7: Example of Fixed Notional Equity Swap - with randomness

This spreadsheet is almost identical to the worksheet 8.6 except that the “observed” performance of
the S&P Index and the LIBOR fixings are simulated. The purpose of this is to show that the hedging

8.8: Example of Variable Notional Equity Swap - without randomness

This spreadsheet is also almost identical to worksheet 8.6 except that the notional principal amount
also accretes with the performance of the S&P Index. This structure is more common because it
avoids the need to liquidate potentially small amounts of the constituents of the index.

8.9: Example of Variable Notional Equity Swap - with randomness

This is the analogue of worksheet 8.7 for the variable notional equity swap.

8.10 – 8.13 Cross-currency fixed- and variable-notional equity-LIBOR swaps

[Demonstrating cash flows and hedging]
8.14 Gilt data

This worksheet presents a strip of normal bonds with redemption dates out to 50 years.

This worksheet presents a strip of linker bonds with redemption dates out to 50 years. Some of the
bonds are based on RPI set to 100 in Jan 1987 and some are based on RPI set to 100 in Jan 1974.
Some of the bonds use 3-month inflation lag as the reference. Some of the bonds use 8-month
inflation lag as the reference.

8.16 Input Data

This worksheet selects a subset of the normal bonds and all the linker bonds. It also presents the
bond yields for bonds sets of instruments, and the quoted dirty prices for the linker bonds.

8.17 Input RPI Index

This worksheet presents the historical values of the RPI indices rebased to 100 in Jan 74 and Jan 84
respectively. The former is shown between Jan 99 and Sep 02. The latter is shown between Jan 99
and Jan 08. The (common) publication dates are also given.

8.18: Worksheet to calculate the dirty price of the non-linked gilts from the yield

This worksheet uses the formula for the sum of a geometric progression to calculate the price of
each normal bond discounted to the next coupon date using the bond’s yield. The bond is then
discounted back to the settlement date using the formula

where    is the time to the next coupon.

8.19: Building a gilt discount curve using a parametric Nelson-Siegel curve

This worksheet estimates a parametric Nelson-Siegel curve to discount factors by minimising the
RMSE error between normal bond prices quoted in the market and those derived using zero coupon
rates derived from the discount factor curve. The discount factor curve is built at a regularly spaced
sequence of dates. Zero coupon rates at the cash flow dates of the various bonds are derived using
linear interpolation.

8.20: Worksheet for modelling all the non-index-linked gilt cashflows for N-S modelling

This worksheet lays out all the cash flows paid by the various bonds and discounts these cash flows
using interpolated zero rates derived from the Nelson-Siegel discount factor curve.

8.21: Building a gilt discount curve by bootstrapping

This worksheet bootstraps a curve for zero coupon rates by minimising the RMSE error between
normal bond prices quoted in the market and those derived using zero coupon rates derived from
the discount factor curve. The zero coupon rate curve is built at an irregularly spaced sequence of
dates located at the redemption dates of the bonds. The zero coupon rates at the cash flow dates of
the various bonds are derived using linear interpolation.

8.22: Worksheet for modelling all the non-index-linked gilt cashflows for bootstrapping

This worksheet lays out all the cash flows paid by the various bonds and discounts these cash flows
using interpolated zero rates derived from the bootstrapped zero coupon rate curve.

8.23: Worksheet displaying constructed zero-coupon curves from non-index-linked gilts

This worksheet compares the zero coupon rates derived from the Nelson-Siegel curve (smooth) and
the bootstrapped curve (jagged).

Gilt zero-coupon curve
6.00%

5.00%

4.00%

3.00%

2.00%

1.00%

0.00%
0.0             10.0                20.0               30.0               40.0               50.0

8.24: Building a Forward Inflation Curve using Nelson-Siegel curves

This worksheet fits a parametric Nelson-Siegel curve to year-on-year inflation (annual RPI growth) by
minimising the RMSE error between linker bond prices quoted in the market and those derived using
zero coupon rates derived from the discount factor curve. The inflation curve is built at a regularly
spaced sequence of dates (first business day of each month—not date of publication—but this date
is only used to fit the parametric curve10). The index levels at the cash flow dates of the various
bonds are derived using linear interpolation (after the end of the historic time series, index levels are
derived by applying the annual RPI growth rates to previous values of the index). The 3- or 8-month
lag is taken into account when selecting the reference index level used to inflate cash flows. The
zero coupon rates used to discount real cash flows are derived from the bootstrapped curved in
8.21.

10
However, if the lag is not 8 months, there is an adjustment to extrapolate the index level to the actual date
of the cash flow. Why is this not done if the lag is 8 months? Arguably a more straightforward way of
proceeding would have been to build the inflation curve at the sequence of historic and future publication
dates, and use interpolation to compute reference index levels at lagged dates needed to inflate cash flows.
8.25: Worksheet for modelling all the index-linked gilt cashflows for use in a N - S model

This worksheet lays out all the (inflated) cash flows paid by the various bonds and discounts these
cash flows using interpolated (nominal) zero rates derived from the bootstrapped zero coupon rate
curve.

8.26: Building a Forward Inflation Curve by bootstrapping

This worksheet bootstraps a curve for zero year-on-year inflation (annual RPI growth) by minimising
the RMSE error between linker bond prices quoted in the market and those derived using zero
coupon rates derived from the discount factor curve. The zero coupon rate curve is built at an
irregularly spaced sequence of dates located at the redemption dates of the bonds plus 3- or 8-
month lags. The index levels at the cash flow dates of the various bonds are derived using linear
interpolation.

8.27: Worksheet for modelling all the index-linked gilt cashflows for use in a bootstrapping model

This worksheet lays out all the (inflated) cash flows paid by the various bonds and discounts these
cash flows using interpolated (nominal) zero rates derived from the bootstrapped zero coupon rate
curve. The spreadsheet is identical to 8.25 except that the index levels are obtained from the
bootstrapped curve for year-on-year inflation.

8.31-8.32: Building an inflation curve by optimisation

This (separate) workbook uses the same data on linker bond prices and historic RPI index levels
presented in 8.15 and 8.17. Additionally, it takes the zero coupon rates bootstrapped in 8.21. The
idea underpinning the workbook is similar to that presented in “Building a blended curve using
optimisation” above. The free parameters are a sequence of (regularly spaced) non-overlapping
year-on-year inflation (annual RPI growth) rates. These free parameters are chosen to minimise a
smoothing constraint while exactly pricing the linker bonds to the supplied market quotes. This
approach combines the arbitrage-free outcome of bootstrapping with the smoothness of the
Nelson-Siegel curve.
Annual RPI Growth
Data from 4 February 2008
5.0%
4.5%
4.0%
3.5%
3.0%
2.5%
2.0%
Optimisation
1.5%
Bootstrapped
1.0%
0.5%                                                                           Nelson-Siegel

0.0%
Jan-00                 Sep-13                 May-27                  Jan-41                  Oct-54

8.33: Mid zero-coupon inflation swap curve - taken from market quotes

This worksheet derives future RPI index levels from zero-coupon inflation swap quotes. A zero-
coupon inflation swap exchanges a fixed cash flow                                for a floating one

where     is a contract fixed rate,     is a number of years,       is a notional amount,         is a level of
the RPI index, and is a lag. Setting aside the issue of the lag, the value of the floating leg of the
swap is given by

By foreign-currency analogy11, the nominal price of a real zero-coupon bond equals the nominal
price of the contract paying one unit of the inflation index at bond maturity:

This yields the model-independent price

Equating the values of the fixed and floating legs of the zero-coupon inflation swap, we obtain

11
In this approach, real interest rate, defined as the difference between nominal interest rate and inflation
rate, is treated as the interest rate of a foreign currency, while the inflation index is treated as the exchange
rate FOR/DOM between domestic and foreign currencies.
That is,

In the spreadsheet, the last historic level of the inflation index is published two months earlier than
the spot/settlement date of the swap and so            months. Zero-coupon inflation swap quotes, ,
are interpolated for a sequence of monthly future dates, , from which future levels of the RPI
index are deduced using the formula

The resulting inflation curves from the zero swap and the cash linker markets show good agreement
for the first 30 years.

Forward inflation index curves
1,200                                  4 February 2008

1,000

800

600

400                                                                       Zero curve

200

0
Jan-99                Sep-12                May-26            Jan-40                  Oct-53

8.34: Example of Pricing a Payer's YoY Inflation swap with no Convexity adjustment12

A year-on-year inflation swap exchanges a series of fixed cash flows             for floating ones
at the end of each accrual period          where     is a contract fixed rate,
is a notional amount,          is a day count fraction,      is a level of the RPI index, and is a lag.
Usually the accrual periods are whole years, corresponding to annual growth rates, in which case the
day count fraction is set to 1. Setting aside the issue of the lag, the value of the -th payment of the
inflation leg of the swap is given by

which, assuming            , can be calculated as

12
See Chapters 15-16 of Interest Rate Models by Brigo & Mercurio
The inner expectation is the zero-coupon inflation swap rate from       to . Compared to a zero-
coupon inflation swap, the valuation of a year-on-year inflation swap is more complicated: there is a
convexity effect arising from the joint behaviour of                  and

, which removes the possibility of model-independent
pricing.

This worksheet “prices” a year-on-year inflation swap without any convexity adjustment by deriving
implied growth rates for the accrual periods from the forecast levels of the RPI index.

8.35: Inflation volatilities, 8.36: Pricing a YoY swap with cx

[Example of pricing a payer's YoY inflation swap with convexity adjustment]

8.37: Fixed-floating swap

[Another structure for which there is a convexity effect but which is ignored in simple breakeven
“pricing”]

8.38: Libor, 8.39: Forward inflation curve, 8.40: LPI Swap

[Another structure, involving Limited Price Index (LPI) which reflects year-on-year inflation growth
but with annual cap and/or floor, for which there is a convexity effect. This separate workbook
simulates the cash flows exchanged by an LPI swap]

8.41: Pricing an Inflation-fixed vs. Libor swap

Structure that exchanges a fixed coupon inflated by                     for LIBOR flat, therefore no

8.42: Inflation hedging

[Hedging a portfolio of inflation swaps, including year-on-year inflation swap, with zero-coupon
inflation swaps]

8.43: Worksheet to estimate non-parametric monthly adjustments for seasonality from historic data

This worksheet estimates the seasonality adjustment required for the inflation index based on 5
years of historical differences between annualised inflation growth between consecutive months
(e.g., Jan 2005 to Feb 2005) and the growth from one year to the next (e.g., 2005 to 2006). These
annualised differences, one for each pair of consecutive months, are converted into raw monthly
multiplicative adjustments and then normalised so that their product is unity. The normalised
monthly multiplicative adjustments are used to remove the seasonal variation from historical levels
of the RPI index.
Annualised growth rate
10%
8%
6%
4%
2%
0%
-2%
Monthly growth annualised
-4%
-6%              Annual growth

-8%
M     A     N     Feb-04 ay-04 ug-04 ov-04
Mar-03 ay-03 ug-03 ov-03    M     A     N          M     A     N     Feb-06
Feb-05 ay-05 ug-05 ov-05

8.44: Model to fit a seasonally adjusted polynomial to RPI

index. The coefficients of the polynomial as well as the additive monthly adjustments are chosen by
least squares. The additive monthly adjustments are constrained to sum to unity.

Fitting a seasonal polynomial
200

190

180

170

Actual
160
Fitted

150

140
0                2                 4                 6              8                10

8.45: Model to fit a seasonally adjusted polynomial to ln(RPI)
This spreadsheet is the same as 8.44 except that the model is fit to ln(RPI). Effectively this gives

8.46: Calculates mid zero-coupon inflation swap curve and applies seasonality adjustment

This worksheet backs out the future RPI index levels from zero-coupon inflation swap quotes, just as
in 8.33 but with market quotes for different spot/settlement date. It then applies the normalised
monthly multiplicative adjustments derived in 8.43 to remove the seasonal variation from
historical/future levels.

218.00
216.00
214.00
212.00
210.00
208.00
206.00
204.00                                                            No seasonality
200.00
198.00
196.00
Jan-07 Apr-07        Jul-07    Oct-07    Jan-08 Apr-08       Jul-08     Oct-08   Jan-09

8.46: Worksheet to demonstrate variance hedging

See appendix for theoretical discussion

This worksheet plots the sensitivity of a call option with respect to the variance13 for a range of
current stock prices .

13
The sensitivity of a call option with respect to the volatility is given by
Variance sensitivity

120

100

80

60

40

20

0
50           100             150            200           250
Current spot level

8.47: Worksheet to demonstrate variance hedging

[This worksheet contemplates an alternative scheme for weighting the prices of call and put options]

8.48: Worksheet to demonstrate variance hedging

This spreadsheet demonstrates how to price a 1-year variance swap when 1-year call and put
options are available for a sequence of regularly spaced strikes only.

The worksheet calculates the prices of calls and puts for a sequence of strikes separated by 5 price
units that is approximately centred on the forward price. Although the spreadsheet contemplates a
different weighting scheme, a fairly good approximation can be obtained by weighting each option
price by         and summing across calls and puts. The options are priced assuming a flat vol of
20%. (Note, the time value of money is implicitly ignored.)

8.49: Worksheet to demonstrate variance hedging

This worksheet proposes a quadratic form for the volatility smile centred on an ATM forward vol of
20%.

8.50: Worksheet to demonstrate variance hedging

This worksheet re-prices the 1-year variance swap modelled in 8.48 except using the volatility smile
proposed in 8.49.
Appendix

The payoff of a volatility swap is given by

where       is the notional of the swap in dollars per point of volatility. A volatility swap is very close
to being a pure play on volatility, and can be used to hedge other volatility exposures such as would
arise from holding a portfolio of options. A variance swap, which is closely related to a volatility
swap, has a payoff at expiry of

It is market practice to determine the number of contract units as follows:

This makes the payoff of a variance swap comparable to that of a volatility swap. Variance swaps
have fewer direct applications but are easier to price and hedge.

Consider a variance swap that starts at           and ends at     , covering    distinct
observations. Define the simply return                          and the annualised variance

Suppose we stand at               . We can write

where            . Since     is known we can write the mark-to-market of the swap as

where          is the annual fixed variance of a new swap that starts at      and ends at         and
is the discount factor at time to time . Clearly the swap’s vega approaches zero as             .
Unfortunately, none of these results applies to volatility swaps. As usual the fair price of the swap
when it first starts has a (risk-neutral) expectation of zero such that

Variance swaps only make sense in a world in which          is a random variable, either because it is
directly driven by its own diffusion term or because it is indirectly driven by the diffusion term of the
underlying stock price.

The payoff of a variance swap can be expressed in terms of the payoffs of puts and calls. We
first assume that the underlying stock price is described as follows:
This implies that

which may be verified by applying Ito’s Lemma to the LHS and using the diffusion for the stock price.
Putting these two pieces together we get

That is,

Hence the fair fixed strike on the swap is given by

Under the risk-neutral measure, the drift term in     is    so the first term in the curly braces
evaluates to . Any twice differentiable (European) option payoff can be re-written as14

Applying this relation to                      such that               and               and then
choosing               yields

Taking expectations with respect to the risk-neutral measure and changing the order of integration
gives

where               is a forward price and     and        are prices of plain-vanilla calls and puts.
This implies a variance swap may be priced—hence hedged—using a portfolio of European call and
put options with weights inversely proportional to the square of the strike. Any volatility smile

14
See Appendix 1 of http://www.math.nyu.edu/research/carrp/papers/pdf/twrdsfig.pdf
model that prices vanilla options can therefore be used to price the variance swap. Care must be
taken with the behaviour of the smile model in the wings as this can have a disproportionate effect
on the price.

Chapter 9 (Cross-currency Swaps)

A cross-currency swap has a three-part structure:

   an initial exchange of principal amounts15;
   periodic exchanges of interest payments;
   re-exchange of the principal amounts at maturity.

An off-market cross-currency swap has the relationship16:

Off-market = At-market + Loan or deposit

9.1: DF - USD

This spreadsheet presents of USD discount factors for a regular sequence of quarterly dates out to
30 years, and derives zero coupon rates and the gradients of the zero-coupon rate curve.

9.2: DF - JPY

This spreadsheet presents of JPY discount factors for a regular sequence of quarterly dates out to 30
years, and derives zero coupon rates and the gradients of the zero-coupon rate curve. It then
computes the semi-annual forward swap rates for a sequence of semi-annual dates out to 5 years.

9.3: Worksheet to estimate Yen-USD forward rates

This worksheet computes the skew for 3-, 6-, and 9-month JPY/USD FX forwards. The skew is
expressed as the difference between the JPY zero-coupon rate implied by the market FX forward and
that implied by the theoretical FX forward17:

The skew can be positive or negative.

9.4: Example of pricing a cross-currency basis swap

[Conservative pricing based on micro-hedging (not studied)]

15
At spot FX for at-market swap
16
The majority of CCSs are only slightly off-market, usually to ensure that the principal amounts are both
round amounts. Off-market CCCs may be used to conceal embedded loans off-balance sheet.
17
where is the zero-coupon rate for currency
9.5: Deriving DF's from a generic swap curve plus a CCBS curve

This spreadsheet demonstrates how to calibrate a CCBS-adjusted discount curve for JPY such both
JPY swaps and JPY/USD cross currency swaps are correctly priced to market. The implications of
using a CCBS-adjusted discount curve are that JPY flat floaters are no longer priced par; however, at-
market JPY swaps remain at-market, i.e. IRS pricing is only impacted for off-market swaps.

9.6: Creating a synthetic foreign asset: Swapping a USD bond into floating Yen

[This worksheet illustrates how to use the CCBS-adjusted discount curve to price a USD bond
swapped into a 5.5-year par maturity JPY package18 (not studied)]

9.7: Swapping a SA bond into USD Libor

[Another example of CCBS-adjusted pricing similar to 9.6 (not studied)]

9.8: Pricing a 5 year Yen-USD diff swap

A diff swap is a CCBS with no exchange of principals. This worksheet prices a 5-year JPY-USD diff
swap using the unadjusted discount curve to forecast JPY LIBOR rates and using the adjusted
discount curve to present value the ensuing JPY cash flows. Diff swaps were devised to remove most
of the FX exposure from the investor, but they still do expose him to some FX risk.

9.9: Pricing a 5 year Yen-USD quanto diff swap

To eliminate all FX risk, quanto-diff swaps were devised. This worksheet “prices” a 5-year that pays
6-month JPY LIBOR on JPY 10 billion notional and receives 6-month USD LIBOR on the same JPY 10
billion notional. Because the currency of the cash flow is determined by the principal, this is really a
single-currency swap, albeit using a foreign USD reference curve. The required FX-IR convexity
adjustment is discussed in the appendix.

The breakeven spread “over” USD LIBOR is calculated to be -237 basis points.

9.10: Pricing a USD-Yen LTFX: analysing the USD leg (1), 9.11: Pricing a USD-Yen LTFX: analysing the
USD leg (2), 9.12: Pricing a USD-Yen LTFX

[Not studied]

9.13-9.21

[Simulation (not studied)]

9.22: Swapping a reverse dual currency A\$-Yen bond into floating USD

There are two main types of dual-currency bonds: (i) dual where coupon is paid in a foreign currency
but principal is repaid in domestic; (ii) reverse-dual where coupon is paid in the domestic currency
but principal is repaid in foreign.

18
Pricing for asset swaps was discussed in Chapter 5
This worksheet presents the cash flows associated with a 3-year dual-currency bond swapped into
USD. The bond pays a JPY-coupon on a JPY-principal but repays the principal in AUD. Because of the
low coupon relative to the expected depreciation of AUD versus JPY, the bond cash flows represent
a Net PV (USD) of 10,234,131 to the issuer (when discounted off inter-bank swap curve). If these
cash flows are swapped into USD, i.e., bond issuer pays margin over USD LIBOR with exchange of
USD 100 million principal at start and end of swap, the margin turns out to be -375.89 basis points.

These complex bonds frequently contain embedded options, very often protecting the issuer from
paying large amounts and protecting the investor from ever receiving effectively a negative
payment.

Power reverse dual-currency (PRDC) notes have been extremely popular with Japanese investors.
For example, the following was issued by the European Investment Bank in July 2005, and swapped
into 3-month Euribor less a margin.

   Size JPY 1 billion
   Issue price 100
   Coupon paid in JPY
o 10% in year 1
o                       thereafter, subject to a non-negativity constrain, where is
JPY/AUD spot rate measured 10 days before issue and 10 days before each coupon
date
   Redemption AUD 1,666,667
   Trigger
o              set on July 2006
o                  set each year
o If          on any coupon date then mandatory redemption in JPY

This note pays a highly attractive guaranteed coupon in the first year but thereafter the coupon is
subject to the vagaries of the AUD/JPY spot rate. If JPY strengthens the coupon will drop. If JPY
weakens the coupon will rise but the triggers will ensure early redemption.

9.23: Swapping a dual currency A\$-Yen bond into floating USD: calculating the breakeven coupon
rate

[Not studied]

9.24: Pricing a 5 year Yen-USD quanto diff swap with Convexity - Approach 1

In Chapter 7 we discussed the general approach of using the HJM model with simplified assumptions
for the instantaneous volatility to estimate the convexity adjustments required to price a broad
range of exotic single-currency interest rate derivatives. The same approach can be used to estimate
the convexity adjustments required to price quanto derivatives where the contracts reference
foreign rates but pay in domestic currency. For example, to price the exotic leg of the quanto diff
swap we must compute the following expectation:
If we make the following simplified assumptions:

   The domestic and foreign forward rates satisfy HJM-style SDEs with reverting instantaneous
volatilities
o The domestic term structure has one source of uncertainty
o The foreign term structure has two sources of uncertainty         and    19

   The spot FX rate satisfies a GBM-style SDE with constant volatility and three sources of
uncertainty ,       , and
   The correlations between the three sources of uncertainty are constant

Then:

where       is a function of the HJM model parameters.

This worksheet re-prices the swap in 9.9 except that includes the convexity adjustment computed
using the formula above and the parameters below:

Convexity data
rate vol.          lamda1             lamda2
Domestic:                       15%               0%
Foreign:                        15%               0%                  0%
FX rate:                        20%

d-f             d-FX               f-FX
Correlations                    50%               30%               -30%

The impact is to lower the breakeven spread “over” USD LIBOR to -241 basis points, i.e., 4 basis point
difference.

9.25: Pricing a 5 year Yen-USD quanto diff swap with Convexity - Approach 2

The most impactful parameter in the convexity adjustment for the quanto diff swap’s exotic cash
flow is the covariance between the FX spot rate and the foreign term structure. Based on this
observation, a widely used approximation is

This worksheet re-prices the same quanto diff swap except using the convexity adjustment based on
the approximation above. The new breakeven spread “over” USD LIBOR is -245 basis points.

19
This means there are two mean reversion parameters for the foreign term structure
Chapter 10 (OTC Options)
Spreadsheets: Ch 10 Simple OTC Options.xls, SABR model v1.xls

10.1: Market data

This worksheet presents USD discounts factors for dates 3 months apart out to 30 years, from which
the zero rate curve and its gradients are computed. Using these data the spreadsheet computes
spot and 3-month forward starting rates for quarterly swaps with maturities 1, 1.5, 2, 3, 4, 5, 6, 7, 8,
9, 10, 12, 15, 20, 25, and 30 years. The worksheet also presents JPY discount factors for dates 3
months apart out to 1 year.

10.2: Cap Pricing Model

This worksheet prices a 3-year cap by summing the prices of a strip of adjacent caplets, priced using
Black’s formula:

where is the start date of the LIBOR fixing underlying the caplet,       and     are computed using the average
(terminal) volatility     , and         is the forward value of the LIBOR fixing. This formula is consistent with a
forward LIBOR model                                          constructed under the          -forward measure.
The strip of caplets are priced using the same constant volatility and strike.

Illustration of Standard Cap
using implied 3 mo. forwards
4.00%

3.75%
Cost of Cap = 69 bp
3.50%

3.25%

3.00%

2.75%

2.50%

2.25%

2.00%
0.0              0.5             1.0              1.5              2.0              2.5     Years 3.0

10.3: Worksheet to calculate 180-day rolling unweighted and weighted volatilities

This worksheet does what it says on the can, for 12-month cash rates observed daily.
180-day Volatility of 12mo. USD cash rate

4.0%

3.5%

3.0%
Unweighted        Weighted, lamda = 0.94
2.5%

2.0%

1.5%

1.0%

0.5%

0.0%
1          201           401           601              801          1001       1201

10.4: Par cap smile curve - against 3mo USD Libor

This worksheet demonstrates the usual hump-shaped volatility curve for ATM caps of varying
maturities. Because each caplet is independent, what constitutes ATM for an entire cap is not
obvious. The usual convention is to set the strike of each caplet to be constant and equal to the
fixed swap rate of the same maturity and frequency as the cap.

ATM implied volatility curve
18
16
14
12
10
8
6
4
2
0
0          5         10         15           20           25           30      35

10.5: Building a moneyness smile surface

This worksheet uses linear interpolation to convert from a matrix of par volatilities for fixed strikes...
T       Strike      ATM          1.50     1.75     2.00    2.25    2.50     3.00      3.50     4.00    5.00        6.00     7.00     8.00   10.00
1y       2.867      10.44    30.86      27.90     23.80   18.52   14.40    10.61     11.93    13.70   17.46    20.55       22.63    24.44   27.53
18m       2.760      12.72    24.95      21.30     18.61   15.82   14.08    13.43     15.06    16.49   18.65    20.27       21.58    23.03   25.76
2y       2.766      13.53    23.34      19.32     17.56   15.68   14.49    14.16     15.49    16.69   18.70    20.30       21.63    23.17   26.06
3y       3.000      14.78    23.11      19.70     17.99   16.84   15.83    14.78     15.59    16.36   17.65    18.87       19.93    20.96   22.77
4y       3.235      15.27    21.67      20.49     18.84   17.73   16.77    15.61     15.53    16.06   17.14    18.15       19.05    19.80   21.48
5y       3.459      15.48    22.92      21.13     19.52   18.39   17.49    16.12     15.51    15.84   16.60    17.48       18.29    19.02   20.48
6y       3.663      15.52    22.15      20.81     19.89   18.71   17.82    16.37     15.69    15.65   16.17    16.88       17.58    18.28   19.64
7y       3.828      15.48    21.63      20.32     19.99   18.88   17.99    16.57     15.78    15.53   15.84    16.41       17.05    17.66   18.84
8y       3.964      15.38    21.12      21.34     20.10   19.01   18.13    16.70     15.82    15.39   15.55    16.00       16.54    17.10   18.12
9y       4.090      15.24    20.71      20.93     19.88   19.01   18.12    16.73     15.78    15.31   15.33    15.64       16.12    16.61   17.62
10y       4.197      15.11    20.43      20.64     19.66   19.06   18.15    16.73     15.71    15.26   15.05    15.27       15.74    16.25   17.16
12y       4.361      14.76    19.77      19.96     19.10   18.90   18.01    16.60     15.55    15.01   14.66    14.68       14.93    15.31   16.17
15y       4.536      14.25    18.94      19.12     19.26   18.45   17.67    16.34     15.35    14.71   14.11    14.01       14.19    14.49   15.14
20y       4.671      13.63    17.99      18.15     18.27   17.56   17.10    15.85     14.85    14.18   13.48    13.25       13.32    13.55   14.19
25y       4.719      13.13    17.31      17.48     17.60   16.90   16.52    15.33     14.41    13.76   12.99    12.75       12.81    13.03   13.67
30y       4.729      12.79    16.85      16.99     17.10   16.48   16.09    14.90     14.02    13.40   12.68    12.51       12.61    12.83   13.47

to a matrix of par volatilities for strikes as a percentage of ATM strikes...

20%       30%     40%      50%     60%     70%     80%     90%    100%     110%    120%    130%    140%    150%     160%    170%    180%
1y     34.22     26.84   22.93    19.73   16.62   14.06   12.22   11.10   10.44    13.60   16.23   19.47   22.79   25.26    27.22   28.65   29.76
18m     30.95     24.67   21.45    19.49   17.79   16.33   14.90   13.65   12.72    14.07   15.47   17.24   18.92   20.33    21.67   23.15   24.47
2y     31.59     24.93   21.52    19.55   17.92   16.57   15.38   14.36   13.53    14.48   15.42   16.60   17.73   18.66    19.66   21.30   22.75
3y     27.30     22.77   20.45    18.87   17.65   16.73   15.98   15.32   14.78    15.35   15.83   16.61   17.33   17.99    18.84   19.60   20.83
4y     26.66     22.14   19.87    18.57   17.53   16.73   16.11   15.63   15.27    15.75   16.32   16.82   17.50   18.15    18.74   19.48   20.18
5y     25.80     21.60   19.49    18.22   17.27   16.56   16.09   15.74   15.48    15.94   16.44   17.05   17.60   18.19    18.79   19.36   20.03
6y     25.29     21.14   19.07    17.81   16.95   16.34   15.95   15.69   15.52    15.92   16.30   16.90   17.48   18.03    18.57   19.16   19.72
7y     24.23     20.47   18.59    17.45   16.65   16.11   15.77   15.61   15.48    15.81   16.27   16.73   17.32   17.84    18.37   18.87   19.43
8y     23.13     19.76   18.07    17.06   16.33   15.85   15.54   15.45   15.38    15.73   16.17   16.61   17.18   17.72    18.21   18.72   19.22
9y     22.90     19.46   17.73    16.70   16.03   15.59   15.36   15.32   15.24    15.57   15.95   16.45   16.95   17.49    17.96   18.45   18.93
10y     22.16     18.98   17.38    16.43   15.74   15.27   15.10   15.12   15.11    15.43   15.72   16.26   16.74   17.30    17.80   18.26   18.76
12y     21.25     18.12   16.56    15.62   15.03   14.74   14.67   14.71   14.76    15.05   15.40   15.85   16.36   16.86    17.37   17.83   18.28
15y     19.26     16.80   15.58    14.84   14.36   14.10   14.04   14.11   14.25    14.64   14.99   15.37   15.87   16.29    16.78   17.22   17.62
20y     18.46     15.97   14.73    13.98   13.50   13.30   13.29   13.44   13.63    14.01   14.32   14.73   15.18   15.62    16.05   16.48   16.86
25y     18.02     15.50   14.25    13.49   13.00   12.79   12.77   12.93   13.13    13.54   13.85   14.24   14.65   15.06    15.45   15.86   16.23
30y     17.84     15.31   14.05    13.30   12.80   12.59   12.53   12.64   12.79    13.18   13.47   13.85   14.24   14.63    15.01   15.42   15.79

10.6: This worksheet bootstraps a piece-wise constant forward volatility curve from a par curve

In practice, each caplet should be using the volatility for its own individual forward rate. This is
called forward volatility20. Par volatilities represent an average of the forward volatilities over all the
caplets in an entire cap, and are a convenient way of quoting volatility.

This worksheet sets the first three forward volatilities equal to the first par volatility and by using a
piece-wise constant assumption bootstraps the forward volatility curve by backing out caplet prices
from the prices of caps.

20
This is not great terminology. Later, when building trees, it is important to distinguish between forward or
local forward rate volatilities and terminal or spot forward rate volatilities. What Flavell refers to as forward
vols may be more precisely termed as terminal or spot forward rate vols.
Volatility curves: USD 4 February 2008
18%

16%

14%

12%

10%              Par volatilities         Piece-wise constant Forward volatilities

8%
0                5                      10                         15          20   25      30

10.7: This worksheet constructs a smooth forward volatility curve from a par curve

This worksheet is the same as 10.6 except that instead of bootstrapping forward volatilities they are
arrived at via an optimisation that minimises a smoothness constraint subject to all caps being priced
back to market.

Volatility curves: USD 4 February 2008

18%

16%

14%

12%

10%                 Par volatilities            Smoothed forward volatilities

8%
0                5                      10                         15          20   25      30

10.8: This worksheet constructs a forward volatility curve from a par curve by direct calculation

[Third approach (not studied)]
10.9: Forward volatility surface produced by bootstrapping, 10.10: A smoothed forward volatility
surface

These worksheets show the output of applying the techniques in 10.6 and 10.7 to strips of caps for
different strikes.

10.11: Cap & Floor Pricing - with USD data

This worksheet prices a 3-year floor by summing the prices of a strip of adjacent floorlets, priced
using Black’s formula:

10.12: Pricing a curve cap

This worksheet prices a curve cap, i.e., a strip of caplets with strikes that are a fixed margin above the forward
curve.

Illustration of Curve Cap
4.0%
3.5%
3.0%
2.5%
2.0%
1.5%
1.0%
0.5%
0.0%
0.0              0.5              1.0              1.5              2.0            2.5              3.0
Years

10.13: Pricing a mid-curve cap

This worksheet prices a 3-year mid-curve cap, which comprises conventional caplets in year 1,
caplets referencing forward-rates-observed-at- end-of-year-1 in year 2, and caplets referencing
forward-rates-observed-at- end-of-year-2 in year 3. The maturity of the mid-curve option is less,
and therefore likely to be cheaper.

For the instrument priced in this spreadsheet, the strikes of the caplets are equal to the 3-month
cash rate in year 1, the 3-month forward rate settling at start of year 2 in year 2, and the 3-month
forward rate settling at start of year 3 in year 3. The same forward volatilities are used to price the
caplets in years 2 and 3 but their maturities are shortened to either 1 or 2 years21.

10.14: Collar Pricing

21
This appears to be theoretically correct. See Chapter 10 of Shreve II.
This worksheet demonstrates how the total cost of a bought cap may be reduced by combining with a sold
floor.

10.15: Structuring a Participation

An alternative structure to collars is “participations”, which are constructed by adjusting the amounts of the
cap and floor. For example, suppose a zero-cost collar was based on a constant principal amount of \$100m.
Instead of buying the floor struck at x%, suppose it was struck at y% (>x%) thus increasing its value. The collar
is no longer zero-cost. However, by only selling the floor on a fraction of \$100m, the overall structure is again
no-cost.

This worksheet structures a participation by adjusting the notional of the floor such that when combined with
the 3-year cap it has no cost.

10.16: Digital Cap & Floor Pricing

This worksheet prices a 3-year digital cap and floor. Each digital caplet is priced using the formula

Each digital floorlet is priced using the formula

10.17: Worksheet to replicate a standard call by a strip of digitals

This worksheet does what it says on the can, for a 1-year call.

10.18: Cap & Floor Pricing for embedded structures - note that this includes the first fixing, 10.19: Capped Loan
– 1, 10.20: Capped Loan – 2, 10.21a: Worksheet to price a capped swap, 10.21b: Worksheet to price a floored
swap, 10.22: Worksheet to price a reverse floating swap with a collar

[Not studied]

10.23: Swaption Pricing - with USD data

This worksheet prices swaptions using Black’s formula:

(payer)

where and are the start and end times of the swap underlying the swaption,            is the present
value of 1 basis point paid quarterly between times and , and        is the forward swap rate observed
today. This formula is consistent with a forward swap rate model
constructed under the measure corresponding to the swap numéraire.

When a swaption is exercised a swap is delivered on the exercise date. It is possible to get cash-settled
swaption, under which the cash value of the underlying swap is paid to the option purchased. However, the
cash flows from the fixed leg of swap are discounted using the swap rate itself. The reason for this convention
is that there may well be disagreement about the construction of a discount curve whereas the option
22
counterparties are likely to agree on the swap rate as a visible traded rate.

The receiver and payer swaptions priced in this worksheet reference 5-year swaps.

10.23: Swaption Pricing - with USD data

This worksheet is the same as 10.23 except the receiver and payer swaptions reference 1-year swaps.

10.25: This worksheet contains an ATM swaption volatility surface and extracts from a volatility smile

This worksheet shows ATM swaption vols for different option terms and swap tenors:

Tenor
Term         1y       2y       3y       4y       5y         6y        7y       8y       9y      10y     15y     20y       25y      30y
1m    13.9%    14.4%    14.7%    14.7%    14.7%      14.4%     14.1%    13.7%    13.4%     13.1%   12.5%   12.0%     11.7%    11.4%
2m    13.8%    14.4%    14.8%    14.9%    15.0%      14.6%     14.3%    13.9%    13.6%     13.3%   12.5%   12.0%     11.7%    11.5%
3m    14.1%    14.6%    15.0%    15.2%    15.1%      14.8%     14.5%    14.3%    14.0%     13.7%   12.8%   12.3%     12.0%    11.7%
6m    14.8%    15.2%    15.2%    15.2%    15.1%      14.8%     14.6%    14.3%    14.0%     13.8%   12.9%   12.4%     12.0%    11.8%
9m    15.4%    15.4%    15.4%    15.3%    15.1%      14.8%     14.6%    14.3%    14.1%     13.8%   13.0%   12.5%     12.2%    12.0%
1y   15.6%    15.6%    15.5%    15.3%    15.0%      14.8%     14.6%    14.3%    14.1%     13.9%   13.1%   12.6%     12.3%    12.1%
18m     15.7%    15.6%    15.4%    15.3%    15.0%      14.8%     14.5%    14.3%    14.1%     13.9%   13.1%   12.6%     12.3%    12.2%
2y   16.0%    15.7%    15.5%    15.1%    15.0%      14.7%     14.5%    14.2%    14.0%     13.8%   13.0%   12.6%     12.3%    12.1%
3y   15.9%    15.7%    15.4%    15.2%    14.7%      14.5%     14.2%    14.0%    13.8%     13.6%   12.9%   12.5%     12.2%    12.0%
4y   15.7%    15.4%    15.0%    14.8%    14.4%      14.2%     13.9%    13.7%    13.5%     13.4%   12.7%   12.2%     12.0%    11.8%
5y   15.4%    15.1%    14.8%    14.4%    14.1%      13.8%     13.6%    13.4%    13.2%     13.1%   12.4%   12.0%     11.7%    11.6%
7y   14.4%    14.1%    13.9%    13.5%    13.2%      13.1%     12.9%    12.8%    12.6%     12.5%   11.9%   11.5%     11.3%    11.1%
10y    13.2%    12.9%    12.7%    12.5%    12.3%      12.2%     12.1%    12.0%    12.0%     11.9%   11.3%   10.9%     10.7%    10.4%
15y    11.9%    11.8%    11.7%    11.6%    11.4%      11.3%     11.3%    11.2%    11.2%     11.2%   10.6%   10.3%     10.0%     9.8%
20y    11.4%    11.2%    11.1%    11.0%    10.8%      10.7%     10.7%    10.7%    10.7%     10.7%   10.2%    9.7%      9.5%     9.4%
25y    11.0%    10.8%    10.7%    10.6%    10.4%      10.5%     10.5%    10.4%    10.4%     10.4%    9.8%    9.5%      9.4%     9.4%
30y    11.1%    10.8%    10.7%    10.5%    10.3%      10.3%     10.3%    10.2%    10.2%     10.2%    9.6%    9.4%      9.4%     9.3%

It also shows the smile for different option terms and swap tenors:

Term      Tenor Strike Price ATM vol      -200         -100        -50       -25         0         25        50         100       200
3m         2y      3.9951 14.60%      20.55%       16.64%     15.33%    14.88%    14.60%     14.48%    14.50%      14.88%    16.18%
3m         5y      4.0201 15.10%      21.29%       17.22%     15.86%    15.39%    15.10%     14.97%    15.00%      15.38%    16.71%
3m        10y      4.2658 13.70%      19.98%       15.76%     14.40%    13.96%    13.70%     13.62%    13.69%      14.14%    15.57%
3m        20y      4.3476 12.30%      19.22%       14.56%     13.06%    12.58%    12.30%     12.21%    12.29%      12.78%    14.29%
3m        30y      4.3247 11.70%      19.17%       14.12%     12.52%    12.00%    11.70%     11.61%    11.69%      12.22%    13.81%
1y        2y      4.0507 15.60%      20.68%       17.32%     16.22%    15.85%    15.60%     15.47%    15.44%      15.65%    16.58%
1y        5y      4.0618 15.00%      20.40%       16.82%     15.66%    15.26%    15.00%     14.87%    14.85%      15.08%    16.08%
1y       10y      4.0604 13.90%      19.45%       15.71%     14.53%    14.14%    13.90%     13.80%    13.81%      14.12%    15.23%
1y       20y      4.2136 12.60%      18.73%       14.58%     13.29%    12.86%    12.60%     12.49%    12.51%      12.84%    14.01%
1y       30y      4.2795 12.10%      18.73%       14.23%     12.83%    12.38%    12.10%     11.98%    12.01%      12.37%    13.60%
5y        2y      4.1665 15.10%      19.87%       16.76%     15.75%    15.38%    15.10%     14.90%    14.79%      14.75%    15.16%
5y        5y      4.0162 14.10%      18.76%       15.68%     14.71%    14.36%    14.10%     13.92%    13.82%      13.81%    14.26%
5y       10y      4.2077 13.10%      18.13%       14.82%     13.76%    13.38%    13.10%     12.91%    12.80%      12.79%    13.27%
5y       20y      4.2779 12.00%      17.60%       13.90%     12.73%    12.31%    12.00%     11.80%    11.69%      11.71%    12.28%
5y       30y      4.3470 11.60%      17.62%       13.62%     12.37%    11.92%    11.60%     11.39%    11.29%      11.34%    11.98%
10y         2y      4.4552 12.90%      17.42%       14.44%     13.51%    13.17%    12.90%     12.71%    12.58%      12.48%    12.72%
10y         5y      4.4765 12.30%      17.00%       13.89%     12.92%    12.57%    12.30%     12.11%    11.98%      11.91%    12.19%
10y        10y      4.4759 11.90%      16.84%       13.56%     12.55%    12.18%    11.90%     11.70%    11.57%      11.49%    11.79%
10y        20y      4.5098 10.90%      16.26%       12.68%     11.59%    11.20%    10.90%     10.69%    10.57%      10.51%    10.87%
10y        30y      4.5098 10.40%      15.97%       12.23%     11.10%    10.70%    10.40%     10.20%    10.08%      10.04%    10.45%

10.26: Worksheet to transform Forward Interest Rate volatility to Forward Swap volatility

This worksheet exploits the relationship between swap rates and LIBOR fixings to derive a formula for
swaption vol in terms of forward vols and the correlations between LIBOR fixings.

A common correlation structure is to assume a “ridge” such as                                      . With perfect correlation,
swaption vol is the same as flat forward vol. As the correlation reduces, the swaption vol reduces as well.

22
Presumably this invalidates the use of Black’s formula?
10.27: Pricing extendible and retractible swaps, 10.28: Pricing a simple European callable swap, 10.29:
Worksheet to calculate USD-Yen FX forward contracts - basic market data, 10.30: Worksheet to calculate some
vanilla FX options, 10.31: Worksheet to demonstrate option replication - based on option to Receive Foreign,
Put Domestic, 10.32: Detailed analysis extracted from Worksheet 10.31 - with no randomness

[Not studied]

10.33: Market data - Forward USD volatility surface (extracted from Worksheet 10.9)

This worksheet presents a matrix of forward (caplet) vols for various strikes and option maturities/tenors. The
first row is used to price caplets with maturity dates at 0.25, 0.5, and 0.75 years and payment dates at 0.5,
0.75, and 1 years. The second row is used to price caplets with maturity dates at 1.25 years and payment
dates at 1.5 years. And so on...

Strike           1.5        1.75       2        2.25     2.5        3      3.5        4        5        6        7        8       10

0              1   30.86%     27.90%   23.80%   18.52%     14.40%   10.61%   11.93%   13.70%   17.46%   20.55%   22.63%   24.44%   27.53%
1.25            1.5   21.52%     18.46%   16.42%   14.61%     13.87%   16.43%   16.43%   16.43%   16.43%   16.43%   16.43%   16.43%   16.43%
1.75              2   22.09%     16.61%   15.74%   15.28%     15.28%   14.87%   15.57%   16.86%   16.86%   16.86%   16.86%   16.86%   16.86%
2.25              3   22.46%     20.60%   18.80%   18.99%     18.22%   15.37%   15.62%   16.31%   17.76%   18.99%   20.03%   20.23%   20.23%
3.25              4   19.28%     21.69%   20.94%   20.31%     19.40%   17.22%   15.48%   15.83%   16.88%   17.92%   18.85%   19.78%   21.52%
4.25              5   24.20%     22.60%   21.50%   20.67%     20.06%   17.70%   15.46%   15.46%   16.03%   16.97%   17.85%   18.65%   20.11%
5.25              6   19.05%     19.77%   21.24%   20.11%     19.35%   17.42%   16.29%   15.18%   15.42%   16.10%   16.84%   17.63%   19.05%
6.25              7   20.97%     18.20%   20.20%   19.61%     18.84%   17.57%   16.16%   15.11%   14.99%   15.46%   16.16%   16.74%   17.86%
7.25              8   18.75%     23.73%   20.58%   19.66%     18.87%   17.41%   16.02%   14.78%   14.56%   14.86%   15.33%   15.93%   16.89%
8.25              9   19.40%     19.20%   18.68%   18.87%     18.06%   16.91%   15.54%   14.87%   14.39%   14.39%   14.90%   15.35%   16.53%
9.25             10   19.20%     19.30%   18.43%   19.50%     18.38%   16.69%   15.19%   14.93%   13.57%   13.67%   14.32%   15.07%   15.92%
10.25             12   18.50%     18.15%   17.41%   18.40%     17.51%   16.09%   14.93%   14.08%   13.42%   13.11%   13.06%   13.37%   14.43%
12.25             15   17.69%     17.46%   19.57%   17.26%     16.68%   15.52%   14.72%   13.76%   12.54%   12.37%   12.62%   12.94%   13.50%
15.25             20   17.05%     16.86%   16.60%   15.83%     15.89%   14.67%   13.57%   12.78%   11.87%   11.48%   11.48%   11.74%   12.64%
20.25             25   16.25%     16.19%   15.99%   15.10%     14.75%   13.50%   12.74%   12.06%   10.95%   10.75%   10.91%   11.23%   12.13%
25.25             30   15.81%     15.65%   15.44%   14.92%     14.29%   12.81%   11.93%   11.32%   10.77%   11.05%   11.47%   11.77%   12.57%

10.34: SABR Parameters estimated using Nelder-Mead least squares algorithm

This worksheet contains pre-computed SABR model parameters fitted to the market data on the previous
worksheet. A separate set of parameters is needed for each option maturity.

10.35: Modelling the smile using the SABR model

The SABR model assumes forward rates are stochastic:

where the volatility               is itself stochastic:

and where

The parameter is a measure of vol of vol; is the correlation between the forward rate and vol. A
parameter value        yields a log-normal model favoured by most traders. For an option of maturity with
strike and implied forward rate , the Black volatility surface         is a function of the SABR model
parameters. In the log-normal model the parameter can be determined analytically from the ATM forward
vol. The other parameters can be estimated by some robust least-squares fitting algorithm.

For a given option maturity, this worksheet models the smile using the SABR model. The parameters have
been pre-computed and are stored on the previous worksheet.
Comparing the SABR curve with Market data
Example: T = 10 yrs
25%

20%

15%

10%
SABR curve
5%
Market Volatilities
0%
0%             2%             4%             6%             8%             10%           12%
Strike

Chapter 11 (Swapping Structured Products)
Spreadsheets: Ch 11 - summary of spreadsheets.xls, Ch 11 BDT Builder.xls, Ch 11 Decomposing a
correlation matrix.xls, Ch 11.1 Modelling WB accrual note.xls, Ch 11.3 BDT Modelling a swap.xls,
Ch 11.10 BDT Pricing and calibrating a CMS.xls, Ch 11.22 Pricing a callable range accrual.xls, Ch
11.28 Implying forward-forward volatilities.xls, Ch 11.36 Example of BGM simulation.xls, Ch 11.41
Example of very long-step BGM simulation.xls, Ch 11.49 Modelling a sticky floater.xls, Ch 11.56
Modelling a TARN.xls, Ch 11.62 Modelling a callable snowball.xls, Ch 11.67 BDT with a smile.xls, Ch
11.69 Hull & White example.xls, Ch 11.80 BDT Pricing a caplet and some swaptions.xls

Examples of some structured securities:

   Range accrual swap
o                                          where    equals number of days 3mo. LIBOR fixes in
pre-defined accrual ranges
o   (spread steepener)                                      where     equals number of days
fixes at or above pre-defined accrual barrier
o                     where      equals number of fixings in pre-defined range where reference in
year equals              euro swap rate
   Sticky floater
o                                       subject to
   TARN
o                                             subject to               and mandatory early
redemption on any coupon date if total accrued coupon (including current coupon) exceeds
knockout level, e.g., 20%
   Snowball
o                                                             subject to                  where
starts at 2.5% and increments by 25bp each period

In addition, these structures may have an embedded strip of calls, which makes the structures forward-looking
in as much as whether the issuer exercises his option depends on the anticipated value of forward cash flows.
The sticky floater and TARN structures have dependencies on the backward path of coupons.

The simpler range accruals are fairly straightforward to price analytically as they only depend upon the level of
the reference on a given date. There are two main approaches that can be used to model the more complex
structures. Trees or finite-difference grids are usually applied to forward-looking structures whereas Monte
Carlo simulation is used to handle both backward and, with some difficulty, backward-forward structures.

11.1: Swapping World Bank Accrual Note

This worksheet prices a simple range accrual swap analytically. The structure is a 2-year swap that pays
where    equals number of days 3mo. LIBOR fixes in pre-defined accrual
ranges [2%, 2.75%] in first six months, [2%, 2.3.00%] in second six months, [2%, 3.25%] in third six months, and
[2%, 3.50%] in last six months.

The spreadsheet evaluates each cash flow of the “exotic” leg of the swap as follows:

Note, to value each digital call, it is necessary to estimate the 3-mo forward LIBOR fixing at the option
maturity. When modelling accrual notes, it is important to take the smile effect into account, or to use a
stochastic volatility model such as SABR.

The breakeven spread “over” LIBOR on the floating leg is -45bp.

11.2: Market data

Strips of LIBOR discount factors, zero-coupon rates, and gradients, spaced regularly three months apart; (ATM)
(forward) volatility term structure

11.3: Valuing a swap by different analytic approaches, and building a rate tree, 11.4: Discounting tree, 11.5: X
tree, 11.6: This worksheet models a swap twice, and demonstrates the same pricing, 11.7: Modelling a
Bermudan callable swap using the two different representations,

We develop a binomial tree implementation of the Black-Derman-Toy model (BDT):

Although the model was originally described in algorithmic language, and not using stochastic calculus or
martingales, it has been shown to imply the above stochastic differential equation.

Re-write the above expression as
Approximate using a simple binomial model in which             has only two equally-likely outcomes

This implies

23

Under BDT, using a binomial tree, one calibrates model parameters to fit both current term structure of
interest rates (yield curve), and volatility structure for interest rate caps (usually implied by Black-76-prices for
each component caplet). Using calibrated tree one can then value a variety of more complex interest-rate
sensitive securities and interest rate derivatives. Calibration means: (1) we assume probability of up-move is
50% under risk-neutral measure; (2) for each input discount bond price            : (a) iteratively adjust rate at
bottom-most node of time-step, ; (b) find all other nodes           in current time-step, where these are linked to
node immediately below via formula                              24; (c) discount recursively through tree, from

time-step in question to first node in tree; (d) repeat until calculated discount bond price (i.e. discount factor
for time-step in question) equals input value; (3) Once solved, retain these known short rates, and proceed to
next time-step (i.e. input discount bond prices for other maturities), "growing" tree until it incorporates full
input yield-curve.
25
These worksheets calibrate a 5-year binomial tree with quarterly time steps. The inputs are Black caplet vols
and discount bond prices. The calibrated tree is used to price a callable payer swap, callable quarterly. The
owner of the option, viz., the counterparty paying fixed, would only want to call the swap if the future
expected value was negative, so we can modify the formula for calculating the value of the contract at each
node to

There is an old trader’s trick for pricing Bermudan structures: price it to the first call, price it to the final
maturity, and take the higher of the two. It works well for monotonic curves.

11.8: Notes, 11.9: Market data, 11.10: Pricing a Constant Maturity Swap with Convexity Adjustment, 11.11:
Building the rate tree, 11.12: Discounting tree, 11.13: X tree, 11.14: Valuing forward swaps, 11.15: Estimating
CMS rates, 11.16: Estimating CMS rates, 11.17: Estimating CMS rates, 11:18: Pricing a CMS swap, 11:19: Pricing
swaptions, 11.20: Callable CMS swap

These worksheets price a 5-year CMS, paying 3 mo. LIBOR and receiving the 10-year rate plus a margin on ANN
Act/360 daycount. As before, the market data comprises discount bond prices and Black caplet vols out to 30
years. First, the swap is priced analytically, with (-133.45bp) and without (-128.27bp) the convexity

23
is the forward or local vol for the short rate between time-steps and             . This equation ensures
that the volatility is matched; the calibration ensures that the yield curve is matched.
24
The forward vol for the short rate between time-steps and              is assigned the index        in the
spreadsheet. This is consistent with Hull, J. (2008), “The Black, Derman, and Toy Model”, Technical Note No.
23, Options, Futures, and Other Derivatives.
25
The spreadsheet actually takes as input a “volatility term structure”, which, given how it is used, is a strip of
forward or local forward rate vols. In practice, these forward rate vols would need to be calibrated to a strip of
spot or terminal forward rate vols, i.e., Black caplet vols, but this calibration is not performed in the
adjustment. Next, a 30-year binomial tree with quarterly time steps is calibrated. From this, we can estimate
the CMS fixings and build the CMS pricing tree itself.

The implied swaption vols required in the convexity adjustment formula are backed out using Black’s model
from swaption prices calculated using the binomial tree.

Finally, the model is extended to introduce a strip of call options, exercisable on each CMS coupon date. This
“increases” the margin to -164bp.

11.21: Market data, 11.22: Pricing a Range Accrual analytically, 11.23: Building the rate tree, 11.24:
Discounting tree, 11.25: X tree, 11.26: Pricing range accrual, 11.27: Callable range accrual

These worksheets price a 5-year accrual paying 3 mo. LIBOR + 50bp, but with the fixings of 3 mo. LIBOR subject
to the following ranges:

    Year 1, [2.00%, 3.50%]
    Year 2, [2.10%, 4.00%]
    Year 3, [2.20%, 4.50%]
    Year 4, [2.30%, 5.00%]
    Year 5, [2.40%, 5.50%]

Because the tree is built with quarterly time-steps whereas the range accrual feature needs to be checked
daily, 11.26 assumes that the fixings change smoothly from the beginning of the period to the end, and
calculates the proportion of these fixings,     for up-move and       for down-move, that lie in the applicable
range. Hence the expected proportion                               would be an estimate of the probability of
fixings lying with the specified range. The structure can then be modelled on the tree in the same way as
before, by discounting the expected LIBOR cash flows. The graph below shows the tree probabilities
compared with the analytic ones calculated using the Black digital model.

Differences between Tree and Analytic Probabilities
100%
95%
90%
85%
80%
75%
70%
65%                      Tree probabilities
60%
Analytic probabilities
55%
50%
1    2     3   4     5   6    7     8   9    10 11 12 13 14 15 16 17 18 19 20
Finally, as before, we can introduce a call strip giving the issuer the right to call back the security on any
26                                                                         27
coupon date at par . This alters the breakeven margin “over” LIBOR from -36bp to -95bp .

11.28: This worksheet estimates forward-forward volatilities from a current forward volatility curve

This worksheet estimates forward forward-rate volatilities from the current term structure of spot forward-
rate volatilities. Let         be the forward (instantaneous) volatility of the        -period forward rate at
time , i.e., a measure of how much this forward rate might move between times and               . Let be the
spot (terminal) volatility of the         -period forward rate at time , i.e., a measure of how much this
forward rate might move between times 0 and . We have the following relationship between these two
types of volatilities:

28
If we assume the forward volatility take the time-homogeneous form of

then it is simple albeit tedious to perform the integration analytically. Hence, given a spot forward-rate
29
volatility curve , , we can estimate the parameters                 by doing a least-squares minimisation.

Black
forward Forward-forward volatility curves from tj to tj+1 = tj +Step ====>
volatilities
tj =                       0       0.25         0.5       0.75          1         1.25       1.5      1.75        2    2.25
tk
0.25      9.7147%    9.7147%
0.5     10.0856%    10.023%    10.147%
0.75     10.9748%    10.841%    10.973%    11.109%
1    12.4933%    12.267%    12.415%    12.566%     12.721%
1.25     13.6952%    13.369%    13.527%    13.689%     13.856%    14.027%
1.5     14.5518%    14.123%    14.287%    14.456%     14.629%    14.807%    14.990%
1.75     15.0376%    14.511%    14.678%    14.848%     15.024%    15.204%    15.389%      15.579%
2    15.1263%    14.516%    14.679%    14.847%     15.020%    15.197%    15.380%      15.567%   15.760%
2.25     15.3588%    14.659%    14.821%    14.988%     15.159%    15.336%    15.517%      15.703%   15.894%   16.091%

11.29: This demonstrates bootstrapping breaking down

Unfortunately, in reality, the market variances  do not always increase, possible due to supply and
demand, and so the method described in 11.28 cannot always be relied upon. This worksheet provides one
such example.

11.30: Market data

This worksheet presents quarterly forward rates and Black caplet volatilities out to 30 years for USD currency.

11.31: This worksheet estimates a parametric forward-forward volatility curve

This worksheet is a duplicate of 11.28. See theory in the notes for 11.28 and 11.36.

26
This is a straightforward extension of the model as it is only a matter of evaluating the remaining cash flows
from the range accrual and comparing their present value to par.
27
This is paid in exchange for the “exotic” cash flows from the range accrual.
28
Of course the forward forward-rate volatilities drop off as the forward rate fixes.
29
viz., Black caplet volatilities
11.32: Correlation matrix

This worksheet generates a correlation matrix for the sub-strip of forward rates out to 20 years using the
extended parametric form discussed in the note for 11.36. The parameters values used are                and
. A full-spanning      matrix is derived using Cholesky decomposition.

11:33: R(i,j)

This worksheet calculates

for            years. See theory in the note for 11.36. Simulation times run from right to left and settlement
(fixing) times run from top to bottom, e.g., at the second simulation time the first forward rate has dropped
away. In effect,      is computed from the forward rates in 11.30; in practice, all values of    are computed
from values of the forward rates in 11.36. The important point is that      can be computed from forward rates
known at the observation time .

11.34: Sum s(i,j).R(i.j),rho(k,i)

This worksheet calculates

for               and                   . See theory in the note for 11.36. Note,

so that equivalently the spreadsheet calculates

The forward forward-rate volatilities     are taken from 11.31.

11:35: rv’s

This worksheet generates 80 x 80 = 6,400 independent normally-distributed variates.

11.36: BGM Sampling

There are many structures that cannot (easily) be handled by tree, such as sticky floaters and TARNs that are
path-dependent. The forward LIBOR model—alternatively known as the BGM model or LIBOR market model—
has become the industry standard.

Theory

We recall how we can lock in a simple (annualised) interest rate at time    (spot when      and forward when
)
by taking a short position in -maturity zero-coupon bonds and a long position in              -maturity zero-
coupon bonds, where                    . The risk-neutral (forward) probability measure         corresponding to
the numéraire                is given by

and

is a Brownian motion under         . Here              is integral between times and           of the
instantaneous volatility       at time of the instantaneous forward rate settling at time in a 1-factor HJM
model. The no-arbitrage price at time of backset LIBOR paid at time          on a notional of unity is
. This implies     is the        -forward price at time of backset LIBOR paid a time
on a notional of unity, which means this price process is a       -martingale. Accordingly,

for piecewise-constant forward forward-rate volatilities  30. In writing the discrete version of the SDE for the

evolution of forward LIBOR, we are assuming that only structures with price-sensitive events on fixing times
will be priced using the model. The forward LIBOR model constructed in this way means that         is log-
normally distributed under           . We assume we know the Black caplet volatility for each forward rate,
i.e., the spot forward-rate volatility averaged over the time period    . We have the following relationship
between the spot and forward forward-rate volatilities:

With this set-up we can evolve the forward LIBOR      for            in a way that is consistent with the
market cap prices. However, the SDE for different forward rates are with respect to different forward
measures. We would like to determine the relationship between these different equations so that all forward
rates can be evolved in one overarching simulation. This can be done by subtracting the expression for
from the expression for             such that the        terms cancel, and then using the
resultant recursive relationship to express                in term of            31:

Putting these pieces together, we get the following simulation equation for any forward rate        ,          :

30
We have the following relationship between the market rate volatility and the instantaneous volatility:

31
The expression in footnote 30 is used to deduce this relationship.
We know have a single Brownian motion driving all forward rates. Thus to construct the forward LIBOR model
we choose a Brownian motion, which we call          , under a probability measure           . We assume the
initial forward rates      are known from market data. With these initial conditions we can generate the
forward rates process        , first generating        , which has no drift, and using it in the differential
equation for            ; then using         and         in the differential equation for        ; and so
on. Implicit in this computation is dependence between among these different forward LIBOR processes, i.e.,
changes in forward rates are perfectly correlated.

If instead we build the forward LIBOR model with respect to the numéraire                     , then we get
following simulation equation for any forward rate   ,        :

Practice

This is the formulation actually used by Flavell except that he presents a multi-factor version of this model in
which the forward rates are driven by independent Brownian motions:

where    ,            ,             , are the coefficients of the lower triangular matrix in the Cholesky
decomposition of the matrix of correlations between forward rates at time .

It also feasible to develop a forward swap-rate model using swaption volatilities and a forward PV01
numéraire. This would be more appropriate for simulating forward swaps or CMS structures, but the drift
term is more complex and inputs are less observable. In practice, the forward LIBOR model is more commonly
applied, especially when modelling mixtures of LIBOR and swap rates.

Correlations between the forward rates are required inputs in this model. Whilst it might be feasible to use
historical relationships, a parametric form such as the one following is far more common in practice:

This would then enable the parameters to be estimated by calibrating the simulation to selected European
swaptions, typically by minimising squared errors. This assumes that forward rates that are equidistant apart
have the same correlation, and rates that are far apart have an effective zero-correlation. An extended
formula is:

This implies correlation can never drop below        . In practice forward rates at the long end of the curve are
generally more highly correlated than rates at the short end: this is known as correlation convexity. There are
formulae with more parameters that incorporate this, but they require considerably more computational
effort, and run into the danger of overfitting.
32
The next step is to estimate the coefficients    from the correlation matrix . The parameter may lie
between and                . If      then the forward curve will only exhibit parallel shifts. Alternatively, if

32
We assume a time-homogeneous correlation matrix.
then this is a full spanning model and the coefficients     can be uniquely determined from the
correlation matrix using Cholesky decomposition. But we know that real forward curve tend to exhibit a
limited range of movements. A full spanning model may therefore introduce forward curve movements that
are unlikely in the real world. For this reason, setting       might be more appropriate. However, this means
that the coefficients      are determined numerically by minimising the errors between                 and the
full correlation matrix (perhaps estimated parametrically). This approach is at the heart of principal
components.

There is still one more aspect to clarify before we can run a BGM simulation: we must determine the forward
forward-rate volatilities . These are determined from the Black caplet volatilities using the parametric form
described in 11.28.

We are now in a position to evolve the forward curve. Note, this spreadsheet produces a single realisation of
the forward curve.

11.37: Market Data

This worksheet is a duplicate of 11.30.

11.38: This worksheet estimates a parametric forward-forward volatility curve

This worksheet is a duplicate of 11.28.

11.39: Correlation matrix

This worksheet is a duplicate of 11.32 with                and            .

11.40                 , 11.41: Generation of Long-Step Forward curves

For any given forward, the algorithm in 11.36 generates a path of quarterly observations from today (spot)
until the settlement (fixing) date. Whilst this may be very useful information for some structures, for most it is
too much, as the only relevant information is the actual fixing. The path taken to get this fixing is not relevant.
Ideally we would like to make a single time step for the th forward rate from         to         but we do not
know what drift to apply. Rebonato suggests the following very long-step approach:

   Generate a test forward rate       using the drift term    for the first period extrapolated to the very
33
long-step; for the vol term, use the Black caplet vol
   Calculate the drift term     for the period
   Generate a final forward rate      using the average drift term         and the same random numbers
as before

Note, this spreadsheet produces a single realisation of the fixing of each forward rate. These realisations run
from top to bottom.

11.42: Modelling swaptions using long-step BGM simulation

This worksheet demonstrates how to use a single realisation of the fixing of each forward rate generated in
11.41 to compute the discounted payoffs for four swaptions. It employs a one-input data table to re-compute
the discounted payoffs using two antithetic pairs of 500 simulations. Averaging the discounted payoffs for

33
Formulaically,
each swaption gives its present value under the BGM model. Because the correlation parameters are
34
variables the spreadsheet can be used to find the parameter values that minimise the sum of the square
errors between the market and model prices for the swaptions. This is a crude form of calibration.

11.43: Market data

This worksheet is a duplicate of 11.30.

11.44: This worksheet estimates a parametric forward-forward volatility curve

This worksheet is a duplicate of 11.28.

11.45: Correlation matrix

This worksheet is a duplicate of 11.32 with            and             .

11.46 σ(i).ρ(k,i), 11.47: Very long-step Sampling

This worksheet is a duplicate of 11.40.

11.48: Modelling a floater with no stickiness

This worksheet prices a 6-year floater with no stickiness that pays 50bp over LIBOR semi-annually. The note is
issued at a discount, and the “price” is expressed as a running fixed number of basis points paid quarterly. Of
course, being a floater that pays a spread over LIBOR and being issued at a discount means that the number of
basis points paid quarterly must be positive, and it turns out to be 56.68bp.

11.49: Simulating two floaters - one sticky, and one not

This worksheet demonstrates how to use a single realisation of the fixing of each forward rate generated in
11.47 to compute the sum of the discounted cash flows of a 6-year floater with stickiness that pays 50bp over
LIBOR semi-annually. The stickiness takes the form                       . It employs a one-input data table to
re-compute the sum of the discounted cash flows using two antithetic pairs of 500 simulations. Averaging the
sum of the discounted cash flows of the sticky floater, including the initial cash flow reflecting its discount
issue price, gives the derivative’s present value under the BGM model. To improve the accuracy of the
calculation, the spreadsheet uses the present value of the non-sticky floater also computed using the
35
simulation as a control variate . That is, the corrected margin for the sticky floater is estimated by the
average simulated margin for the stick floater plus the difference between the average simulated margin for
the non-sticky floater and 56.68bp. This number of basis points paid monthly turns out to be -14.05bp!

There is no particularly appropriate calibration for this structure, possibly caplets on 6mo. LIBOR. The
correlation parameters are unlikely to have a significant effect.

11.50: Market data, 11.51: Forward-Forward Vols, 11.52: Correlation matrix, 11.53 σ(i).ρ(k,i), 11.54: Very long-
step Sampling

These worksheets are duplicates of 11.37-11.41.

11.55: Modelling a spread floater with different maturities

34
Worksheet 11.39 can re-compute both the correlation matrix and the Cholesky decomposition on-the-fly.
35
The control variates method is a variance reduction technique used in Monte Carlo methods. It exploits
information about the errors in estimates of known quantities to reduce the error of an estimate of an
unknown quantity (see http://en.wikipedia.org/wiki/Control_variates for mathematical explanation).
The purpose of this worksheet is to analytically price a spread floater, which will be used as a control variate
for the TARN considered in 11.56. In fact, because we do not know the effective of the TARN, the spread
floater is modelled for a range of maturities and, as we shall see, the correct maturity will be selected for each
scenario of the TARN. An adjustment can then be made, not on average across all scenarios, but for each
scenario.

The spreadsheet calculates the fixed spread that must be paid quarterly in return for
paid annually, for a variety of maturities between 2 and 10 years. No convexity adjustment is
applied. The discount factors are taken from 11.50.

11.56: Modelling a TARN

This worksheet demonstrates how to use a single realisation of the fixing of each forward rate generated in
11.54 to compute the sum of the discounted cash flows of a (maximum) 10-year that pays
subject to                 and mandatory early redemption on any coupon date if total accrued
coupon (including current coupon) exceeds accrual barrier of 20%. For each realisation, the breakeven fixed
spread that must be paid quarterly in return for these exotic cash flows is computed. The spreadsheet also the
breakeven fixed spread that must be paid quarterly in return for the cash flows from the spread floater
described in 11.55. The corrected breakeven margin for the TARN is estimated by the simulated margin for the
TARN plus the difference between the simulated and analytically-computed breakeven margins for the spread
floater with the same effective maturity as the TARN. It employs a one-input data table to re-compute the
corrected breakeven margin for the TARN using two antithetic pairs of 500 simulations. Averaging over these
36
values gives the derivative’s risk-neutral breakeven margin under the BGM model .

The most suitable instruments to calibrate the simulation to would be fixed length European swaptions such as
/2 and /10 where would range from 1-year out to 10 years.

Another fairly common structure is an index amortising swap (IAS), in which the amortisation schedule is
driven dynamically by some function of a reference index. The function is usually a ratchet, i.e., the notional
can decrease only. Such instruments may be used to hedge MBS with prepayment optionality. A balance
guarantee (or guaranty) swap is similar to an IAS except where the amortisation schedule exactly matches the
actual schedule. These can be modelled by simulating IAS under a range of different (but likely) prepayment
schedules, and taking some conservative outcome as the price.

11.57: Market data, 11.58: Forward-Forward Vols, 11.59: Correlation matrix, 11.60 σ(i).ρ(k,i), 11.61: Very long-
step Sampling

These worksheets are duplicates of 11.37-11.41.

11.62 Snowball

This worksheet demonstrates how to use a single realisation of the fixing of each forward rate generated in
11.61 to compute the sum of the discounted semi-annual cash flows of a 7-year snowball that pays 7% in year
1 and                                                           thereafter subject to               where
starts at 2.0% and increments by 25bp each period. For each realisation, the breakeven fixed spread that must
be paid quarterly in return for these exotic cash flows is computed. It employs a one-input data table to re-
compute the breakeven margin for the snowball using two antithetic pairs of 500 simulations. Averaging over
these values gives the derivative’s risk-neutral breakeven margin under the BGM model.

11.63 Snowball with calls

36
This turns out not to be too far away from the average breakeven margin for the spread floaters across all
maturities considered.
The call strip makes this an example of a backward-forward structure. Handling call strips (or other forward-
looking conditions) is difficult within simulations. At a particular time step the cash flows that results from
immediate exercise and from its postponement are both known. However, the decision to exercise depends
on the continuation value

where         is the cash flow at time step conditional on the option not being exercised at time step and
the option holder following the optimal stopping policy at each exercise date. In their paper “Valuing
American Options by Simulation: A Simple Least-Squares Approach”, Longstaff & Schwartz propose a least
squares approach that estimates this conditional expected continuation value without recourse to squaring
the simulation time.

[Not studied]

11.64: This worksheet demonstrates the basic principles of incorporating a smile within a numerical tree,
11.65: Market data, 11.66: Floorlet with no smile, 11.67: Floorlet with smile

These worksheets show how to incorporate a smile into the BDT binomial tree. The procedure described does
37                                                 38
not make complete sense , and as an alternative the following is suggested :

Follow the exact same procedure as in the non-smile model except use the formula

The inputs are Black caplet vols for different maturities and strikes, and discount bond prices.

11.66 and 11.67 price a \$100m 5-year Bermudan floorlet, set with a fixed strike, and exercisable on any
coupon date after the first year. If the strike is considerably OTM, so that it is up in the wings of the smile,
then the smile price is 14% higher than the non-smile price. However, if the strike is close to ATM then the
two prices are only 2% apart.

11.68: Market data

Strips of LIBOR discount factors, zero-coupon rates, and gradients, spaced regularly three months apart out to
30 years; Black volatility term structure.

11.69: Building a Hull & White tree with a time-dependent volatility curve

These are probably the other form of tree most commonly used for modelling interest rates. The commonest
implementation uses the following SDE for the short rate:

39
Unlike BDT, this is a normal model and      is not a Black volatility . The model permits mean reversion, and
this additional parameter requires a trinomial model, introducing an additional degree of freedom to that in
BDT.

37
For example, the determination of the strikes   in the formula
nd
on top of page 263 (2 ed.) is puzzling.
38
However, this should not be used for serious applications without validating it against the literature.
40
Suppose that , , and             are the probabilities of up, middle, and down movements at each node and
is the length of the time step. We suppose that the           short rate, , follows the same process as the short
rate. The first stage in building a tree for this model is to construct a tree for a variable that is initially zero
and follows the process

If terms of higher order than                 are ignored, the expected value of                              is
–                     and the variance is             . At time the nodes are chosen to be at
41
where is a positive or negative integer . The probabilities are chosen to match the expected change and
variance of the change in     over the next time interval    . The probabilities must also sum to unity. This
leads to three equations in three unknowns, the solution to which is

The second stage in the tree construction is to convert the tree for  into a tree for . This is accomplished
by displacing the nodes on the -tree so that the initial term structure of interest rates is exactly matched.
Define

We calculate the    ’s iteratively so that the initial term structure is matched exactly.

It is sometimes convenient to modify the standard branching pattern. Two alternative branching possibilities
are “up two/up one/straight along” (useful for incorporating mean reversion when interest rates are low) and
“straight along/down one/down two” (useful for incorporating mean reversion when interest rates are high).
Hull’s technical note explains how to calculate the transition probabilities for these branching methods also.
Most of the time, the standard branching is appropriate. When              , it is necessary to switch to the first
alternative for sufficiently large (call the switching value     ; similarly it is necessary to switch to the second
alternative for sufficiently negative (call the switching value      . Hull and White show that probabilities are
always positive if we set                              and               .

In this worksheet     is assumed to be a constant 10% so that the probabilities , , and depend only
42
on the node and not on the time .       is calculated to be 7, and the tree extends out to          . Neither
does the spreadsheet calibrate the volatility parameter, as this is “derived” by multiplying zero coupon rates

39
The same could be said for BDT but the author appears to skirt over this fact.
40
This follows Technical Note 9 on Hull’s website.
41
Hull says this proves a good choice from the viewpoint of error minimisation.
42
In a practical application the mean-reversion parameter could be calibrated along with the volatility
parameter from a calibration set rich enough in options of different types and maturities. Flavell says this is
difficult to do and it is common to set the mean reversion to a time-independent constant and calibrate the
volatility.
43
by Black vols . The tree is built so that time advances down the rows and the nodes run from left to right
across the columns.

11.70: Pricing a Bermudan caplet with time-dependent volatility curve

This worksheet prices a 5-year Bermudan caplet, struck at 3%, using the tree calibrated in 11.69. The price of
the caplet is 37.285bp. The price of a European version is 37.057bp. The very small difference in price is due
to the relatively low number of times it is optimal to exercise early.

11.71: Building a H&W tree, and calibrating the tree to known swaption prices, 11.72: Pricing a 2 x 4 European
swaption, 11.73: Pricing a 2 x 6 European swaption, 11.74: Pricing a 4 x 4 European swaption

These four worksheets demonstrate how to determine the volatility parameter by calibrating the HW tree to
three European swaptions.

11.76: Market data, 11.77: Building the rate tree, 11.78: Discounting tree, 11.79: X tree, 11.80: Pricing a
Bermudan caplet, 11.81: Pricing European swaptions

These six worksheets are used to price the Bermudan caplet in 11.70 and the European swaptions in 11.71-
11.74 except using a BDT tree for comparison.

Appendix

The BDT and HW models are by far the most common in practical use.

It is feasible to modify the process in the HW tree to become log-normal by using            where follows
44
the normal algorithm . The model may be built by modifying the initial expectation and variance equations to
give a trinomial, mean-reverting, log-normal process. This version is often referred to as a Black-Karasinski
model, and it may also be regarded as an extension of the BDT model.

Another problem with the HW model is that the mean reversion parameter may end up negative when
calibrating to a humped Black volatility curve. Constraining the parameter to be positive results in a
downward-sloping volatility curve with no hump, thus being unable to fit the market data. HW tried to
overcome this problem by introducing a two-factor model. A two-factor model can be expressed as follows:

In such a model changes in the long rate                             and the short rate        are imperfectly
correlated. Hull & White construct a two-dimensional           tree which is trinomial in both dimensions. See
Hull for details.

43
This is wrong in a couple of ways. First, the required vols are forward forward-rate vols and not spot
forward rate vols. Second, the Blacks vols should be normalised by multiplying them by forward rates and not
zero rates.
44
The author reports using the normal version to price a zero-strike floor and finding positive value.

```
To top