find_present_value function

Use a model to estimate the present value of financial derivatives

Use a model to estimate the present value of financial derivatives

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 )

Arguments

  • S0: An initial stock price, for setting grid scale

  • num_time_steps: Minimum number of time steps in the grid

  • instruments: A list of instruments to be priced. Each one must have a strike and a optionality_fcn, as with GridPricedInstrument and its subclasses.

  • const_volatility: A constant to use for volatility in case variance_cumulation_fcn

    is not given

  • 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

  • override_Tmax: A different maximum time on the grid to enforce

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

  • default_intensity_fcn: A function for computing default intensity occurring during this timestep, dependent on time and stock price, with arguments t, S.

  • variance_cumulation_fcn: A function for computing total stock variance occurring during this timestep, with arguments T, t. E.g. with a constant volatility ss this takes the form (Tt)s2(T-t)s^2.

  • dividends: 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

  • borrow_cost: Stock borrow cost, affecting the drift rate

  • dividend_rate: Continuous dividend rate, affecting the drift rate

  • 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

Returns

A list of present values, with the same names as instruments

See Also

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()

  • Maintainer: Brian K. Boonstra
  • License: GPL (>= 2)
  • Last published: 2020-03-03

Useful links