European and American Generic Option Functions |
European and American Generic Option FunctionsGeneric option values and risk measures can be computed on a number of different underlyings, including currencies, commodities, futures, stock indexes, and non-dividend-paying stocks. Four option models have been implemented in the current version of the software: the payout-adjusted European Black-Scholes (BS), the control-variate American binomial model (Bin), the control-variate American trinomial model (Trin), and the American option approximation due to Ho, Stapleton, and Subrahmanyam (HSS). These models are discussed in Option Methodology.
There are eight calling or "wrapper" functions comprising the set of generic option functions:
EuroCallBS(argument list ) | European call using the BS model |
EuroPutBS(argument list ) | European put using the BS model |
AmerCallHSS(argument list ) | American call using the HSS model |
AmerPutHSS(argument list ) | American put using the HSS model |
AmerCallBin(argument list ) | American call using the Bin model |
AmerPutBin(argument list ) | American put using the Bin model |
AmerCallTrin(argument list ) | American call using the Trin model |
AmerPutTrin(argument list ) | American put using the Trin model |
Each of the eight wrapper functions allow the user to choose from eight different calculations, indexed by an alphabetic Output_Type code:
P | option price |
D | delta (derivative with respect to price |
G | gamma (second derivative with respect to price) |
V | vega (derivative with respect to volatility, 1% change) |
T | theta (time decay over next day) |
R | rho (sensitivity to the riskless rate, per 1% change) |
Y | Yield rho (sensitivity to the payout rate, per 1% change) |
I | implied 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).
The functions use the following arguments:
Argument | Description | Restrictions |
Output_Type | desired option calculation | P, D, G, V, T, R, Y, or I (see above) |
Asset_Price | price of the underlying asset | > 0 |
Strike | strike price of the option | > 0 |
Payout_Rate | continuously compounded asset payout rate in decimal form (e.g. six percent entered as 0.06) | >= 0 |
Riskless_Rate | continuously compounded riskfree interest rate in decimal form (e.g. six percent entered as 0.06) | >= 0 |
Time_in_Years | option maturity in years | >= 0 |
Vol, or Opt_Price |
underlying asset price volatility in decimal form (e.g. twenty percent entered as 0.20), or market price of the option (when Output_Type = I) | > 0 |
Tree_Steps | extra argument used in binomial and trinomial models to specify number of tree steps in the lattice | > 0 <= 300 |
In the case of a stock index option, Payout_Rate is interpreted as the annualized dividend payout rate. In the case of a commodity option, Payout_Rate is interpreted as the annualized percentage cost of storing the asset less and convenience yield (excluding interest). In the case of a foreign exchange option, Payout_Rate is interpreted as the annualized foreign riskless rate of interest. For use with futures options, set Asset_Price equal to the futures price and set Payout_Rate equal to the riskless rate of interest. For equity options on non-dividend paying stocks, set Payout_Rate equal to zero.
© 1995-98 Leap of Faith Research Inc.