This function is available in R-code (here). See also its upper level page (here).
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)
Arguments:
K: strike
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:
Proposition 1
and
where
.
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