- Multi-period Discount Factors
- Multi-period Interest Rates
- Bond Yields
- Duration
- Forward Interest Rates

A nominal discount factor is the *present value of one unit
of currency to be paid with certainty at a stated future time*.
This definition suffices, whatever the time period. In a
multi-period setting there is one discount factor for every time
period. Thus df(1) could be the present value (at time 0) of $1
certain at the end of time period 1, df(2) the present value at
time 0 of $1 certain at the end of time period 2, etc.. The
vector of such values **df** {1*periods} is known as
the *discount function*. It can be used to value any
vector of cash flows known to be certain. If **cf**
{periods*1} is such a vector, its present value is simply:

pv = df*cf

In this equation, pv is termed the *discounted present
value of the cash flows*.

The one-period example generalizes to a multi-period setting
in another respect. The discount factor for a given period will
equal the sum of the atomic prices for that period. This follows
because the purchase of one unit of every time-state claim for a
specified time will guarantee one unit of the currency at that
period. The cost of such a bundle *is* the cost of one
unit of currency certain at that date, and hence equals the
associated discount factor.

In many countries, nominal discount factors are easily discovered. For example, in the United States, financial publications report recent prices of U.S. Treasury Bills and "Strips", each of which promises a fixed dollar payment at one specified date. Since the Treasury has the power to print dollars, payments on such securities can be considered certain, absent revolution, etc.. The reported prices on any given day thus constitute the discount function at the time.

Real discount factors are another matter. In some countries
the government issues bonds with payments linked to a price
index. Such bonds typically provide both *coupon* payments
at periodic intervals and a final *principal* payment at *maturity*.
If there are enough issues with sufficiently different
maturities, at least some elements of discount function can be
determined.

Consider a case in which there are three bonds. The one-year bond promises a payment of 103 real or "constant dollars" (e.g. Apples) in a year. The two-year bond promises a payment of 4 constant dollars in one year and 104 in two. The three-year bond promises a payment of 3 constant dollars in years 1 and 2 and 103 in year 3. The current prices are $100, $101 and $98, respectively. What are the real discount factors (i.e. the present value of $1 of purchasing power in each of the next three years?).

To answer the question we construct a {periods*bonds} cash
flow matrix **Q**:

Bond1 Bond2 Bond3 Yr1 103 4 3 Yr2 0 104 3 Yr3 0 0 103

and a price vector **p** {1*periods}:

Bond1 Bond2 Bond3 100 101 98

The price of each bond should equal its discounted present value. Thus:

df*Q = p

where **df** {1*periods} is the discount
function.

We wish to find **df**, given **Q**
and **p**. Multiplying both sides of the equation by
inv(Q) gives:

df = p*inv(Q)

In this case, **df** {1*periods) is:

Yr1 Yr2 Yr3 0.9709 0.9338 0.8960

Thus a claim for 1 real dollar in year 1 is worth $0.9709 now, a claim for 1 real dollar in year 2 is worth $0.9338 now, and so on. Any desired set of real payments over the next three years can be valued using this discount function.

To find the combination of such bonds that will replicate a desired set of cash flows we utilize the formula:

Q*n = c

where **n** {bonds*1} is a portfolio of bonds and
**c** {periods*1} is the desired set of payments.
From this it follows that **n=inv(Q)*c**. Thus if
the desired set of payments is **c**:

Yr1 300 Yr2 200 Yr2 100

The replicating portfolio is **n**:

Bond1 2.8107 Bond2 1.8951 Bond3 0.9709

Whether for real or nominal units of a currency, if a discount
function can be determined from the values and characteristics of
default-free instruments, any corresponding vector of cash flows
can be valued and replicated. Moreover, any such vector can be
"traded for" any other with the same present value. The
set of such combinations forms the *default-free opportunity
set* available to the Investor. The Analyst can help
determine the set, but ultimately the Investor must select either
one of its members or a vector of cash flows that is not fully
default-free.

While a discount factor provides a natural and direct measure
of the present value of a certain future cash flow, it is
sometimes convenient to focus on a related and more familiar
figure. If an investment grows from a value of **x**
to a value of **x*(1+i)** in one period, it can be
said to have "earned interest" at the rate **i**.
The concept can be extended to multiple periods by assuming that
interest compounds once per period. Thus if an investment grows
from V0 to V2 in two periods, the equivalent interest rate is
found by solving the equation:

(1+i)*(1+i) = V2/V0

or:

