Numerical MethodsAmerican OptionsPSORLinear ComplementarityFree Boundary

PSOR for American Options

22 min readLevel: Hard

Setup

The American Option Problem

A European option can only be exercised at maturity TT. An American option can be exercised at any time τ[0,T]\tau \in [0, T]. Its value at time tt is:

V(t,S)=supτTt,TEQ ⁣[er(τt)g(Sτ)St=S],V(t, S) = \sup_{\tau \in \mathcal{T}_{t,T}} \mathbb{E}^{\mathbb{Q}}\!\left[e^{-r(\tau - t)} g(S_\tau) \,\Big|\, S_t = S\right],

where Tt,T\mathcal{T}_{t,T} is the set of stopping times taking values in [t,T][t, T], and g(S)g(S) is the payoff (e.g., (KS)+(K - S)^+ for an American put). This is an optimal stopping problem.

The Free Boundary

The American option value satisfies V(t,S)g(S)V(t, S) \geq g(S) always (one can always exercise immediately). There exists a time-dependent critical asset price S(t)S^*(t) — the early exercise boundary — such that:

  • For SS(t)S \leq S^*(t) (American put): it is optimal to exercise immediately; V(t,S)=g(S)V(t, S) = g(S).
  • For S>S(t)S > S^*(t): holding is optimal; V(t,S)>g(S)V(t, S) > g(S) and VV satisfies the Black-Scholes PDE.

The boundary S(t)S^*(t) is not known in advance — it must be determined as part of the solution. This is a free boundary problem (Stefan problem type).

Assumptions

Same as Black-Scholes: GBM for StS_t, constant rr and σ\sigma, no dividends (unless stated). Continuous dividends at rate qq make early exercise of calls optimal; without dividends, early exercise of American calls is never optimal (they equal European calls). The interesting case is the American put.


Linear Complementarity Formulation

The free boundary problem can be reformulated as a linear complementarity problem (LCP), which is more amenable to numerical methods.

In terms of time to expiry τ=Tt\tau = T - t and log-spot x=lnSx = \ln S, with L\mathcal{L} the Black-Scholes operator:

LV=Vτσ222Vx2(rσ22)Vx+rV,\mathcal{L}V = \frac{\partial V}{\partial \tau} - \frac{\sigma^2}{2}\frac{\partial^2 V}{\partial x^2} - \left(r - \frac{\sigma^2}{2}\right)\frac{\partial V}{\partial x} + rV,

the LCP is:

LV0,Vg,LV(Vg)=0,\mathcal{L}V \geq 0, \qquad V \geq g, \qquad \mathcal{L}V \cdot (V - g) = 0,

almost everywhere on (0,T]×R(0, T] \times \mathbb{R}.

Interpretation of each condition:

  • LV0\mathcal{L}V \geq 0: the option value satisfies the BS PDE inequality (in the holding region, LV=0\mathcal{L}V = 0 exactly; in the exercise region, LV>0\mathcal{L}V > 0 would imply arbitrage — so equality holds everywhere but the free boundary is where the transition occurs).
  • VgV \geq g: value is at least intrinsic.
  • LV(Vg)=0\mathcal{L}V \cdot (V - g) = 0: at each point, either LV=0\mathcal{L}V = 0 (holding optimal, PDE satisfied) or V=gV = g (early exercise optimal), but not neither.

The LCP is equivalent to the free boundary formulation: it encodes all conditions without explicitly tracking S(t)S^*(t).

Variational Inequality

The LCP is the Euler-Lagrange condition for a variational inequality (Bensoussan-Lions formulation): find VV in a suitable Sobolev space such that for all test functions ϕg\phi \geq g:

a(V,ϕV)l(ϕV),a(V, \phi - V) \geq l(\phi - V),

where a(,)a(\cdot, \cdot) is the bilinear form associated with L\mathcal{L} and l()l(\cdot) is the linear functional. This gives rigorous existence and uniqueness of the solution, with regularity VH1V \in H^1 but generically VH2V \notin H^2 (the second derivative is discontinuous at the free boundary).


Discretisation and the Discrete LCP

Apply Crank-Nicolson to the LCP, treating the spatial operator implicitly. At each time step jj+1j \to j+1:

Without early exercise constraint (pure CN): ACj+1=bj,A \mathbf{C}^{j+1} = \mathbf{b}^j,

where AA is the CN tridiagonal matrix and bj\mathbf{b}^j includes the explicit contribution from level jj.

With early exercise constraint: replace the linear system with the discrete LCP:

AVj+1bj0,Vj+1g,(AVj+1bj)(Vj+1g)=0.A \mathbf{V}^{j+1} - \mathbf{b}^j \geq \mathbf{0}, \qquad \mathbf{V}^{j+1} \geq \mathbf{g}, \qquad (A\mathbf{V}^{j+1} - \mathbf{b}^j)^\top (\mathbf{V}^{j+1} - \mathbf{g}) = 0.

This must be solved for Vj+1\mathbf{V}^{j+1} at each time step. The constraint is applied component-wise: for each spatial grid point ii, either the PDE residual is zero (holding) or Vi=giV_i = g_i (exercise).


