In this below, we explain Bond option pricing with forward price BS dynamics.
Functions to load: Bl(), ZBOFwd()
Usage: ZBOFwd(K, T, U, PT, PU, nu)
T: maturity of option
U: maturity of the underlying zero bond
PT: spot price of T-Bond
PU: spot price of U-Bond
nu: standard deviation of log forward price of U-Bond at time
Value: 2-D vector of call and put price.
Denote by the price of -bond at . Then, for , the forward price of -bond delivered at is given by
Since the dynamic is a non-negative martingale with respect to the -forward measure , one can assume
where is -dim BM and is -dim deterministic process. Now, we want to compute
- zero bond call price at , which has payoff at with amount , denoted by
- zero bond put price at , which has payoff at with amount , denoted by .
R-code is written according to the following fact:
Ex. Spot prices for 2-year zero-coupon bond is 0.90, and 5-year zero-coupon bond is 0.72. Volatility of the forward price is given as constant For strike and maturity years, we can compute call and put prices underlying -year bond as follows. With given parameters , one can compute . Then, option price is