Girsanov Change of Measure and Vasicek Bond Pricing
Summary
The document asks how to apply Girsanov’s theorem to price a zero-coupon bond when the short rate follows a Vasicek process. The questioner changes measure so the rate appears to have zero drift, then simulates the transformed Brownian motion and approximates the resulting integrals. They report prices that seem too low and ask how to initialize the new Brownian motion.
The answer offers an alternative route: use the affine closed-form bond price, whose time dynamics follow by applying Itô’s formula. It also gives the integrating-factor solution for the short-rate process, first with time-varying parameters and then in the constant-parameter case. These formulas provide analytical reference points for checking a simulation. The response does not diagnose the specific measure-change or discretization error, derive the bond-price coefficients, or directly address the initial value of the transformed Brownian motion, so it is not a complete resolution of the original implementation question.
Key ideas
- The Vasicek short-rate model has an affine zero-coupon bond price of the form A(t,T) exp(-r(t)B(t,T)).
- Applying Itô’s formula to the bond price gives its dynamics under the stated model.
- An integrating factor yields a solution for the short rate with time-varying parameters.
- With constant parameters, the general short-rate solution simplifies to a more direct expression.
- The answer gives analytical pricing and rate-process formulas but does not debug the proposed Girsanov simulation.
Tags
Full text
# Use of Girsanov's theorem in bond pricing
# Use of Girsanov's theorem in bond pricing
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^{*}$.
## Answer by Probilitator (score 6)
https://quant.stackexchange.com/a/10789
### Bond Price Dynamics
I do not know the source of the bond dynamics you show above but seeing how we are dealing with an affine model there is a very elegant way to derive those.
Due to the model being affine the bond price is given by $$P(t,T)=A(t,T)e^{-r(t)B(t,T)}$$ you can find the exact formulas for $A(t,T)$ and $B(t,T)$ in this document (or just read the relvant chapter in Brigo Mercurio. If you are curious to know how one arrives at above pricing formula I suggest this paper.
Now that we know above closed form formua, getting the dynamics of $P(t,T)$ is just a matter of applying Itô and using some algebra
### $$
dP(t,T)=r_tP(t,T)dt-\sigma B(t,T)P(t,T)dW_t
$$
### Getting a solution for $r_t$
The generalized Vasicek model is given by $$ dr_t=\kappa(t)(\theta(t)-r_t)d t+\sigma(t)dW_t $$
The unique solution is
$$ r_t=A^{-1}(t)\left[r_0+\int_0^tA(s)\kappa(s)\theta(s)ds+\int_0^t A(s)\sigma(s)dW_s\right] $$ with $A(t)=\exp\left(\int_0^t\kappa(s)ds\right)$
Seeing how you have constant and not time dependant parameters the above simplifies to
$$ r_t=e^{-\kappa t}\left[r_0+\int_0^t\kappa\theta e^{\kappa s} ds+\int_0^t \sigma e^{\kappa s} dW_s\right] $$
P.S.: To arrive at the above solution one simply applies Ito's Formula to $d(r_t \cdot e^{\int_0^t\kappa(s)ds})$Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.