Quantitative Finance · CQF Module 3

Exotic Options
Lab

Where the Black-Scholes closed form runs out. This page prices Asian, barrier, lookback, and American-exercise options under GBM using Monte Carlo path-dependence and the Longstaff-Schwartz regression, with a live path-explorer to show what each exotic payoff actually depends on.

The PaperMickias Ambaye · May 2026

Abstract

The Black-Scholes-Merton closed form prices vanilla European calls and binary cash-or-nothings. Anything else, Asian, barrier, lookback, or American exercise, breaks the assumption that only the terminal stock matters. This paper develops the four representative exotic payoffs and the numerical machinery they require: Monte Carlo over discretely monitored paths for Asian, barrier, and lookback options, and the Longstaff-Schwartz (2001) regression for American-exercise options. Each engine is tied to the corresponding CQF JA263.5 lecture and to the supporting textbook literature [5, 6, 8].

Part I · Why the closed form runs out

1.Path dependence

Under risk-neutral GBM, the BSM formula prices any payoff g(ST)g(S_T) that depends only on the terminal stock value, because the lognormal density of STS_T integrates against gg in closed form. A path-dependent claim, whose payoff depends on the entire trajectory through some functional F({St}0tT)F\big(\{S_t\}_{0 \le t \le T}\big), has no such single-density representation. The four payoffs this paper covers are:

Asian (arithmetic):max ⁣(1Mi=1MStiK,0),Barrier (up-and-out call):max(STK,0)1{maxtSt<B},Lookback (fixed strike):max ⁣(maxtStK,0),American put:supτTE[erτ(KSτ)+].\begin{array}{rl}\text{Asian (arithmetic)}: & \max\!\Big(\tfrac{1}{M}\sum_{i=1}^M S_{t_i} - K,\,0\Big), \\[6pt] \text{Barrier (up-and-out call)}: & \max(S_T - K, 0)\cdot \mathbf{1}_{\{\max_t S_t < B\}}, \\[6pt] \text{Lookback (fixed strike)}: & \max\!\big(\max_t S_t - K,\,0\big), \\[6pt] \text{American put}: & \sup_{\tau \le T} \mathbb{E}\big[e^{-r\tau}(K - S_\tau)^+\big]. \end{array}

Asian payoffs depend on the running mean, lookbacks on the running extremum, barriers on a first-passage event, and Americans on an inf\inf over stopping times. None of these collapse to a function of STS_T alone, so the BSM formula is silent. The natural replacement is Monte Carlo on a discretised path, plus, for American payoffs, a regression that estimates the continuation value at each candidate exercise date.

2.Discrete monitoring bias

Barrier and lookback contracts are typically continuously monitored in their term sheets, but simulated paths sample only at the grid points t1,,tMt_1, \dots, t_M. A path that pierces the barrier between two grid points and returns below contributes to the simulated price even though it should have knocked out. The bias scales as σT/M\sigma\sqrt{T/M} and shrinks as MM grows. Broadie, Glasserman, and Kou (1997) [12] give an explicit continuity correction that shifts the simulated barrier by BBe±βσT/MB \to B\,e^{\pm\beta\sigma\sqrt{T/M}} with β0.5826\beta \approx 0.5826, recovering near-continuous-monitoring accuracy at coarse grids.

Interactive · One path, four payoffs

Below: drag the seed to redraw the path, slide vol up to widen excursions, move the strike and barrier to see how each exotic responds to the same trajectory. Knock-outs flash red the moment they fire.

Studio · Path Explorer

One path, four payoffs

Drag the controls and watch the four exotic payoffs respond on the same simulated path. The cards below are the headline numbers: read off the running mean for Asian, the running max for lookback, the barrier event for up-and-out, and only the terminal value for European.

European

0.00

max(S_T - K, 0) with S_T = 77.4, K = 100

Asian (arith)

5.68

max(mean(S_t) - K, 0) with mean = 105.7

Lookback (max)