PSOR Algorithm

Successive Over-Relaxation (SOR)

SOR solves Ax=bA\mathbf{x} = \mathbf{b} iteratively. Writing A=D+L+UA = D + L + U (diagonal + strict lower + strict upper triangular), one iteration of SOR:

xi(new)=(1ω)xi(old)+ωaii(bik<iaikxk(new)k>iaikxk(old)),x_i^{(\text{new})} = (1 - \omega) x_i^{(\text{old})} + \frac{\omega}{a_{ii}}\left(b_i - \sum_{k < i} a_{ik} x_k^{(\text{new})} - \sum_{k > i} a_{ik} x_k^{(\text{old})}\right),

for i=1,,M1i = 1, \ldots, M-1. The parameter ω(1,2)\omega \in (1, 2) is the relaxation factor (ω=1\omega = 1 = Gauss-Seidel; ω>1\omega > 1 = over-relaxation). Optimal ω\omega for a tridiagonal system with spectral radius ρJ\rho_J of the Jacobi iteration matrix:

ω=21+1ρJ2.\omega^* = \frac{2}{1 + \sqrt{1 - \rho_J^2}}.

Projected SOR (PSOR)

PSOR modifies each SOR iteration by projecting onto the feasible set VigiV_i \geq g_i:

V~i=(1ω)Vi(old)+ωaii(bik<iaikVk(new)k>iaikVk(old)),\tilde{V}_i = (1 - \omega) V_i^{(\text{old})} + \frac{\omega}{a_{ii}}\left(b_i - \sum_{k < i} a_{ik} V_k^{(\text{new})} - \sum_{k > i} a_{ik} V_k^{(\text{old})}\right),

Vi(new)=max ⁣(gi,  V~i).V_i^{(\text{new})} = \max\!\left(g_i,\; \tilde{V}_i\right).

The max projection enforces the early exercise constraint at each grid point during each iteration. No knowledge of the free boundary location is needed — it is implicitly determined by which nodes are projected.

Per time step cost: O(MKiter)O(M \cdot K_{\mathrm{iter}}), where KiterK_{\mathrm{iter}} is the number of PSOR iterations to convergence (typically 552020).

Convergence of PSOR

Theorem (Cryer, 1971; Mangasarian, 1977). For PSOR applied to a discrete LCP AxbA\mathbf{x} \geq \mathbf{b}, xg\mathbf{x} \geq \mathbf{g}, (Axb)(xg)=0(A\mathbf{x} - \mathbf{b})^\top(\mathbf{x} - \mathbf{g}) = 0, where AA is symmetric positive definite (or an M-matrix), PSOR converges to the unique solution for any ω(0,2)\omega \in (0, 2).

For the CN discretisation of the American put, AA is an M-matrix (diagonally dominant, non-positive off-diagonal). Convergence is guaranteed for ω(0,2)\omega \in (0, 2).

Rate. The convergence rate of PSOR is ρ(ω)\rho(\omega), the spectral radius of the iteration matrix. For ω<ω\omega < \omega^*, convergence is sub-optimal; for ω>ω\omega > \omega^*, it can oscillate. In practice, ω=1.2\omega = 1.21.51.5 is effective for the BS tridiagonal.

Convergence Criterion

Iterate until the residual rk=maxi(AV(k))ibir_k = \max_i |(A\mathbf{V}^{(k)})_i - b_i| falls below a tolerance ε\varepsilon (typically 10810^{-8}10610^{-6}) and all constraint violations are resolved: maxi(giVi(k))+<ε\max_i (g_i - V_i^{(k)})^+ < \varepsilon.


Comparison: PSOR vs. Binomial Tree

Both methods solve the American option problem. Their comparison illuminates the trade-off between implementation simplicity and numerical efficiency.

PropertyBinomial treePSOR on FD grid
ImplementationSimple, intuitiveModerate complexity
Convergence orderO(1/N)O(1/\sqrt{N}) for vanilla put (oscillatory)O(Δτ2+Δx2)O(\Delta\tau^2 + \Delta x^2) with CN
CostO(N2)O(N^2) for NN stepsO(MNKiter)O(M \cdot N \cdot K_{\mathrm{iter}})
GreeksFinite differences on treeRead from grid values (no extra cost)
FlexibilityMust rebuild tree for each payoffSame grid reused with changed payoff

Convergence order note. The binomial tree converges at O(1/N)O(1/N) for smooth payoffs but O(1/N)O(1/\sqrt{N}) for American puts due to the staircase approximation of the free boundary. Richardson extrapolation or the Broadie-Detemple smoothing technique recovers O(1/N)O(1/N). The PSOR grid achieves O(Δτ2)O(\Delta\tau^2) with CN and smooth payoffs.

At matched grid resolution. Setting M=NM = N (equal number of grid points and time steps) and computing at matched total computation cost, PSOR gives significantly more accurate prices. The free boundary is resolved with order O(Δx)O(\Delta x) accuracy in both methods at matched grid; PSOR's advantage comes from its higher-order time discretisation.


