I have a set of American options, for which I got the implied volatility thanks to the package "RQuantLib". I then used splines to interpolate my implied volatility as a function of my strikes. Practically speaking I got implied vol from 455 to 670, with a 0.0001 step. I then infer my prices thanks to the AmericanOption function.
Almost all of my points are OK, but I have one particular strange result. When I focus on a particular interval, here near a strike of 630, I see that the delta in option price for two consecutive strike seems to be a linear function of strike, which seems OK in this short interval. But for a particular point this relationship does not hold
I don't understand why could cause this. Any idea ? This is quite annoying because my next step is to infer a risk-neutral density from this points, and this outlier causes a negative RND. Also, I don't have any option in my initial batch that contains this strike, and my error does not seem to come from my splines, but from the function. Thanks,