implied_volatility function

Implied volatility of european-exercise option under Black-Scholes or a jump-process extension

Implied volatility of european-exercise option under Black-Scholes or a jump-process extension

Find default-free volatility (not necessarily just Black-Scholes) based on known interest rates and hazard rates, using a given option price.

implied_volatility( option_price, callput, S0, K, r, time, const_default_intensity = 0, divrate = 0, borrow_cost = 0, dividends = NULL, relative_tolerance = 1e-06, max.iter = 100, max_vola = 4 )

Arguments

  • option_price: Present option value
  • callput: 1 for calls, -1 for puts
  • S0: initial underlying price
  • K: strike
  • r: risk-free interest rate
  • time: Time from 0 until expiration
  • const_default_intensity: hazard rate of underlying default
  • divrate: A continuous rate for dividends and other cashflows such as foreign interest rates
  • borrow_cost: A continuous rate for stock borrow costs
  • 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. Fixed dividends will be converted to proportional for purposes of this algorithm. To handle truly fixed dividends, see implied_jump_process_volatility
  • relative_tolerance: Relative tolerance in option price to achieve before halting the search
  • max.iter: Number of iterations to try before abandoning the search
  • max_vola: Maximum volatility to try in the search

Returns

A scalar volatility

Details

To get a straight Black-Scholes implied volatility, simply call this function with const_default_intensity set to zero (the default).

Examples

implied_volatility(2.5, 1, 100, 105, 0.01, 0.75) implied_volatility(option_price = 17, callput = CALL, S0 = 250, K=245, r = 0.005, time = 2, const_default_intensity = 0.03)

See Also

Other Implied Volatilities: american_implied_volatility(), equivalent_bs_vola_to_jump(), equivalent_jump_vola_to_bs(), fit_variance_cumulation(), implied_jump_process_volatility(), implied_volatilities_with_rates_struct(), implied_volatilities(), implied_volatility_with_term_struct()

Other Equity Independent Default Intensity: american_implied_volatility(), american(), black_scholes_on_term_structures(), blackscholes(), equivalent_bs_vola_to_jump(), equivalent_jump_vola_to_bs(), implied_volatilities_with_rates_struct(), implied_volatilities(), implied_volatility_with_term_struct()

Other European Options: black_scholes_on_term_structures(), blackscholes(), implied_volatilities_with_rates_struct(), implied_volatilities(), implied_volatility_with_term_struct()

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

Useful links