# A simple formula for calculating implied volatility?

We all know if you back out of the Black Scholes option pricing model you can derive what the option is "implying" about the underlyings future expected volatility.

Is there a simple, closed form, formula deriving Implied Volatility (IV)? If so can you could you direct me to the equation?

Or is IV only numerically solved?

• I found this one via Google: Implied Volatility Formula Apr 17 '13 at 2:28
• yea, saw that one too. Newton method was used here. am I right? But how is IV calculated? Anyone here use a standard procedure? Apr 17 '13 at 2:30
• Jaeckel has a paper for a more efficient method of backing out the implied vol here - it includes a link to the source code.
– will
Jul 22 '16 at 9:08
• Please refer to this 2016-17 article by Jaeckel : jaeckel.000webhostapp.com/ImpliedNormalVolatility.pdf It has been mentioned above in a comment, but that link is broken Jul 11 '19 at 7:44

Brenner and Subrahmanyam (1988) provided a closed form estimate of IV, you can use it as the initial estimate:

$$\sigma \approx \sqrt{\cfrac{2\pi}{T}} . \cfrac{C}{S}$$

• If you could embed the link to the article in your answer, it would be great.
– SRKX
Apr 17 '13 at 9:24
• What are the definitions of T,C and S ? I'm guessing T is the Duration of the option-contract, C is the theoretical Call-value and S is the Strike-price, correct ?
– Nick
Oct 9 '13 at 12:49
• No, S is the current price of the underlying. However the approximation by Brenner and Subrahmanyam works best for at the money options, hence the difference should be small in that case. May 9 '14 at 14:29
• @Dominique (S = Spot price of the underlying, a.k.a. current price) Jul 27 '17 at 18:43
• The formula is based on the ATM price under normal model approximation. See quant.stackexchange.com/a/1154/26559 for further detail. Aug 4 '18 at 15:19

The Black-Scholes option pricing model provides a closed-form pricing formula $$BS(\sigma)$$ for a European-exercise option with price $$P$$. There is no closed-form inverse for it, but because it has a closed-form vega (volatility derivative) $$\nu(\sigma)$$, and the derivative is nonnegative, we can use the Newton-Raphson formula with confidence.

Essentially, we choose a starting value $$\sigma_0$$ say from yoonkwon's post. Then, we iterate

$$\sigma_{n+1} = \sigma_n - \frac{BS(\sigma_n)-P}{\nu(\sigma_n)}$$

until we have reached a solution of sufficient accuracy.

This only works for options where the Black-Scholes model has a closed-form solution and a nice vega. When it does not, as for exotic payoffs, American-exercise options and so on, we need a more stable technique that does not depend on vega.

In these harder cases, it is typical to apply a secant method with bisective bounds checking. A favored algorithm is Brent's method since it is commonly available and quite fast.

• Thank you, got this to work in program, but had to multiply denominator by 100, because vega is change in price given a percent change in iv. Jul 23 '20 at 23:46

It is a very simple procedure and yes, Newton-Raphson is used because it converges sufficiently quickly:

• You need to obviously supply an option pricing model such as BS.
• Plug in an initial guess for implied volatility -> calculate the the option price as a function of your initial iVol guess -> apply NR -> minimize the error term until it is sufficiently small to your liking.
• the following contains a very simple example of how you derive the implied vol from an option price: http://risklearn.com/estimating-implied-volatility-with-the-newton-raphson-method/

• You can also derive implied volatility through a "rational approximation" approach (closed form approach -> faster), which can be used exclusively if you are fine with the approximation error or as a hybrid in combination with a few iterations of NR (better initial guess -> less iterations). Here a reference: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=952727

• A Matrixwise Matlab implementation which uses Li's rational function approximation, followed by iterations of 3rd order householder method Jun 26 '14 at 18:17

There are some references on this topic. You may find them helpful.

Peter Jaeckel has articles named "By Implication (2006)" and "Let's be rational (2013)"

Stefanica and Radoicic (2017) An Explicit Implied Volatility Formula

• Do you know if Li & Lee (2009) provide their code somewhere? Aug 15 '17 at 1:32
• Probably not... Aug 18 '17 at 6:15
• This is the best answer since jaeckel method is the industry standard implementation for european IV calculation
– Ezy
Dec 28 '18 at 9:00

To get IV I do the following: 1) change sig many times and calculate C in BS formula every time. That can be done with OIC calculator All other parameters are kept constant in BS call price calculations. The sig that corresponds to C value closest to the call market value is probably right. 2) without OIC calculator for every chosen sig I am using old approach: calculate d1, d2, Nd1, Nd2 and BS option value. Again calculated BS value closest to the market value probably correspond to correct IV.

The bisection method, Brent's method, and other algorithms should work well. But here is a very recent paper that gives an explicit representation of IV in terms of call prices through (Dirac) delta sequences:

Cui et al. (2020) - A closed-form model-free implied volatility formula through delta sequences