Skip to content
All library documents

Correcting Approximate Implied Volatility for Puts and Moneyness

Article Quant Q&A · Author: 4thSpace

Summary

This question concerns a quick implied volatility estimate for a put option and why it differs from a pricing calculator. The answer identifies two sources of error: applying a call-based approximation directly to a put, and relying on a shortcut that performs poorly when the option is away from the money. With a zero interest rate assumption, put-call parity can convert the put price to an equivalent call price before using the approximation.

The answer also presents an alternative approximation that adjusts for moneyness using the stock price, strike, time to expiry, and interest rate. It points to the Corrado–Miller approximation as a further refinement. These are approximations to option pricing, not a replacement for solving a full pricing model, and the document does not show numerical comparisons of their accuracy for the example. The quoted calculator result is therefore not enough by itself to establish which estimate is correct.

Key ideas

  • A call-based implied volatility approximation cannot be applied unchanged to a put price.
  • Put-call parity can convert the put price to a call-equivalent price under the assumed interest rate.
  • Simple implied volatility approximations can be inaccurate for options away from the money.
  • Moneyness-adjusted and Corrado–Miller approximations offer possible improvements.

Tags

Full text
# Why isn't this IV calc correct?


# Why isn't this IV calc correct?












I'm trying to calculate implied volatility for the following put option:

```
Stock price = 185.55
Strike = 180
Option price = 3.00
Days to expire = 63
```

I've run the numbers through here http://www.option-price.com/implied-volatility.php using a risk-free rate of zero and get 17.57.

My calculations are based on the formula from here How can the implied volatility be calculated? using yoonkwon's answer. The formula doesn't use risk free rate (or strike price) so I'm using a risk-free rate of zero in the above webpage.

Formula from above link:

My calculations look like this:

```
sqrt((2 x 3.1415)/.17260) x 3/185.55 = 9.75
```

Any ideas what I'm doing wrong?

## Answer by Magic is in the chain (score 7, accepted)

https://quant.stackexchange.com/a/45515

You are using Put vs Call I think. You can convert the put price to call using put call parity: 3+5.55 when you assume zero interest rate. This would be more important for the other approximations.

The main problem with the approximation formula is that, as noted in the comments in the answer you referenced, your approximation will not be accurate for non-ATM options. You can try a simple alternative which adjusts for the money-ness:

$\sigma= \sqrt{\frac{2\pi}{T}}\frac{C-\delta}{S-\delta}$

Where

$\delta=\frac{S-K e^{-rT}}{2}$

This is the Bharadia, Christofides, and Salkin approximation. And for still better results you can try Corrado-Miller:

Which I copied from the article below and where X is the discounted value of the strike. https://papers.ssrn.com/sol3/papers.cfm?abstract_id=584982

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.