Level Principal Swaptions (Black-76 model) |

**Level Principal Swaptions
(Black-76 model)**

The functions in this category compute price, risk management statistics ("Greeks") and implied volatilities for European swaptions using the Black-76 model. The functions receive array arguments to define the zero curve (curve dates and zero rates or discount factors). The Zero Curve Methodology section discusses the form of these arrays and relevant restrictions in greater detail.

**ReceiverSwaption_Black(argument
list…)**

**PayerSwaption_Black(argument
list…)**

These functions value
European swaptions on level principal structures. If needed,
short first stub periods are generated. The calling functions
allow the user to choose from six different calculations, indexed
by an alphabetic **Output_Type** switch:

P |
option price |

D |
delta (derivative with respect to forward yield) |

G |
gamma (second derivative with respect to forward yield) |

V |
vega (derivative with respect to volatility, 1% change) |

T |
theta (time decay over next day) |

I |
implied yield volatility |

An **Output_Type** may be
entered in either upper or lower case, and the user many
substitute the entire word for the first letter if so desired
(only the first letter is scanned). Delta and gamma are returned
in terms of swaps (i.e. an at the money swaption would have a
delta of approximately +/-0.5). The price, vega, and theta are in
terms of percentage of the notional of the swap.

The functions use the following arguments:

Argument |
Description |
Restrictions |

Output_Type |
output returned by function | P, D, G, V, T or I (see above) |

Valuation_Date |
valuation date (e.g. today) | valid Excel date number |

Swaption_Maturity_Date |
expiry date of the swaption | valid Excel date
number >= valuation date |

Swap_Start_Date |
start date of swap | valid Excel date
numbers >= Swaption_Maturity_Date |

Term_in_Months |
term of the underlying swap in months | > 0 (integer) |

Swap_freq |
number of fixed side payments per year | 1, 2, 4, or 12 |

Year_Basis |
year basis used in determining payments | 360 or 365 |

Fwd_Par_Swap_Rate |
current fair fixed swap rate in decimal form (e.g. six percent entered as 0.06) [see FwdParSwapRate function] | > 0 |

Strike_Rate |
strike rate of the swaption in decimal form | > 0 |

Zero_Dates |
array of zero coupon curve dates | strictly
ascending orderThe first date of this array must be Valuation_Date |

Zero_Rates |
array of continuously compounded riskless rates in decimal form (e.g. six percent entered as 0.06) corresponding to Zero_Dates | > 0 |

Yield_VolorOpt_Price |
underlying swap rate volatility in decimal form, or market price of the swaption (when Output_Type = I) | > 0 |

Holidays |
array of holiday dates | valid Excel date
numbers strictly ascending order |

Convention |
date convention used in generating swap dates | 0 = no adjustment 1 = Following business day 2 = Modified following 3 = Previous |

**Swaption_Black(argument
list…)**

This function is identical
to those above, except that there is an extra argument (at the
beginning of the argument list) which permits the user to choose
between three different types of swaptions using a **Swaption_Type**
alphabetic switch:

R |
receiver swaption |

P |
payer swaption |

S |
straddle (combination of payer + receiver) |

© 1995-98 Leap of Faith Research Inc.