Use the grid solver to generate instrument prices via find_present_value and run them
  through a bisective root search method until a constant volatility matching the provided
  instrument price has been found.
implied_jump_process_volatility(
  instrument_price,
  instrument,
  ...,
  starting_volatility_estimate = 0.85,
  relative_tolerance = 0.005,
  max.iter = 100,
  max_vola = 4
)Target price for root finder
Instrument to search for the target price on, passed as
the sole instrument to find_present_value
Additional arguments to be passed on to find_present_value
Bisection method original guess
Relative tolerance in instrument price defining the root-finder halting condition
Maximum number of root-finder iterations allowed
Maximum volatility to try
A list of present values, with the same names as instruments
Unlike american_implied_volatility, this routine allows for any legal
 term structures and equity-linked default intensities.  For that reason, it eschews
 the control variate tricks that make american_implied_volatility so much faster.
Note that equity-linked default intensities can result in instrument prices that are not monotonic in volatility. This bisective root finder will find a solution but not necessarily any particular one.
find_present_value for the underlying
  pricing algorithm, implied_volatility_with_term_struct for European options
  without equity dependence of default intensity, american_implied_volatility for the same on American options
Other Implied Volatilities: 
american_implied_volatility(),
equivalent_bs_vola_to_jump(),
equivalent_jump_vola_to_bs(),
fit_variance_cumulation(),
implied_volatilities_with_rates_struct(),
implied_volatilities(),
implied_volatility_with_term_struct(),
implied_volatility()
Other Equity Dependent Default Intensity: 
find_present_value(),
fit_to_option_market_df(),
fit_variance_cumulation(),
form_present_value_grid()
# NOT RUN {
implied_jump_process_volatility(
    25, AmericanOption(maturity=1.1, strike=100, callput=-1),
    S0=100, num_time_steps=50, relative_tolerance=1.e-3)
# }
Run the code above in your browser using DataLab