I have two implementations for finding the implied volatility under Black-Scholes formula. One is bisection and the other is brent's method. (I know Newton-Raphson is popular due to speed and will support this as well later...).

My question seems to be related to this question: Lower bound of ITM Calls when computing Implied Volatility

Basically, I notice that the implied volatility calculation breaks down for deep in the money call options and probably deep in the money put options (same for deep out of the money options of both types?).

Example arguments:

double r = 0.05;
double T = 0.00274;    
double S = 50.0;    
double K = 1.0;

For these arguments, it seems any volatility value will do as the option premium from BS is always ~49.00015... and so a unique implied volatility cannot be found?

I would like to provide some method that can provide a fast check on the input that would ideally check analytical bounds for when bisection/brent will give back sound answers and when the input arguments belong to a "degenerate" case.

Are such bounds well-known? Any link to an article available would be appreciated.


As pointed out in the comment, the answer here: What is an efficient method to find implied volatility? provides:

Link to http://www.jaeckel.org/ and in particular the "By Implication" paper: http://www.pjaeckel.webspace.virginmedia.com/ByImplication.pdf .

An explanation of the problem with in-the-money options and implied volatility is provided in that paper.

Working with out-of-the-money options seems to be the easiest, most reasonable approach and will work for my purposes.

Of course if anyone has additional insights, please share them.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.