Trading Dev AcademyFree quant education

Free lesson · Statistical arbitrage

What statistical arbitrage is—and where it applies

Open interactive lessonPractice calculationsExplore labs

Start with the idea

Statistical arbitrage seeks repeatable conditional returns across many risky trades. It is not a locked-in riskless profit. Relative-value trades ask whether one asset is unusually expensive compared with a related asset or a model of common risks.

Symbols, units & horizon
  • Π: net profit per completed spread trade in currency
  • E: expectation over comparable trades
  • p: convergence probability
  • G: average gross gain conditional on success
  • L: positive average gross loss conditional on failure
  • C: expected total cost across both legs and their holding period
  • p*: break-even probability
  • All payoff inputs use the same notional and horizon

When and why to use this

Use this calculation before tuning a signal: it connects a plausible convergence mechanism to the required probability and executable payoff distribution.

Start with a mechanism: temporary inventory pressure, segmented investors, delayed information incorporation, index rebalancing or a stable economic linkage. Common implementations include equity residual baskets, related ETFs, futures calendar spreads and cross-venue basis positions. Each has different financing, settlement and hedge constraints.

A high historical correlation describes co-movement, not a force that restores a particular price relationship. An economically plausible link narrows the search universe, but still needs an observable, time-stamped prediction. Distinguish convergence to fair value from compensation for liquidity provision, short-volatility exposure or crash risk.

A research hypothesis should specify who is likely to pay you, how long the pressure lasts, the variable that measures it and the event that would invalidate the relationship. Prices can separate permanently after acquisitions, business changes or contract specification changes.

E[Π]=pG−(1−p)L−C,p∗=L+CG+L
Model assumptions, derivation and arithmetic

What statistical arbitrage is—and where it applies

  1. Weight the success payoff G by p and failure payoff −L by 1−p, then subtract expected costs C.
  2. For break-even, set pG−L+pL−C=0. Collect p(G+L)=L+C and divide by positive G+L.
  3. If costs depend on outcomes, first use their probability-weighted average; do not subtract the low-cost successful-trade average from every trade.
Work it by hand

G=$120, L=$180 and C=$12 imply p*=192/300=.64. At p=.65, expected net profit is 78−63−12=$3. A 65% hit rate leaves a very small cost buffer.

Apply it in a strategy

  • Choose one universe and holding horizon; document the proposed source of convergence and short-sale feasibility.
  • Measure both winners and failures, including broken relationships and delisted names, on a formation sample.
  • Test whether conditional payoffs remain positive after realistic two-leg costs and delayed entry.

Research deliverable

Write a one-page edge hypothesis with the payer, observable trigger, horizon, total cost budget and explicit falsification condition.

Research sources, review dates and limitations

Python implementation

Self-contained teaching example. Python 3.10+; dependencies and input conventions are shown in the code and notation. Run in your own Python environment.

def spread_expectancy(p,gain,loss,cost):
    if not 0<=p<=1 or gain<=0 or loss<0 or cost<0: raise ValueError("Invalid probability or payoffs")
    return p*gain-(1-p)*loss-cost,(loss+cost)/(gain+loss)

print(spread_expectancy(.65,120,180,12))

Continue learning

Statistical Arbitrage: Relative Value to Tradable Portfolios — all lessons
  1. What statistical arbitrage is—and where it applies
  2. Construct the spread: price ratios, log ratios and executable units
  3. Cointegration, reversion speed and structural breaks
  4. Causal z-scores and a complete entry–exit state machine
  5. From pairs to residual baskets and factor neutrality
  6. Two-leg backtesting, borrow, capacity and ML extensions

Quantitative finance and development glossary · Python resources and libraries · Research sources and limitations