Use a finite difference scheme to form estimates of present values for a variety
of stock prices. Once the grid has been created, interpolate to obtain the
value of each instrument at the present stock price S0
find_present_value(
S0,
num_time_steps,
instruments,
const_volatility = 0.5,
const_short_rate = 0,
const_default_intensity = 0,
override_Tmax = NA,
discount_factor_fcn = function(T, t, ...) { exp(-const_short_rate * (T - t)) },
default_intensity_fcn = function(t, S, ...) { const_default_intensity + 0 * S },
variance_cumulation_fcn = function(T, t) { const_volatility^2 * (T - t) },
dividends = NULL,
borrow_cost = 0,
dividend_rate = 0,
structure_constant = 2,
std_devs_width = 3
)
An initial stock price, for setting grid scale
Minimum number of time steps in the grid
A list of instruments to be priced. Each
one must have a strike
and a optionality_fcn
, as
with GridPricedInstrument
and its subclasses.
A constant to use for volatility in case variance_cumulation_fcn
is not given
A constant to use for the instantaneous interest rate in case discount_factor_fcn
is not given
A constant to use for the instantaneous default intensity in case default_intensity_fcn
is not given
A different maximum time on the grid to enforce
A function for computing present values to
time t
of various cashflows occurring during this timestep, with
arguments T
, t
A function for computing default intensity
occurring during this timestep, dependent on time and stock price, with
arguments t
, S
.
A function for computing total stock variance
occurring during this timestep, with arguments T
, t
. E.g. with
a constant volatility \(s\) this takes the form \((T-t)s^2\).
A data.frame
with columns time
, fixed
,
and proportional
. Dividend size at the given time
is
then expected to be equal to fixed + proportional * S / S0
Stock borrow cost, affecting the drift rate
Continuous dividend rate, affecting the drift rate
The maximum ratio between time intervals dt
and the square of space intervals dz^2
The number of standard deviations, in sigma * sqrt(T)
units, to incorporate into the grid
A list of present values, with the same names as instruments
Other Equity Dependent Default Intensity:
fit_to_option_market_df()
,
fit_variance_cumulation()
,
form_present_value_grid()
,
implied_jump_process_volatility()
Other Implicit Grid Solver:
construct_implicit_grid_structure()
,
form_present_value_grid()
,
infer_conforming_time_grid()
,
integrate_pde()
,
iterate_grid_from_timestep()
,
take_implicit_timestep()
,
timestep_instruments()