LSM_american_option: Value American-style options through least-squares Monte...

Description Usage Arguments Details Value References Examples

View source: R/LSM_american_option.R

Description

Given a set of state variables and associated payoffs simulated through Monte Carlo simulation, solve for the value of an American-style call or put option through the least-squares Monte Carlo simulation method.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
LSM_american_option(
  state_variables,
  payoff,
  K,
  dt,
  rf,
  call = FALSE,
  orthogonal = "Power",
  degree = 2,
  cross_product = TRUE,
  verbose = FALSE
)

Arguments

state_variables

matrix or array. The simulated states of the underlying stochastic variables. The first dimension corresponds to the simulated values of the state variables at each discrete observation point. The second dimension corresponds to each individual simulation of the state variable. The third dimension corresponds to each state variable considered.

payoff

matrix The payoff at each observation point resulting from exercise into the underlying asset. The first dimension corresponds to the simulated values of the state variables at each discrete observation point. The second dimension corresponds to each individual simulation of the state variable.

K

the exercise price of the American-style option

dt

Constant, discrete time step of simulated observations

rf

The annual risk-free interest rate

call

logical Is the American-style option a call or put option?

orthogonal

character. The orthogonal polynomial used to develop basis functions that estimate the continuation value in the LSM simulation method. orthogonal arguments available are: "Power", "Laguerre", "Jacobi", "Legendre", "Chebyshev", "Hermite". See details.

degree

The number of orthogonal polynomials used in the least-squares fit. See details.

cross_product

logical. Should a cross product of state variables be considered? Relevant only when the number of state variables is greater than one.

verbose

logical. Should additional information be output? See values.

Details

The LSM_american_option function provides an implementation of the least-squares Monte Carlo (LSM) simulation approach to numerically approximate the value of American-style options (options with early exercise opportunities). The function provides flexibility in the stochastic process followed by the underlying asset, with simulated values of stochastic processes provided within the state_variables argument. It also provides flexibility in the payoffs of the option, allowing for vanilla as well as more exotic options to be considered. LSM_american_option also provides analysis into the exercise timing and probability of early exercise of the option.

Least-Squares Monte Carlo Simulation:

The least-squares Monte Carlo (LSM) simulation method is a numeric approach first presented by Longstaff and Schwartz (2001) that approximates the value of options with early exercise opportunities. The LSM simulation method is considered one of the most efficient methods of valuing American-style options due to its flexibility and computational efficiency. The approach can feature multiple stochastically evolving underlying uncertainties, following both standard and exotic stochastic processes.

The LSM method first approximates stochastic variables through a stochastic process to develop cross-sectional information, then directly estimates the continuation value of in-the-money simulation paths by "(regressing) the ex-post realized payoffs from continuation on functions of the values of the state variables" (Longstaff and Schwartz, 2001).

The 'LSM_american_option' function at each discrete time period, for each simulated price path, compares the payoff that results from immediate exercise of the option with the expected value of continuing to hold the option for subsequent periods. The payoff of immediate exercise is provided in the payoff argument and could take several different meanings depending upon the type of American-style option being valued (e.g. the current stock price, the maximum price between multiple assets, etc.).

The immediate profit resulting from exercise of the option is dependent upon the type of option being calculated. The profit of price path i and time t is given by:

When call = TRUE:

profit[t,i] = max(payoff[t,i] - K, 0)

When call = FALSE:

profit[t,i] = max(K - payoff[t,i], 0)

Orthogonal Polynomials:

To improve the accuracy of estimation of continuation values, the economic values in each period are regressed on a linear combination of a set of basis functions of the stochastic variables. These estimated regression parameters and the simulated stochastic variables are then used to calculate the estimator for the expected economic values.

Longstaff and Schwartz (2001) state that as the conditional expectation of the continuation value belongs to a Hilbert space, it can be represented by a combination of orthogonal basis functions. Increasing the number of stochastic state variables therefore increases the number of required basis functions exponentially. The orthogonal polynomials available in the LSMRealOptions package are: Laguerre, Jacobi, Legendre (spherical), Hermite (probabilistic), Chebyshev (of the first kind). The simple powers of state variables is further available. Explicit expressions of each of these orthogonal polynomials are available within the textbook of Abramowitz and Stegun (1965).

Value

The 'LSM_american_option' function by default returns a numeric object corresponding to the calculated value of the American-style option.

When verbose = T, 6 objects are returned within a list class object. The objects returned are:

Value The calculated option value.
Standard Error The standard error of the option value.
Expected Timing The expected time of early exercise.
Expected Timing SE The standard error of the expected time of early exercise.
Exercise Probability The probability of early exercise of the option being exercised.
Cumulative Exercise Probability vector. The cumulative probability of option exercise at each discrete observation point

References

Abramowitz, M., and I. A. Stegun, (1965). Handbook of mathematical functions with formulas, graphs, and mathematical tables. Courier Corporation.

Longstaff, F. A., and E. S. Schwartz, (2001). "Valuing American options by simulation: a simple least-squares approach." The review of financial studies, 14(1), 113-147.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# Price a vanilla American put option on an asset that follows
# Geometric Brownian Motion

## Step 1 - simulate stock prices:
stock_prices <- GBM_simulate(n = 100, t = 1, mu = 0.05,
                         sigma = 0.2, S0 = 100, dt = 1/2)

## Step 2 - Value the American put option:
option_value <- LSM_american_option(state_variables = stock_prices,
                                 payoff = stock_prices,
                                 K = 100,
                                 dt = 1/2,
                                 rf = 0.05)

LSMRealOptions documentation built on June 26, 2021, 5:06 p.m.