Assume that we want to calculate the time $t=0$ price of a bond: $B(0,T) = E_P[\exp(-\int_0^T r_s ds)]$, where $r$ is the interest rate following the SDE $dr_t=k(\theta-r_t)dt+\sigma dB_t=b(r_t)dt+\sigma dB_t$.

I was shown that one could write the price as

$B(0,T) = E_{\hat{P}}[\exp(-\int_0^TB^{*}_sds)\exp(\int_0^Tb(B^{*}_s)dB^{*}s-\frac{1}{2}\int_0^Tb^2(B^{*}_s)ds)]$

where $B_t^{*}$ is the "new" Brownian motion from the Girsanov theorem.

However, when I try to implement it, it results in prices that are too low. Here is what I did:

Since $dr_t=b(r_t)dt+\sigma dB_t$, Girsanov's theorem gives a new Brownian motion with dynamics $dB_t^{*}=\frac{1}{\sigma}b(r_t)dt+dB_t$, and the dynamics of $r_t$ becomes $dr_t=\sigma dB_t^{*}$. So $r_t=r_0+\sigma B_t^{*}$ and $dB_t^{*}= \frac{1}{\sigma}b(r_0+\sigma B_t^{*})dt+dB_t$. With this last expression I tried to use Euler discretization to find $B_t^{*}$, then finally I approximated the three integrals as sums.

What am I doing wrong? Secondly, I also wonder what the starting point of $B_t^{*}$ should be, i.e. $B_0^{*}$.

  • 1
    $\begingroup$ @ nothesharpestknife : IMO you should ask this question at the quant stack exchange quant.stackexchange.com Regards $\endgroup$
    – TheBridge
    Mar 31, 2014 at 12:13

1 Answer 1


Assuming you didn't mean to overload "B" for both the bond price and Brownian motion, why not use the analytic expression for the bond price (Vasicek). In addition, your short rate and log(bond price) will be jointly gaussian.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .