I have two questions appearing to me (they are not related directly to each other).

  1. My first question is about boundary conditions when using Finite difference methods. There are two ways to do it: a) Dirichlet b) von Neumann (using always two values "inside" the grid/mesh to get the one on boundary). For me von Neumann conditions are more elegant. It is always written they hold as long as Payoff is linear for large values. But I am searching a bit for examples on that. In which types of options von Neumann works in which not?

  2. Barrier option pricing with FD methods (such as Crank Nicoloson). How would you approach there? Say you have an up and out call. Would use use the same technique as plain vanilla Call just that you say the upper boundary for the stock price is the value of the barrier (so grid in stock price direction goes up to barrier level) and the boundary condition for the value of the option there is zero?

Thanks a lot for sharing your knowledge and answer!


1 Answer 1


1 - The Neumann boundary condition is actually named after Carl Neumann, not John von Neumann.

There is another boundary condition not often mentioned but used very often in practice in Quant finance FD solvers, which is linear (zero second spatial derivative on the boundary). This means that on the boundary the PDE $a\frac{\partial U}{\partial x} + b \frac{\partial^2 U}{\partial x^2} + \frac{\partial U}{\partial t} = 0$ simplifies into $a\frac{\partial U}{\partial x} + \frac{\partial U}{\partial t} = 0$ which you discretize using the uncentered discrete difference for $\frac{\partial U}{\partial x}$.

2 - Barrier options: you do as you suggested, make the barrier the upper value (resp. lower value) for the grid when pricing an up and out (resp. down and out), and use a Dirichlet condition on the barrier.

  • $\begingroup$ Great thank you v much! $\endgroup$
    – alphaH
    Apr 18, 2021 at 9:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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