Limitations

Payoff smoothness. Near expiry for deep in-the-money American puts, the free boundary moves rapidly (it converges to KK as τ0\tau \to 0 at rate O(τlnτ)O(\sqrt{\tau \ln \tau})). This rapid movement can cause local inaccuracy in the free boundary location. Finer grids near τ=0\tau = 0 or local grid refinement is needed.

Multi-factor extensions. For basket American options or Heston model American options, the LCP is two-dimensional. PSOR extends to 2D: sweep over the 2D grid in a lexicographic order, applying the projection at each node. The outer iteration now solves a 2D implicit system, which is typically handled by ADI splitting — with each ADI substep having an LCP structure solved by 1D PSOR.

Bermudan options. Bermudan options allow exercise at a finite set of dates {T1,,Tn}\{T_1, \ldots, T_n\}. The free boundary is not continuous in time — it is a finite set of early exercise dates. The LCP at each exercise date reduces to a simple node-by-node projection: Vi=max(gi,Vihold)V_i = \max(g_i, V_i^{\mathrm{hold}}), which is trivial. PSOR is not needed between exercise dates; the CN solver suffices.

American call without dividends. The American call with no dividends equals the European call: early exercise is never optimal because the call's time value exceeds the dividends foregone (none). Including a continuous dividend yield q>0q > 0 restores the early exercise premium for calls, requiring PSOR.


Interview Angle

L1. Why is an American put worth more than a European put? Under what condition is early exercise of an American call optimal?

American put premium: The American put can be exercised early to earn the interest on the strike KK: if the stock is very low, immediately exercising yields KSKK - S \approx K which can be invested at rate rr. Waiting risks the stock rising and the put expiring worthless. The premium over the European put equals the present value of the optimal early exercise strategy.

American call: Early exercise of a call sacrifices time value (option's convexity premium) in exchange for the dividend received. Without dividends, it is always suboptimal to exercise a call early — the European and American call have the same price. With a continuous dividend q>r(1K/S)q > r(1 - K/S) (approximately), early exercise becomes optimal above some critical spot.

L2. State the linear complementarity problem for the American put. Show that the LCP at each grid point encodes either the PDE holding condition or the early exercise condition. Describe the PSOR update rule.

LCP at node ii: Two conditions hold simultaneously: (a) (AVj+1)ibij0(AV^{j+1})_i - b_i^j \geq 0 (PDE residual non-negative), (b) Vij+1giV_i^{j+1} \geq g_i (intrinsic floor), (c) [(AVj+1)ibij][Vij+1gi]=0[(AV^{j+1})_i - b_i^j] \cdot [V_i^{j+1} - g_i] = 0 (complementarity).

At each node: if Vi>giV_i > g_i (holding region), then (AV)i=bi(AV)_i = b_i (PDE = 0 residual). If (AV)i>bi(AV)_i > b_i (PDE positive), then Vi=giV_i = g_i (exercise region).

PSOR update: Compute the Gauss-Seidel trial value V~i\tilde{V}_i, then set Vinew=max(gi,V~i)V_i^{\text{new}} = \max(g_i, \tilde{V}_i). The projection ensures VigiV_i \geq g_i; if the SOR value is below intrinsic, we force early exercise at that node.

L3. Prove that PSOR converges for the American put LCP. Compare the convergence rate of PSOR to Gauss-Seidel for a symmetric positive definite tridiagonal system, and explain the optimal over-relaxation factor.

Convergence proof (sketch). The CN tridiagonal matrix AA is an M-matrix: non-negative diagonal, non-positive off-diagonals, strictly diagonally dominant. An M-matrix is positive definite and has a regular splitting A=DBA = D - B with D>0D > 0, B0B \geq 0. By Mangasarian's theorem, PSOR converges for any ω(0,2)\omega \in (0,2) when AA is an M-matrix. The proof uses the fact that the LCP solution is unique (by positive definiteness of AA) and that the PSOR iterates form a monotone sequence bounded below by the solution.

Optimal ω\omega: For a consistently ordered matrix, the spectral radius of the SOR iteration matrix is minimised at ω=2/(1+1ρJ2)\omega^* = 2/(1+\sqrt{1-\rho_J^2}) where ρJ\rho_J is the spectral radius of the Jacobi matrix. For the BS tridiagonal with ρJcos(π/M)\rho_J \approx \cos(\pi/M), ω2/(1+π/M)22π/M\omega^* \approx 2/(1 + \pi/M) \approx 2 - 2\pi/M for large MM. The convergence rate (spectral radius of SOR iteration matrix at ω\omega^*) is ρ(ω)=ω112π/M\rho(\omega^*) = \omega^* - 1 \approx 1 - 2\pi/M, requiring O(M)O(M) iterations for a fixed tolerance — expensive for large MM. For this reason, direct LCP solvers (Policy iteration, or a direct tridiagonal approach to the LCP) are sometimes preferred over PSOR for large grids.

Verify your understanding before moving on.

Start Quiz →