Finite-Difference Methods for Option Pricing
Adapted from a 2015 computational finance assignment. It prices the same European call as the Monte Carlo and COS-method posts.
The Equation on a Grid
The value of a European option under Black-Scholes obeys
Monte Carlo integrates the terminal payoff over simulated paths; the COS method integrates it against the characteristic function. The finite-difference method discretises the equation itself onto a grid in price and time and marches the payoff at expiry backwards to today. The payoff is the terminal condition, so time runs in reverse. Write
so the payoff sits at and the solution advances in . With , , , the equation is . Throughout, the option is a European call with , , , ; its analytical value at is .
Two Grids
There are two standard choices of spatial grid.
The untransformed grid places nodes at , evenly spaced in price. The PDE keeps its -dependent coefficients and .
The log grid changes variables to . Substituting and and writing gives
The diffusion and drift coefficients are now constant in . Equal steps in are geometric steps in : the grid is fine at small , and a distant upper boundary costs few extra nodes.
Each grid has its own coefficients: and on the grid, the constants and on the log grid. The scheme below uses the grid.
The Stencils
The three derivatives are replaced by difference quotients from Taylor expansions. These are the same on either grid. For , a forward Euler step in time. Expanding about ,
On the grid, with time indexed by so that a higher index is an earlier calendar time, and the value at node and step , this is .
For , a centred difference. The two expansions
subtract to cancel the even terms:
Adding the same two expansions cancels the odd terms and gives :
FTCS: the Explicit Scheme
Forward-Time Centred-Space substitutes the three stencils into the PDE and solves for the single unknown from three known values at the previous step. On the grid, because the factor cancels against the and in the coefficients, and the update reduces to functions of the index :
Each new value is computed directly, with no system to solve.
An easy thing to get wrong. The coefficients carry the factors and , which are the -grid coefficients and with the divided out. It is tempting to use the log-grid constants and here instead. This is what I did on my first attempt, in the computational finance course where I met these methods. Consider the diffusion term at : on the grid it is , while the log-grid constant is smaller by a factor of . With the constant on the grid the diffusion is far too small, value does not spread inward from the in-the-money region, and the out-of-the-money call is priced at essentially zero: the scheme returns for the call. The constants are correct on the log grid, where the payoff is and the step is . On the grid the coefficients depend on .
Stability
The explicit scheme is only conditionally stable. The binding requirement is , worst at the top of the grid where is largest:
The timestep must shrink like . Doubling the asset resolution quadruples the number of timesteps: needs steps, needs , needs . The work grows like . This is the main drawback of the explicit scheme, and the reason for the implicit scheme below.
Crank-Nicolson: the Implicit Scheme
Crank-Nicolson averages the spatial operator over the old and new time levels. Writing the discretised right-hand side of the PDE as a tridiagonal operator acting on the value vector, the update is
Now appears on both sides. The three unknowns at each step are coupled, and each step solves a tridiagonal system by one LU (or Thomas) sweep in . Crank-Nicolson is unconditionally stable, so the timestep is set by accuracy rather than stability, and its error is against the explicit scheme’s . The matrix should be factored once and the factorisation reused each step; re-inverting it every timestep costs per step.
Boundary Conditions
The grid is finite, so the scheme needs values at the edges. For a call:
- At the option is worthless: .
- As the call approaches the forward: , the stock minus the discounted strike. An alternative is the linearity condition , imposed as .
The upper condition is only asymptotic, and imposing it at a finite introduces an error. At a modest boundary the true value still sits below , since the option retains some time value and its delta is below one. Pinning the boundary above the true value biases the solution upward, and refining the grid does not remove the error. Placing the boundary at several times the strike keeps it negligible.
Results
With a generous domain, both schemes converge to the analytical value as the grid is refined. Convergence is oscillatory: the node nearest the spot straddles it alternately from above and below as changes.
The overlap is expected, not a shortcoming of Crank-Nicolson. At a fixed asset grid both schemes carry the same spatial error, and the plot runs each with enough timesteps that the time error is negligible, so they reach the same value. The schemes differ in the cost of getting there. FTCS is stable only for , so its number of timesteps must grow like ; Crank-Nicolson is unconditionally stable and needs only steps for comparable time accuracy. At that is about steps against , and the gap widens with resolution.
At both schemes agree with Black-Scholes across moneyness:
| analytical | FTCS | Crank-Nicolson | |
|---|---|---|---|
| 100 | 9.6254 | 9.6250 | 9.6238 |
| 110 | 15.1286 | 15.1023 | 15.1012 |
| 120 | 21.7888 | 21.7835 | 21.7842 |
The grid also gives the Greeks, as differences of the value surface it already holds. A centred difference of the solution gives the delta across the range of without further solving.
Summary
The finite-difference method prices the option by discretising the Black-Scholes PDE and marching the payoff backwards, producing the value surface and the Greeks from one solve. At a given asset grid the explicit and implicit schemes return the same price, set by the shared spatial error; they differ in cost. FTCS is conditionally stable, so its number of timesteps grows like . Crank-Nicolson is unconditionally stable and second order in time, needing only steps, at the cost of a tridiagonal solve per step. Two choices matter as much as the scheme: the grid, whose coefficients must match the transform, and the placement of the far boundary.