22.03

max(max_t S_t - K, 0) with max = 122.0

Up-and-out

0.00

max(S_T - K, 0) if max_t S_t < B = 130

live

Path controls

7
25%
100
130

Path under the four payoffs

K = 100B = 130S_T = 77.4━ path━ running mean━ running max

Part II · Monte Carlo with variance reduction

3.Geometric Asian as a control variate

The arithmetic Asian call has no closed form. Its geometric counterpart, with payoff max ⁣((i=1MSti)1/MK,0)\max\!\big((\prod_{i=1}^M S_{t_i})^{1/M} - K, 0\big), does, because the geometric mean of a lognormal sequence is itself lognormal. Kemna and Vorst (1990) [13] derive the closed form: with σg=σ(2M+1)/(6(M+1))\sigma_g = \sigma\sqrt{(2M+1)/(6(M+1))} and a matching drift adjustment μg\mu_g,

Cg=erT[S0eμgTN(d1g)KN(d2g)],(1)C_g = e^{-rT}\Big[S_0\,e^{\mu_g T}\,N(d_1^{g}) - K\,N(d_2^{g})\Big], \quad (1)

with d1g,d2gd_1^g, d_2^gthe obvious analogues of BSM's. The arithmetic and geometric Asians track each other closely path by path, so

C^ACV=C^Aβ(C^gCg),β=Cov(C^A,C^g)Var(C^g),(2)\widehat C_A^{\,CV} = \widehat C_A - \beta\,\big(\widehat C_g - C_g\big), \quad \beta = \frac{\operatorname{Cov}(\widehat C_A, \widehat C_g)}{\operatorname{Var}(\widehat C_g)}, \quad (2)

with CgC_gthe known closed-form value, removes most of the arithmetic estimator's variance for free. Variance reduction factors of 50× or more at coarse MMare routine [6, §4.5].

4.Longstaff-Schwartz for American exercise

The American put is V0=supτTEQ[erτ(KSτ)+]V_0 = \sup_{\tau \le T} \mathbb{E}^{\mathbb{Q}}\big[e^{-r\tau}(K - S_\tau)^+\big]. Backward induction on a grid would normally require the conditional distribution of future cash flows, which Monte Carlo does not have. Longstaff and Schwartz (2001) [14] observed that the continuation value at time tt is a function of StS_t alone (under Markovian GBM), so it can be estimated by regression:

  1. Simulate NN paths forward. Initialise the cash-flow vector Ci=(KST(i))+C_i = (K - S_T^{(i)})^+.
  2. Step backward from t=M1t = M - 1 to t=1t = 1. At each tt, take the subset of paths that are in-the-money and regress their discounted future cash flow erδtCie^{-r\,\delta t} C_i on a polynomial basis in St(i)S_t^{(i)} (typically [1,S,S2][1, S, S^2]).
  3. Use the fitted continuation value to decide exercise: if (KSt)+>C^(St)(K - S_t)^+ > \widehat C(S_t), set Ci=KSt(i)C_i = K - S_t^{(i)}; else carry the discounted cash flow.
  4. The price is V^0=erδtN1iCi\widehat V_0 = e^{-r\,\delta t} \cdot N^{-1}\sum_i C_i.

Restricting the regression to in-the-money paths is the key insight: out-of-the-money continuation values are never compared against an exercise decision, so including them only adds noise to the fit. The Python implementation below reproduces Longstaff and Schwartz's Table 1 reference case (S0=36S_0 = 36, K=40K = 40, r=0.06r = 0.06, σ=0.20\sigma = 0.20, T=1T = 1) to within Monte Carlo error of the published value 4.478.

Part III · Conclusion & references

5.Conclusion

