Choosing Finite-Difference Grid Boundaries for Option Pricing
Summary
The document discusses how to choose time and underlying-price boundaries for a finite-difference grid used to approximate an option pricing function. It recommends covering the option’s life from the valuation time through maturity. For the upper price boundary, one answer proposes increasing the boundary until the option delta near maturity exceeds a chosen threshold, supporting call-like asymptotic boundary conditions in which delta approaches one and gamma approaches zero.
Other responses suggest bounds based on the forward price and several standard deviations of the terminal distribution, or use a multiple of the strike as a rule of thumb. The answers disagree about centering the grid on current spot, reflecting different goals: pricing around a particular spot versus solving across a broad range of underlying prices. No numerical comparison or convergence study is provided. The boundary choice therefore remains dependent on the option, model, desired domain, and boundary-condition accuracy.
Key ideas
- The time grid should span from the valuation time to the option’s maturity.
- For a call-like payoff, the upper underlying-price boundary can be tied to an asymptotic delta condition.
- A distribution-based range can use the forward and a multiple of terminal-price standard deviations.
- A strike-based multiple is another proposed rule of thumb, but the responses do not establish one universal boundary.
Tags
Full text
# For using finite difference on PDE, what should the grid be?
# For using finite difference on PDE, what should the grid be?
If I wish to use finite difference methods to approximate the pricing function $F(t, s)$ for an option (say, a call), what size grid should I use?
I mean, it seems to make sense to start the grid at zero for both variables $t, s = 0$, and then let the upper bound on the $t$-grid be $T$ (the maturity of the option)... is this true?
And what about the upper bound on $s$?
## Answer by Daneel Olivaw (score 1)
https://quant.stackexchange.com/a/42312
For the maturity, choose a grid $\{t_0=0,t_1,\dots,t_n=T\}$ such that $T$ is the option's maturity.
For the underlying, if it is positive, you might choose an upper boundary by selecting a grid $\{S_0=0,S_1,\dots,S_{\max}\}$ such that the derivative's delta at $t_{n-1}$ is above a threshold $D$ in order to specify a boundary condition such as:
$$ \frac{\partial V}{\partial S}=1, \quad \frac{\partial^2 V}{\partial S^2}=0 $$
You can determine the upper value $S_{\max}$ by starting to compute the derivative's value at $t_{n-1}$ for $S_0$ then proceeding up until:
$$ \frac{\partial V}{\partial S}>D $$
## Answer by Ezy (score 0)
https://quant.stackexchange.com/a/42308
Answer is very straightforward: always center your grid on the current spot value and make sure that it covers sufficiently many standard deviations on each side to cover enough of the terminal distribution at maturity. In particular it should cover the forward at maturity. In practice if you use something like 5stdev on each side should be sufficient for most purposes
## Answer by Make (score 0)
https://quant.stackexchange.com/a/42309
The other answer is sadly wrong. It doesn't make sense to say that you should "center your grid on the current spot value", because by definition of you trying to approximate $F(s)$ for all reasonable $s$, there IS no "current spot value". You are trying to find the price for all of them, right? So why should you center it around some imaginary current value?
That'd make sense if you wanted the price for, say, F(s = 100), specifically.
A good rule of thumb: 2-5 times the strike is your upper bound on the spots.Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.