Infer a reasonable structure for our implicit grid solver based on the voltime, structure constant, and requested grid width in standard deviations.
construct_implicit_grid_structure(
tenors,
M,
S0,
K,
c,
sigma,
structure_constant,
std_devs_width,
min_z_width = 0
)A list with elements
TThe maximum time for this grid
dtLargest permissible timestep size
dzDistance between space grid points
z0Center of space grid
z_widthWidth in \(z\) space
half_NA misnomer, actually \((N-1)/2\)
NThe number of space points
zLocations of space points
Tenors of instruments to be treated on this grid
Minimum number of timesteps on this grid
An initial stock price, for setting grid scale
An instrument reference stock price, for setting grid scale
A continuous stock drift rate
Volatility of diffusion process (without jumps to default)
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
Minimum grid width, in log space
Generally speaking pricing will be good to about 10bp of relative accuracy when the ratio of timesteps to voltime (in annualized units) is over 200.
Cases with pathologically low volatility may go awry (in the sense of
yielding ultimately inaccurate PDE solutions), as the
structure_constant will force a step in z space much bigger
than the width in standard deviations.
Other Implicit Grid Solver:
find_present_value(),
form_present_value_grid(),
infer_conforming_time_grid(),
integrate_pde(),
iterate_grid_from_timestep(),
take_implicit_timestep(),
timestep_instruments()