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 1and

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