american: Price one or more american-exercise options

Description Usage Arguments Details Value See Also Examples

View source: R/american_options.R

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
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 0 until expiration (may be a vector)

const_short_rate

A constant to use for the instantaneous interest rate in case discount_factor_fcn is not given

const_default_intensity

A constant to use for the instantaneous default intensity in case default_intensity_fcn is not given

discount_factor_fcn

A function for computing present values to time t of various cashflows occurring during this timestep, with arguments T, t

survival_probability_fcn

(Implied argument) A function for probability of survival, with arguments T, t and T>t. E.g. with a constant volatility s this takes the form (T-t)s^2. Should be matched to default_intensity_fcn

default_intensity_fcn

A function for computing default intensity occurring at a given time, dependent on time and stock price, with arguments t, S. Should be matched to survival_probability_fcn

...

Further arguments passed on to find_present_value

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 dt and the square of space intervals dz^2

std_devs_width

The number of standard deviations, in sigma * sqrt(T) units, to incorporate into the grid

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

1
2
3
4
5
6
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)
         })

brianboonstra/ragtop documentation built on March 7, 2020, 2:23 p.m.