I am trying to obtain the Vega of some equities with the Dupire local volatility model.

For this I have already validated the pricing model (I am using Monte Carlo) and now I am able to obtain the Vega of every vanilla option I want.

This Vega is respect to the implied volatility surface and I have to compare both Vegas (surfaces) calculated with finite differences and with an automatic differentiation library called Autograd (in Python). The fact is that both results are the same but I have a doubt as I don't think they are correct so I have made a mistake somewhere but I can't find it.

The option is at the money and expiry is 0.5 years so, if I am not wrong, I have to expect a peak in that "point" in the Vega surface as it corresponds to the implied volatility value which I would use in Black-Scholes for example.

The surface I have is the one you can see below, I obtain that peak I just spoke about but I also obtain a huge peak in the at the money point in the first expiry bucket and I don't know if that peak is correct, so that is my question.

I guessed it is due to the (flat) extrapolation as I need to do it in the first time steps in the Monte Carlo engine but I don't know if it is normal or how to fix it.

Thanks and it would be a pleasure to give more information if necessary

enter image description here


Your Answer

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

Browse other questions tagged or ask your own question.