CONTENTS

Asian Options

Motivation: why this matters in quant finance

Asian options have a payoff that depends on the average of the underlying over some monitoring period — typically the average of daily closing prices, or hourly observations. The most common variant is the arithmetic-average call:
Payoff=(SˉK)+,Sˉ=1Mk=1MStk.\text{Payoff} = \left(\bar S - K\right)^+, \quad \bar S = \frac{1}{M}\sum_{k=1}^M S_{t_k}.

Why average? Three commercial drivers:

  • Manipulation resistance. A vanilla European option settling on a single observed price is vulnerable to closing-auction manipulation. An average over many observations is much harder to push.
  • Hedging-cost reduction. For a corporate hedging FX exposure spread over months, an Asian on the average exchange rate is a more accurate hedge than several vanilla options. Liquidity-friendly.
  • Cheaper than vanillas. Because the average has lower variance than the terminal value, Asian options have lower vega and are cheaper. A standard cost-saving structure.

Asian options are everywhere: oil hedges (the average oil price over a month), commodity-linked notes, FX corporate hedging, and structured equity products.

The mathematical complication: the arithmetic average of log-normals is not log-normal, so there's no nice closed form. Pricing requires numerical methods — either MC with smart variance reduction, FFT-based methods, or PDE techniques.

The informal idea

Arithmetic average: Sˉ=1MStk\bar S = \frac{1}{M}\sum S_{t_k}. Most commercially used.
Geometric average: Sˉg=(Stk)1/M\bar S_g = (\prod S_{t_k})^{1/M}. Mathematical convenience: log of geometric average is normally distributed (sum of log-normal logs), so closed-form pricing exists.
Average price option: payoff is (SˉK)+(\bar S - K)^+ or (KSˉ)+(K - \bar S)^+. Replaces STS_T with Sˉ\bar S in vanilla payoff.
Average strike option: payoff is (STSˉ)+(S_T - \bar S)^+. Strike is the average; this is a separate animal, much rarer.

For pricing, focus on the average-price arithmetic Asian — the standard.

Formal pricing

Under Black-Scholes with continuous monitoring on [0,T][0, T]:

Sˉ=1T0TStdt.\bar S = \frac{1}{T}\int_0^T S_t \, dt.
For the geometric average:
lnSˉg=1T0TlnStdt=1T0T(lnS0+(rσ2/2)t+σWt)dt.\ln \bar S_g = \frac{1}{T}\int_0^T \ln S_t \, dt = \frac{1}{T}\int_0^T \big(\ln S_0 + (r - \sigma^2/2)t + \sigma W_t\big) \, dt.

The integral of WtW_t is normally distributed, so lnSˉg\ln \bar S_g is normal. Specifically:

SˉgLN ⁣(lnS0+12(rσ2/2)T,σ2T3).\bar S_g \sim \mathrm{LN}\!\left(\ln S_0 + \frac{1}{2}(r - \sigma^2/2)T,\, \frac{\sigma^2 T}{3}\right).

The volatility of the geometric average is σ/3\sigma/\sqrt{3} — significantly less than σ\sigma. Plugging into the Black-Scholes formula with adjusted parameters gives the closed-form geometric Asian price.

For the arithmetic average, no such closed form exists. The sum of log-normals is not log-normal. Standard approaches:
  1. Monte Carlo with the geometric Asian as a control variate (covered in the control-variates lesson — gives 100x+ variance reduction).
  2. PDE methods treating Sˉ\bar S as a state variable (more expensive, but works for American Asians and barriers).
  3. Moment-matching approximations — approximate Sˉ\bar S as log-normal by matching first and second moments. Surprisingly accurate (within 1-2% typically).
  4. Laplace transform methods (Geman-Yor, Linetsky) — rigorous but technical.

Worked example: continuous geometric Asian

import numpy as np from scipy.stats import norm def geometric_asian_call(S0, K, T, r, sigma): sigma_g = sigma / np.sqrt(3) # Adjusted drift mu_g = 0.5 * (r - 0.5 * sigma**2 + sigma_g**2) 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)) p_geom = geometric_asian_call(100, 100, 1, 0.05, 0.2) print(f"Geometric Asian (continuous): {p_geom:.4f}") # Geometric Asian (continuous): 5.4377

For comparison, the vanilla call at the same parameters is \10.45.TheAsianis. The Asian is \sim 50%cheaperbecausetheaveragedvolatilityischeaper because the averaged volatility is\sigma/\sqrt{3} \approx 0.115insteadofinstead of\sigma = 0.2$.

For discretely sampled Asians (MM observations), the variance of the geometric average is

