I am new to the pricing of bonds:

Suppose that I would like to price a floating-rate bond with par value \$100, with maturity at $T$ years from now, paying coupons semi-annually.

Suppose that $r_{n-0.5,n} $ denotes the annual interest rate from time $n-0.5$ to time $n$, where $n \in \Pi:=\{ 0.5, 1, \ldots, T-0.5, T\}.$ For each $n \in \Pi $, let the coupon rate $c_n$ be defined by $$ c_n := \frac{r_{n-0.5,n}}{2}. $$ Let $r_0:= 7.5 \%$ and that the yield curve is flat at $7.5 \%$ as well.

Therefore, the cash-flow of the floating-rate bond is given by

Time $0$: Payment of \$$100$.

Time $1/2$: Receipt of \$($50r_{0,0.5}$).


Time $T-1/2$: Receipt of \$($50r_{T-1,T-0.5}$).

Time $T$: Receipt of \$($100+50r_{T-0.5,T}$).

I am interested in computing

(i) the present value of the bond;

(ii) the Macaulay's duration of the bond.

First question:

Seemingly, by some arguments of replicating portfolio, one can always show that any bond with this structure has present value equal to the par value (page 4 of the following link):


Therefore, it seems that by the same argument, the present value is \$$100$. Is this correct?

Second question:

I am totally lost. By the definition of Macaulay's duration, for any bond with constant yield $i$ and coupon payments $c_{t_1}, \ldots, c_{t_k}$ at times $t_1, \ldots, t_k$ respectively, the Macaulay's duration is defined by $$ D= \sum_{j=1}^k t_j \bigg[ \frac{ \frac{c_{t_j}}{(1+i)^{t_j}} }{B} \bigg], $$ where $B$ denotes the bond value. This clearly has no use in this problem as the coupon cash-flows are unknown. I notice that there are similar discussions on this theme, but the answer seems impossible to follow for me, e.g.

Duration. Floating rate note

Can anyone write down an explicit formula to compute the duration, as clear as possible, for a beginner like me? Thanks.

  • $\begingroup$ The first coupon payment is known, and this allows you to compute the duration (which will be small). $\endgroup$
    – Alex C
    Commented Oct 8, 2019 at 17:47
  • $\begingroup$ @AlexC Why? Can you please write down the explicit formula? Based on the definition, the coupons at all times have to be used to compute the duration. $\endgroup$
    – Richard
    Commented Oct 8, 2019 at 17:49
  • $\begingroup$ Just set $k=1$ in your formula, i.e. take only the first coupon into account, the others have zero duration since they will be reset as interest rates change. You get $D=-\frac{1}{B}\frac{c_1/2}{(1+i/2)^{t_1}}$ $\endgroup$
    – Alex C
    Commented Oct 8, 2019 at 19:19
  • $\begingroup$ @AlexC What do you mean by “reset”? Why are the other coupons zero? $\endgroup$
    – Richard
    Commented Oct 9, 2019 at 3:05

2 Answers 2


The answers to both your questions can already be found in Duration. Floating rate note, Duration of a floating rate bond, or the notes you linked to, but I'll write out the details for a non-replicating portfolio argument.

The value of a floating rate bond (floater) will always be equal to par assuming that the coupon reset is equal to the prevailing 6-month rate, $r_{n-0.5, n}$. To see this, start by considering $P(T-0.5)$, the price of the bond at $T - 0.5$. Since $P(T-0.5)$ is the present value (at time $T-0.5$) of the cash flows received at the maturity of the bond , we have:

$$ P(T-0.5) = \frac{100 + 100 \cdot \frac{r_{T-0.5,T}}{2}}{1 + \frac{r_{T-0.5,T}}{2}} = 100 $$

Similarly, $P(T-1)$ is equal to the present value of the sum of $P(T-0.5)$ and the coupon payment received at $T - 0.5$, $100 \cdot r_{T-1, T-0.5}/2$:

$$ P(T-1) = \frac{P(T-0.5) + 100 \cdot \frac{r_{T-1,T-0.5}}{2}}{1 + \frac{r_{T-1,T-0.5}}{2}} = 100 $$

By continuing to run this argument "backward", we conclude that $P(0)$, the present value of the floater, is 100.

The Macaulay Duration formula you cite above is generally only defined for a bond with fixed cash flows and does not apply here. Another way to proceed is to first calculate the modified duration $D_{Mod} = - \frac{1}{P}\frac{\partial P}{\partial y}$, where $y$ is the yield of the bond, and then use the relationship $D_{Mac} = D_{Mod}*(1+y/2)$ (assuming semi-annual compounding).

Now, our argument above shows that any time $t$ between 0 and 0.5, the price of the floater is given by:

$$ P(t,y) = \frac{100 + 100 \cdot \frac{r_{0,0.5}}{2}}{(1 + \frac{y}{2})^p} $$ where $p$ is the fraction of the 6-month period corresponding to the interval $(t, 0.5)$.

Then: $$ D_{Mod} = - \frac{1}{P}\frac{\partial P}{\partial y} = \frac{\frac{p}{2}}{1 + \frac{y}{2}} $$

We conclude that $D_{Mac} = \frac{p}{2}$ and in particular that at $t=0$, $D_{Mac} = \frac{1}{2}$.


On valuation this may be useful: http://www.fimmda.org/uploads/general/Rajwade16may.pdf

  • $\begingroup$ Thanks. I have edited my question. The problem with your approach is that the coupon payment streams are unknown, since we do not know the values $r_{n-0.5,n}$.... $\endgroup$
    – Richard
    Commented Oct 8, 2019 at 17:28
  • $\begingroup$ Please see the link. $\endgroup$
    – sane
    Commented Oct 8, 2019 at 17:56
  • $\begingroup$ I saw this before, but don’t really think that this is helpful... $\endgroup$
    – Richard
    Commented Oct 8, 2019 at 18:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.