Exotics are a study in how much the payoff structure constrains the available numerical tools. When the payoff depends on a path average, an extremum, or a first-passage event, Monte Carlo with sufficient time-discretisation accuracy is almost always the right answer, and a closely related closed-form payoff on the same paths serves as a near-perfect control variate. When the payoff depends on an optimal stopping decision, Longstaff-Schwartz turns the intractable conditional expectation into a sequence of in-the-money regressions on a low-order polynomial basis. Both methods are conceptually simple, both reduce to vector operations on a matrix of simulated paths, and both transfer almost verbatim to local volatility, stochastic volatility, or any other model that admits forward path simulation.

6.References

  1. [5]Albrecher, H., Mayer, P., Schoutens, W. & Tistaert, J. (2007). The Little Heston Trap. Wilmott Magazine, January 2007.
  2. [6]Glasserman, P. (2004). Monte Carlo Methods in Financial Engineering. Springer.
  3. [8]Hull, J. C. (2018). Options, Futures, and Other Derivatives (10th ed.). Pearson.
  4. [12]Broadie, M., Glasserman, P. & Kou, S. (1997). A Continuity Correction for Discrete Barrier Options. Mathematical Finance, 7(4), 325-349.
  5. [13]Kemna, A. & Vorst, T. (1990). A Pricing Method for Options Based on Average Asset Values. Journal of Banking and Finance, 14(1), 113-129.
  6. [14]Longstaff, F. A. & Schwartz, E. S. (2001). Valuing American Options by Simulation: A Simple Least-Squares Approach. Review of Financial Studies, 14(1), 113-147.
  7. [10]Ahmad, R. (2026). CQF Module 3, JA263.5 Exotic Options. Certificate in Quantitative Finance.

Python code

Copy-pasteable pricers

Each tab is a self-contained NumPy-only pricer. No external state, no framework. Drop into a notebook and the __main__ block reproduces the reference number printed in the comment.

import numpy as np
from scipy.stats import norm
 
 
def asian_arithmetic_mc(S0, K, r, sigma, T, M, N, q=0.0, seed=None):
300/85">"""Arithmetic Asian call by Monte Carlo, exact log-Euler GBM.
 
Parameters
----------
S0, K : spot, strike
r, sigma, T : risk-free rate, vol, maturity (years)
M : number of equally-spaced averaging dates
N : number of MC paths
300/85">"""
rng = np.random.default_rng(seed)
dt = T / M
drift = (r - q - 0.5 * sigma ** 2) * dt
diff = sigma * np.sqrt(dt)
 
Z = rng.standard_normal((N, M))
log_paths = np.log(S0) + np.cumsum(drift + diff * Z, axis=1)
S = np.exp(log_paths) # shape (N, M)
 
A = S.mean(axis=1) # arithmetic average
payoff = np.maximum(A - K, 0.0)
disc_payoff = np.exp(-r * T) * payoff
 
price = disc_payoff.mean()
stderr = disc_payoff.std(ddof=1) / np.sqrt(N)
return price, stderr
 
 
def geometric_asian_call_closed_form(S0, K, r, sigma, T, M, q=0.0):
300/85">""300/85">"Kemna-Vorst (1990) closed form. Useful as a control variate."300/85">""
sigma_g = sigma * np.sqrt((2 * M + 1) / (6 * (M + 1)))
mu_g = (
0.5 * sigma_g ** 2
+ ((r - q - 0.5 * sigma ** 2) * (M + 1)) / (2 * M)
)
d1 = (np.log(S0 / K) + (mu_g + 0.5 * sigma_g ** 2) * T) / (sigma_g * np.sqrt(T))
d2 = d1 - sigma_g * np.sqrt(T)
return np.exp(-r * T) * (
S0 * np.exp(mu_g * T) * norm.cdf(d1) - K * norm.cdf(d2)
)
 
 
if __name__ == 300/85">"__main__":
price, se = asian_arithmetic_mc(
S0=100, K=100, r=0.05, sigma=0.20, T=1.0, M=50, N=100_000, seed=42,
)
print(f300/85">"Asian arithmetic call = {price:.4f} +/- {1.96 * se:.4f}")
 

Mickias Ambaye · 2026