american {ragtop} | R Documentation |
Price one or more american-exercise options
Description
Use a control-variate scheme to simultaneously estimate the present values of a collection of one or more American-exercise options under a default model with survival probabilities not linked to equity prices.
Usage
american(
callput,
S0,
K,
time,
const_short_rate = 0,
const_default_intensity = 0,
discount_factor_fcn = function(T, t, ...) { exp(-const_short_rate * (T - t)) },
survival_probability_fcn = function(T, t, ...) { exp(-const_default_intensity * (T
- t)) },
default_intensity_fcn = function(t, S, ...) { const_default_intensity + 0 * S },
...,
num_time_steps = 100,
structure_constant = 2,
std_devs_width = 5
)
Arguments
callput |
1 for calls, -1 for puts (may be a vector of the same) |
S0 |
initial underlying price |
K |
strike (may be a vector) |
time |
Time from |
const_short_rate |
A constant to use for the instantaneous interest rate in case |
const_default_intensity |
A constant to use for the instantaneous default intensity in case |
discount_factor_fcn |
A function for computing present values to
time |
survival_probability_fcn |
(Implied argument) A function for probability of survival, with
arguments |
default_intensity_fcn |
A function for computing default intensity
occurring at a given time, dependent on time and stock price, with
arguments |
... |
Further arguments passed on to |
num_time_steps |
Number of steps to use in the grid solver. Can usually be set quite low due to the control variate scheme. |
structure_constant |
The maximum ratio between time intervals |
std_devs_width |
The number of standard deviations, in |
Details
The scheme uses find_present_value() to price the options and their European-exercise equivalents. It then compares the latter to black-scholes formula output and uses the results as an error correction on the prices of the American-exercise options.
Value
A vector of estimated option present values
See Also
Other Equity Independent Default Intensity:
american_implied_volatility()
,
black_scholes_on_term_structures()
,
blackscholes()
,
equivalent_bs_vola_to_jump()
,
equivalent_jump_vola_to_bs()
,
implied_volatilities_with_rates_struct()
,
implied_volatilities()
,
implied_volatility_with_term_struct()
,
implied_volatility()
Other American Exercise Equity Options:
american_implied_volatility()
,
control_variate_pairs()
Examples
american(PUT, S0=100, K=110, time=0.77, const_short_rate = 0.06,
const_volatility=0.20, num_time_steps=200)
american(callput=-1, S0=100, K=90, time=1, const_short_rate=0.025,
variance_cumulation_fcn = function(T, t) { # Term structure of vola
0.45 ^ 2 * (T - t) + 0.15^2 * max(0, T-0.25)
})