The AsianOption
function evaluates an Asian-style
option on a common stock using an analytic solution for continuous
geometric average price. The option value, the common first
derivatives ("Greeks") as well as the calling parameters are returned.
# S3 method for default
AsianOption(averageType, type, underlying, strike,
dividendYield, riskFreeRate, maturity,
volatility, first=0, length=11.0/12.0, fixings=26)
The AsianOption
function returns an object of class
AsianOption
(which inherits from class
Option
). It contains a list with the following
components:
Value of option
Sensitivity of the option value for a change in the underlying
Sensitivity of the option delta for a change in the underlying
Sensitivity of the option value for a change in the underlying's volatility
Sensitivity of the option value for a change in t, the remaining time to maturity
Sensitivity of the option value for a change in the risk-free interest rate
Sensitivity of the option value for a change in the dividend yield
Specifiy averaging type, either “geometric” or “arithmetic”
A string with one of the values call
or put
Current price of the underlying stock
Strike price of the option
Continuous dividend yield (as a fraction) of the stock
Risk-free rate
Time to maturity (in fractional years)
Volatility of the underlying stock
(Only for arithmetic averaging) Time step to first average, can be zero
(Only for arithmetic averaging) Total time length for averaging period
(Only for arithmetic averaging) Total number of averaging fixings
Dirk Eddelbuettel edd@debian.org for the R interface;
the QuantLib Group for QuantLib
When "arithmetic" evaluation is used, only the NPV() is returned.
The well-known closed-form solution derived by Black, Scholes and Merton is used for valuation. Implied volatilities are calculated numerically.
Please see any decent Finance textbook for background reading, and the
QuantLib
documentation for details on the QuantLib
implementation.
https://www.quantlib.org/ for details on QuantLib
.
# simple call with some explicit parameters, and slightly increased vol:
AsianOption("geometric", "put", underlying=80, strike=85, div=-0.03,
riskFree=0.05, maturity=0.25, vol=0.2)
Run the code above in your browser using DataLab