Skip to main content

Static Replication from zero

1/5

Any payoff is a sum of simpler payoffs

Every complex payoff diagram you have ever seen is just a portfolio of simpler pieces. Calls, puts, forwards. The shape you see is the sum of their individual payoff lines.

A butterfly is three calls. A straddle is a call plus a put. A collar is stock plus a put minus a call. None of these are exotic. They are just linear combinations of vanillas.

Select a payoff shape below, then hit Decompose to see the component pieces that add up to the green curve. The dashed lines are the individual legs. They sum to the solid green.

Spot at expiryPayoff
Long 90C + Long 130C + Short 2x110C

If any payoff is a sum of simpler payoffs, then pricing any payoff reduces to pricing the pieces. And if you can trade the pieces, you can replicate any shape you want without needing a bespoke instrument. That is the core promise of static replication.

Vanillas as building blocks

A call spread is two calls. A butterfly is three. An iron condor is four. With enough calls and puts at the right strikes, you can approximate any piecewise-linear payoff.

Each vanilla option contributes one “kink” to the combined payoff. A call at strike K bends the payoff upward at K. A put at strike K bends it upward below K. Every kink changes the slope by the option's quantity.

Build your own portfolio below. Add calls and puts at different strikes. Watch the combined payoff update live. Try to build a flat payoff between 90 and 120 with nothing above and below.

Spot at expiryPayoff
Key principle
Combined payoff = Σ qi · payoffi(S)
Each leg contributes its quantity times its individual payoff at any given spot price. The combined shape is just the sum. This linearity is what makes replication possible.

The Breeden-Litzenberger result

The second derivative of call prices with respect to strike gives the risk-neutral probability density. The market is implicitly telling you the probability of every possible outcome.

Breeden and Litzenberger (1978) showed that if you take the grid of call prices across strikes and compute the curvature at each point, you recover the density function of the risk-neutral distribution. No model needed. Just prices and arithmetic.

Breeden-Litzenberger
∂²C / ∂K² = e−rT · f(K)
f(K) is the risk-neutral probability density at strike K. The second derivative of the call price function with respect to strike, scaled by the discount factor, IS the density. Hover over the price grid below to see the curvature at each strike.
Call prices across strikes (S=100, r=5%)
K=60$40.75
K=64$36.80
K=68$32.86
K=72$28.94
K=76$25.06
K=80$21.29
K=84$17.70
K=88$14.42
K=92$11.61
K=96$9.53
K=100$8.50
K=104$6.24
K=108$4.00
K=112$2.56
K=116$1.62
K=120$1.01
K=124$0.63
K=128$0.38
K=132$0.23
K=136$0.14
K=140$0.08
S=100Risk-neutral densityStrike
30%
0.25y

The green curve is the extracted density. Its peak tells you where the market thinks the underlying is most likely to settle. Its width tells you how uncertain the market is. Increase volatility and watch the density flatten and spread.

This is not an estimate or a model output. It is a direct, model-free extraction from market prices. The only assumption is that call prices are twice differentiable in strike, which is satisfied by any arbitrage-free market.

Replicating a binary

A binary call pays $1 above the strike, $0 below. You can approximate it with a tight call spread: buy the call at K, sell the call at K+ε, and scale by 1/ε. As the spread width goes to zero, the ramp becomes a step.

This is the fundamental link between vanillas and binaries. A binary is the limit of a call spread as the spread width shrinks. Equivalently, the binary is the negative derivative of the call price with respect to strike: D(K) = −∂C/∂K.

Drag the slider to tighten the spread. Watch the blue ramp converge to the green step function.

KK+εPayoff$1$0
Binary (target)Call spread (1/ε) × [C(K) - C(K+ε)]
10.0
Wide spread. The ramp is a poor approximation of the binary.Max error: 100.0% of face
Call spread to binary
D(K) = limε→0 (1/ε) · [C(K) − C(K+ε)]
The call spread payoff is a ramp of height 1/ε over a width of ε. As ε shrinks, the ramp steepens into a step function. In the limit, it is exactly the binary. This is why market-makers hedge binaries with tight vanilla spreads — bounded delta, no Dirac spike.

Replicating arbitrary payoffs

Carr and Madan (1998) proved that any twice-differentiable European payoff can be decomposed into three pieces: a forward position, a strip of OTM puts below the forward, and a strip of OTM calls above the forward.

This is the Carr-Madan formula. It says that the curvature of your target payoff — the second derivative f″(K) — determines how much of each OTM option you need. The linear part of the payoff is captured by the forward. The curvature is captured by the option strips.

Select a payoff below, then hit Show Carr-Madan decomposition to see the three pieces. The yellow line is the forward component. The red region is the OTM put strip. The blue region is the OTM call strip. Together they sum to the green target.

F=110PayoffSpot at expiry

Notice the dividing line at F (the forward price). Below F, only puts contribute. Above F, only calls contribute. This is not arbitrary — using OTM options minimizes the cost of replication because OTM options are cheaper than ITM options for the same information content.

The Carr-Madan decomposition is the theoretical foundation of variance swaps, VIX calculation, and portfolio replication strategies. The VIX formula is literally a discrete approximation of this integral. Every time you see a “strip of options,” this is the math behind it.

Where to go next:

Binary Options — the building block of replication ladders

Delta Hedging — the dynamic alternative to static replication

Implied Volatility — extracting market expectations from prices