σg2=σ2(2M+1)(M+1)6M(M+1)σ23 as M.\sigma_g^2 = \sigma^2 \cdot \frac{(2M+1)(M+1)}{6M(M+1)} \to \frac{\sigma^2}{3} \text{ as } M \to \infty.

This is the familiar "1/3 variance" rule for averaging.

Moment-matching for arithmetic Asian

Levy approximation. Approximate Sˉ\bar S as log-normal with parameters chosen to match the first two moments:
E[Sˉ]=M1,E[Sˉ2]=M2.\mathbb{E}[\bar S] = M_1, \quad \mathbb{E}[\bar S^2] = M_2.

Both can be computed in closed form for log-normal StS_t (sum of correlated log-normals). Define

σa2=1Tln(M2/M12),μa=lnM112σa2T.\sigma_a^2 = \frac{1}{T}\ln(M_2/M_1^2), \quad \mu_a = \ln M_1 - \frac{1}{2}\sigma_a^2 T.

Use (μa,σa)(\mu_a, \sigma_a) in the Black-Scholes formula. Accurate to within 1-2% for moderate volatilities.

def levy_arithmetic_asian(S0, K, T, r, sigma, M=252): # Discrete monitoring at M points times = np.linspace(T/M, T, M) # First moment M1 = S0/M * np.sum(np.exp(r * times)) # Second moment: E[S_i S_j] = S0^2 * exp(r*(t_i + t_j) + sigma^2 * min(t_i, t_j)) Ti, Tj = np.meshgrid(times, times) cov = sigma**2 * np.minimum(Ti, Tj) M2 = S0**2 / M**2 * np.sum(np.exp(r*(Ti + Tj) + cov)) sigma_a = np.sqrt(np.log(M2/M1**2)/T) mu_a = np.log(M1) - 0.5*sigma_a**2*T d1 = (mu_a - np.log(K) + sigma_a**2*T)/(sigma_a*np.sqrt(T)) d2 = d1 - sigma_a*np.sqrt(T) return np.exp(-r*T) * (M1 * norm.cdf(d1) - K * norm.cdf(d2)) p_levy = levy_arithmetic_asian(100, 100, 1, 0.05, 0.2, M=252) print(f"Arithmetic Asian (Levy): {p_levy:.4f}") # Arithmetic Asian (Levy): 5.7691 # (compare with MC: 5.7720 — within 0.05%)

Key properties

  • Cheaper than vanillas. Asian volatility is σ/3\sigma/\sqrt{3} for continuous geometric (and similar for arithmetic), so Asians are systematically cheaper.
  • Lower vega. A consequence of the lower effective volatility. Asians are less sensitive to vol-surface moves.
  • Path-dependent. The full path matters; cannot be priced from (ST,K)(S_T, K) alone.
  • Monitoring frequency matters. Daily vs weekly vs monthly observations give different prices. Standard convention: daily for FX/equity, less frequent for commodities.
  • Geometric vs arithmetic. Geometric has a closed form; arithmetic doesn't. The geometric is a tight control variate for the arithmetic (ρ0.998\rho \approx 0.998, see the control variates lesson).

Variations

  • Forward-start Asians. Averaging window starts at some future date t1>0t_1 > 0.
  • Floating-strike Asians. Strike is the average (STSˉS_T - \bar S or SˉST\bar S - S_T).
  • Window/partial Asians. Averaging only over a subset of the option's life.
  • Asian-out / Asian-in. Asian features attached to a knock-out or knock-in barrier.

Common confusions and pitfalls

  • Discrete vs continuous monitoring. Always check the contract spec. Daily monitoring on a 1-year Asian is standard but the difference from continuous is small. For monthly monitoring, the difference can be 5-10%.
  • Drift adjustment. When deriving the geometric Asian formula, the drift component is rσ2/2r - \sigma^2/2, but the adjusted drift in the closed-form involves rσg2/2=rσ2/6r - \sigma_g^2/2 = r - \sigma^2/6 — different from the adjustment for a vanilla European. Easy to get wrong.
  • Floating vs fixed strike. "Asian" with no qualifier usually means fixed strike, average payoff. A floating-strike Asian is a different beast.
  • Continuous Asian PDE. Adding Sˉ\bar S as a state variable expands the PDE to two dimensions, requiring ADI methods or transformations to reduce dimensionality (e.g., Vecer's trick).
  • MC efficiency. Plain MC for Asians is inefficient — always use the geometric Asian as a control variate. See the control-variates lesson for implementation.

Where this goes next

  • Monte Carlo control variates — primary numerical method for arithmetic Asians.
  • Barrier options — different path-dependence; can be combined with Asians (Asian barriers).
  • Forward-start, lookback, partial Asians — variations.

Exercises

Test your understanding with 3 exercises for this lesson.