I'm struggling with a (probably very simple) problem. What i like to do is the following:

Lets assume we got a bullet bond (no calls, etc) which is currently trading above par. Under the assumption that the yield curve will stay the same this bond will experience some price gains during his lifetime until some point in time, where price will start to move to par (rolldown effect). My intention is to calculate this point in time.

Starting with the TVM Equation the current value of the bond can be calculated:

$$ P_0 = \Big( \sum_{t=1}^{T} \frac{C}{(1+r_t)^t} \Big) + \frac{N}{(1+r_T)^T}\\ where\\ r_t = \text{discount rate for a t-year bond}\\ C = \text{Coupon} \\ N = \text{Principal of the bond} $$

Now I'd like to calculate the derivative of the price with respect to time $\frac{\mathrm d}{\mathrm d t} \text{ or } \frac{\mathrm d}{\mathrm d T}$ and this is where I struggle. Does anybody know how to solve this?

  • $\begingroup$ I think your notation is a little bit confusing: i normally denotes interest. And it's not exactly clear what you're asking: are you trying to calculate the derivative of the price with respect to time? Perhaps you're trying to calculate derivative with respect to yield (effective duration) instead? $\endgroup$ – lagrange103 May 31 '18 at 8:25
  • $\begingroup$ I changed the notation, sorry for that. What I would like to do is calculate the derivative of the price with respect to time. I'd like to know how long i can hold the bond and experience price gains until price starts do decrease and approach par. $\endgroup$ – R. Steigmeier May 31 '18 at 9:26
  • $\begingroup$ maybe the problem has to be restated like this: $$ \max_{T \to 0} f(T)\text{, where f(T) = }P_0\text{ above} $$ $\endgroup$ – R. Steigmeier May 31 '18 at 10:40
  • 2
    $\begingroup$ This user asked a question and then after I had answered it he changed it to something quite different. $\endgroup$ – Dom May 31 '18 at 12:34
  • 1
    $\begingroup$ Dom, I didn't want to change the question (which I technically didn't, i just added some context to clarify what I was looking for). Really appreciate your effort and apologize for any inconvenience that may have caused. I'm still struggling how to approach this mathematically. $\endgroup$ – R. Steigmeier May 31 '18 at 13:22

The derivative is easy to compute. If $$ f(x)=(1+r)^x \rightarrow f(x)=\exp(x \ln (1+r)) $$ so $$ \frac{\partial f(x)}{\partial x} = \ln(1+r) \exp(x \ln (1+r)) = f(x) \ln(1+r) $$ In the case of the bond we therefore have at time $t_0$ $$ P(t_0) = \sum_{i=1}^{N} \frac{c}{(1+r_i)^{t_i-t_0}} + \frac{1}{(1+r_N)^{t_N-t_0}} $$ The time exponents represent the number of years to the payment. As time passes, $t_0$ increases and the time differences in the exponents decrease. We can take the derivative with respect to $t_0$ to see how the bond price changes over a small time period.

First however, we set the discount rate $r_t$ to be a constant yield $y$ as it is in the definition of the yield to maturity. We can then factorise the price as follows $$ P(t_0) = (1+y)^{t_0} \left( \sum_{i=1}^{N} \frac{c}{(1+y)^{t_i}} + \frac{1}{(1+y)^{t_N}} \right) . $$ Differentiating, we get $$ \frac{\partial P(t_0)}{\partial t_0} = P(t_0) \ln(1+y) $$ For $y$ small we can write this as $$ \frac{1}{P} \frac{\partial P}{\partial t} \simeq y. $$ In other words, the full price of the bond grows exponentially at a rate $\ln(1+y)$ which is approximately equal to the yield-to-maturity of the bond $y$. This is the bond's full price. This full price will also drop by an amount $c$ the moment a coupon is paid.

So the price action of the bond (assuming a constant flat yield) is a combination of both the exponential growth at the yield $y$ between coupon dates and a sudden drop of $c$ on the coupon date. If the yield is not constant then there will be some random variability around this sort of general form.

In this way a bond will end up with a full price of (1+c) just before maturity and par at maturity. The clean price which subtracts the accrued coupon will be smooth through the coupon payment by construction.

You may wonder about the clean price. By definition, for an annual coupon bond the clean price is given by subtracting the accrued coupon to $P_C(t) = P(t) - (t-t_0) c$. It is a linear function of $t$.

So the clean price in terms of yield, at a time $t$ close to $t_0$ is given by $$ P(t) \simeq \frac{\partial P(t_0)}{\partial t_{0}} (t-t_{0}) - (t-t_0) c $$ which becomes $$ P(t) \simeq (t-t_0) \left( P(t_0) y- c \right) $$ Assuming $P(t_0) \simeq 1$, the clean price pulls up to par if $y>c$ and pulls down to par if $y<c$. The true dependence is a combination of a difference between exponential and linear dependence which are both equal on the coupon payment date.

  • $\begingroup$ Hi Dom, thank you very much for your answer. I do understand clean & dirty prices. What I was looking for was a little bit different. I updated my question with an example on hope this clarifies what I'am looking for. $\endgroup$ – R. Steigmeier May 31 '18 at 11:27
  • $\begingroup$ It is very unhelpful to ask a specific question and to then change that question after someone has answered it. $\endgroup$ – Dom May 31 '18 at 12:32

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