|
I'm trying to use the impliedVolatility method on a VanillaOption and
I'm getting the following exception:
Underlying:66.900000
Strike 61.500000 Call Price 7.750000 Expires:November 14th, 2006
java.lang.RuntimeException: root not bracketed: f[0.0001,4] ->
[6.792459e-02,5.274040e+01]
at org.quantlib.QuantLibJNI.VanillaOption_impliedVolatility__SWIG_4
(Native Method)
at org.quantlib.VanillaOption.impliedVolatility(VanillaOption.java:89)
The strange thing is, this one works fine:
Strike 62.000000 Call Price 7.460000 Volatility 0.09146919793826723
So, with all other parameters the same (they're the 61.50 and 62.00
calls on an oil future expiring on Nov 14), one calculates, the other
one gets a bracketing error. I'm using the default impliedVolatility
method, so the input values are the defaults (.0001 and 4 with I
believe up to 100 iterations).
Since the volatility is pretty low for the $62 Call, is it possible
that it's just too far off? Since the 61.50 Call costs $7.75 and the
62 Call costs $ 7.46, I can't see how they could be too far off from
each other.
Any thoughts are appreciated... I'm running in Java through SWIG in
case anyone is interested - and it's the latest stable release.
Ken
|