I am attempting to implement a local vol pricing model in finite difference for equity index options.

I have followed Gatheral's Lectures and fitted an SVI Model bringing me to the following local vol equation with VL being relatively straight forward to compute using a grid.

enter image description here

My problem currently is twofold

  1. y = log(K/FT) but I am using the normal (I think?) finite difference grid with log(K) transformation so the grids don't match up. What is typically done in practice? Do I have to interpolate w & y for each point in my finite difference grid?
  2. Cost of carry is not constant across tenors as is typically the case. I have not been able to find any reference for finite difference where r & q are not assumed to be constant. I am assuming this is important given that the vol surface is forward dependent? Do I simply use piece-wise constant forward rates in between tenors?

Can someone explain how this is usually implemented or point me towards a practical reference source?

***** update *****

After working on this a bit more. I took a different transformation

$$\ X=\ln(\frac{S}{S_0 e^{(r-q)T}}) $$

giving me

$$\ 0=rC+\frac{∂C}{∂T}-\frac{1}{2} σ^2 \frac{∂C}{∂X}+\frac{1}{2} σ^2 \frac{∂^2 C}{∂X^2} $$

which seems to be the right approach for 1. Both VL and finite difference grids are now consistent and in the forward space. I also noticed that the cost of carry term is gone. I am thinking this means that I no longer have to worry about about non constant r & q except for path dependent derivatives (in which case it should be dealt with in the boundary condition?)

I am hoping someone with more experience in the matter can validate this approach


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.