(1+i)^2 = V2/V0

The ratio of the ending value to the beginning value is termed
the (t-period) *value relative*. For an investment held t
periods, the associated interest rate is computed from:

(1+i) = (Vt/V0)^(1/t)

Interest rates are generally used to describe securities for
which payments are certain. In a one-period setting, such
securities can be termed *riskless*. In a multi-period
setting it is preferable to describe them as *default-free*
since their values may fluctuate, making them risky if sold
before the final payment has been made.

There is a one-to-one relationship between a discount factor
and the corresponding interest rate. If df(t) is the discount
factor for time t, one unit of the numeraire will grow to 1/df(t)
units with certainty by time t. Thus i(t), the *default-free
interest rate for time t* is given by:

i(t) = ((1/df(t))^(1/t)) -1

With the value of the "t-period interest rate", one
can discount any certain payment to be obtained at that date. Let
P(t) be an amount to be paid at t and i(t) the corresponding
interest rate. Then the present value *pv*is given by:

pv = P(t) / ( (1+i(t)) ^ t)

Since there is a one-to-one relationship between a discount factor and the associated interest rate, either may be used to calculate a present value. Moreover, give one of them, the other can be determined with little effort.

Consider the following discount function **df**:

Yr1 Yr2 Yr3 0.9400 0.8800 0.8200

The corresponding value relatives are given by **vr =
1./df**:

Yr1 Yr2 Yr3 1.0638 1.1364 1.2195

Using the MATLAB notation of [1:3] to generate the vector [1 2
3], the interest rates can be computed as **i =
(vr.^(1./[1:3]))-1**:

Yr1 Yr2 Yr3 0.0638 0.0660 0.0684 or: Yr1 Yr2 Yr3 6.38% 6.60% 6.84%

These values, when plotted, give one version of the current *yield
curve* or *term structure of interest rates*. In this
case it is upward-sloping, with long-term rates greater than
short-term rates.

In these calculations, we have computed interest rates assuming compounding once per period. One could as easily use a definition based on compounding more than once per period; or not at all; or continuously. When processing an interest rate, it is important to know which definition was used so that errors do not creep into subsequent calculations. The possibility of alternative definitions makes the use of discount factors a safer approach. Moreover, a case can be made for the thesis that a discount factor, being a price, is a fundamental characteristic of an economy, while an interest rate is a derived construct. This being said, interest rates are ubiquitous, helpful for comparisons of prices of payments at different times, and necessary for communication with those used to more traditional characterizations of financial markets.

Many bonds, both traditional and index-linked, provide coupon
payments periodically and a final principal payment at maturity.
Consider, for example, a bond that provides payments **cf**
of:

Yr1 6 Yr2 6 Yr3 106

Given the previous discount function, such a bond has a
present value of $97.84. Based on its initial *par value*
of $100, the yield is 6% per year. However, given the fact that
it is selling for $97.84, the effective yield is greater. To
reflect this, analysts often use a derived figure, the *yield-to-maturity*.
This is a constant interest rate that makes the present value of
all the bond's payments equal its price. In this case, we seek a
value for i that will satisfy the equation:

6/(1+y) + 6/((1+y)^2) + 106/((1+y)^3) = 97.84

This can be done by trial and error, preferably using an intelligent algorithm to find the result (to a desired degree of accuracy). In this case, i is approximately 6.82%.

A set of yields-to-maturity for bonds with varying coupons and maturities will typically not plot on a single curve. Nonetheless, some analysts crossplot yield-to-maturity and maturity date for a set of bonds, then fit a "yield curve" through the resulting scatter of plots. The result may be helpful, but should not be used for valuation purposes.

The maturity of a bond provides important information for its
valuation. The values of longer-term bonds are generally affected
more by changes in interest rates, especially longer-term rates.
However, for coupon bonds, maturity is a somewhat crude indicator
of interest rate sensitivity. A high-coupon bond will be exposed
more to short and intermediate-term rates than will a low coupon
bond with the same maturity, while a zero-coupon bond will be
exposed only to the interest rate associated with its maturity.
To provide a somewhat better measure than maturity, Analysts
often compute the *duration* of a set of cash flows.

Let **df** be a {1*periods}vector of discount
factors and **cf** a {periods*1} vector of cash
flows. The duration of **cf** is a weighted average
of the times at which payments are made, with each payment
weighted by its present value relative to that of the vector as a
whole. In the previous example, the bond has cash flows **cf**:

Yr1 6 Yr2 6 Yr3 106

The market discount function **df** is:

Yr1 Yr2 Yr3 0.9400 0.8800 0.8200

The present values of the cash flows are **v = df.*cf''**:

Yr1 Yr2 Yr3 5.6400 5.2800 86.9200

To compute weights we divide by total value, **w =
v/(df*cf)**, giving:

Yr1 Yr2 Yr3 0.0576 0.0540 0.8884

In MATLAB, the expression **[1:3]'**produces the
{periods*1} vector of time periods:

Yr1 1 Yr2 2 Yr3 3

The duration, given by **d = w*([1:3]')**, is
2.8307 years -- somewhat less than the maturity of 3 years.

Well and good, but what use can be made of duration? In some
circumstances, quite a bit. In others, somewhat less. We make the
calculation to better understand the reaction of the value of a
vector of cash flow to a change in one or more interest rates. In
practice, of course, many such rates along the term structure may
change at the same time. In general, if the discount function
changes from **df1** to **df2**, the
present value of cash flow vector **cf** will
experience a change in value equal to:

dV = (df2 - df1)*cf

How can one number summarize the effect on value of a change in potentially many different interest rates along the discount function?

Of necessity, a change in the yield-to-maturity of a bond will
cause a predictable change in the value of that bond or set of
cash flows, since there is a one-to-one relationship between the
two. The relationship holds as well for most cash flow vectors.
In such case the term *internal rate of return* is
utilized, instead of yield-to-maturity. If there are sufficiently
many positive and negative cash flows in a vector, the internal
rate of return may not be unique, causing potential mischief if
one relies upon it. However, this cannot happen if the vector
consists of a series of negative (positive) flows, followed by a
series of positive (negative) flows -- that is, if there is only
one reversal of sign.

In practice, a bond's duration is usually calculated with a discount function based on its own yield-to-maturity, that is:

[ 1/(1+y) 1/((1+y)^2) 1/((1+y)^3) ]

Now, consider **c(t)**, the cash for the t'th
period. Using the bond's yield-to-maturity, Its present value is:

v(t) = c(t)/((1+y)^t)

If there is a very small change **dy** in y, the
change in v(t) will be:

dv(t) = (c(t)*(-t*(1+y)^(-t-1))) * dy or dv(t) = (v(t)*-t) * (dy/(1+y))

Summing all such terms we have the total change in value **dv**:

dv = sum(dv(t)) = - sum(v(t)*t) * (dy/(1+y))

Finally, the proportional change in value, **dv/v**
is:

dv/v = sum(dv(t)/v) = - sum((v(t)/v)*t) * (dy/(1+y)

But the term inside the parentheses preceded with "sum" is the duration, calculated using the bond's own yield-to-maturity. Thus we have:

dv/v = - d * (dy/(1+y))

Sometimes the duration is divided by (1+y) to give the *modified
duration*. Letting **md** represent this, we
have:

dv/v = - md * dy

Thus the modified duration indicates the negative percentage change in the value of the bond per percentage change in its own yield-to-maturity. The minus sign indicates that an increase (decrease) a bond's yield-to-maturity is accompanied by a decrease (increase) in its value.

Duration (modified or not) is of no interest unless one can
establish a relationship between a bond's own yield-to-maturity
and some market rate of interest. For example, assume **y =
y20+.01**, where y20 is the interest rate on 20-year zero
coupon government bonds. In this case:

dy = dy20

and:

dv/v = - md * dy20

which relates the percentage change in the bond's value to the change in a market rate of interest.

The concept of duration that is especially relevant for
Analysts who counsel the managers of *defined-benefit pension
funds*. Many such funds have obligations to pay future
pensions that are fixed in nominal (e.g. dollar) terms, at least
formally. Moreover, the bulk of the cash flows must be paid at
dates far into the future. The present value of the liabilities
of such a plan can be computed in the usual way and its
yield-to-maturity (internal rate of return) or *discount rate*,
determined, using market rates of interest. In many cases, the
discount rate will be very close to a long-term rate of interest
(e.g. that for 20-year bonds). Since term structures of interest
rates tend to be quite flat at the long end, any change in the
long-term rate of interest will be accompanied by a roughly equal
change in the discount rate for a typical pension plan of this
type. Thus the duration of the plan's cash flows provides a good
estimate of the sensitivity of the present value of its
liabilities to a change in long-term interest rates. Any
imbalance between the duration of the assets in a pension fund
held to meet those liabilities and the duration of the
liabilities may well provide an indication of the extent to which
the fund is taking on *interest rate risk*.

In our most recent example, the discount function **df**
was:

Yr1 Yr2 Yr3 0.9400 0.8800 0.8200

with associated interest rates:

Yr1 Yr2 Yr3 0.0638 0.0660 0.0684

For example, $1 invested at a rate of 6.60% per year,
compounded yearly, would grow to $1/0.88 dollars at the end of
two years. This interest rate could be termed the *2-year spot
rate* to emphasize the fact that it assumes an investment
that begins immediately and lasts for two years.

A different type of interest rate involves an agreement made
immediately for investment at a later date and repayment at an
even later date. For example, one might agree today to borrow $1
in a year and repay $1 plus a stated amount of interest one year
later (i.e. two years' hence). The interest rate in question is
termed a *forward interest rate* to emphasize the fact
that it covers an interval that begins at a date forward (i.e. in
the future).

Of particular interest are forward rates covering periods that last only one period. Such rates can be denoted by their starting date. Hence the 1 year forward rate covers the period from the end of year 1 to the end of year 2, but on terms negotiated today. Given the discount function, it is possible to arrange today to borrow 1/df(1) dollars at the end of year one and pay 1/df(2) dollars at the end of year 2 for a zero net investment, since each "side" will have a present value of $1. Hence, arbitrage decrees that any forward contract covering the same period will have the same results. This insures that:

(1/df(1)) * (1+f(1)) = (1/df(2))

where **f(1)** is the forward rate for the period
beginning at the end of year 1 and ending at the end of year 2.

Re-arranging the equation above gives the simpler form:

f(1) = (df(1)/df(2)) - 1

More generally:

f(t) = (df(t)/df(t+1)) - 1

In the special case in which t = 0, the "forward rate" will, in fact, be the spot rate for a one-year loan, since df(0), the present value of $1 today, is $1.

To obtain the full vector of forward rates, we create a lagged
vector **dfl** of all but the last discount factor,
preceded by the present value of $1 today:

dfl = [ 1 df(1:2)] Yr1 Yr2 Yr3 1.00 0.94 0.88

Dividing each element of the original discount function by the
corresponding element in this vector, then subtracting 1 gives
the forward rate vector **f**:

f = (dfl ./ df) - 1 f(0) f(1) f(2) 0.0638 0.0682 0.0732

Thus one dollar grows to $1.0638*1.0682 in two years and $1.0638*1.0682*1.0732 in three years. Of necessity, these calculations reach the same conclusion as do those based on the respective spot interest rates. However, the latter use different rates for the same year (e.g. year 2), depending on the investment being analyzed, while the former do not. Thus forward rates are closer to economic reality and can be used with far less risk of error.

Forward rates are especially useful when an Analyst is trying
to predict future levels of inflation for estimating liabilities
of a pension plan with benefits tied to salary levels, which are
in turn, affected by changes in the cost of living. A standard
assumption holds that a forward interest rate is the sum of two
components: (1) a *liquidity premium* (sometimes called a *term
premium*) and (2) an expectation concerning the spot rate
that will hold at the time. Thus the two-year forward rate in our
example (7.32%) might be considered to be the sum of a normal
liquidity premium for such obligations of 1.0% and a *consensus*
expectation of market participants that the one-year spot rate
will equal 6.32% for year 3. The spot rate, in turn, may be
assumed to equal an expected one-year *real return* of,
say, 1.5% plus an expected level of inflation equal to
6.32%-1.5%, or 4.82%. Combining the two calculations gives:

Forward Rate - Liquidity Premium - Expected Short-term Real Return ---------------------------------- Expected Inflation

Here:

7.32 -1.00 -1.50 ------ 4.82

A common set of assumptions holds that liquidity premia increase at a decreasing rate as maturity increases and that expected short-term real returns are constant. This implies that the term structure of forward rates will have the same shape as the liquidity premium function in periods in which inflation is expected to remain constant. If the forward curve is steeper, inflation is presumably expected to increase. If it is flatter or downward-sloping, inflation can be expected to decrease.

Procedures such as this applied to the set of forward interest rates allow an Analyst to estimate levels of future inflation that are consistent with current market yields. As usual, the estimates are only as good as the assumptions, but are likely to be better than the use of some average historic inflation level, especially in periods in which term structures of interest rates are unusually steep, unusually flat, or actually downward-sloping.