Merton Jump-Diffusion Option Pricing Calculator
Price European call and put options with the Merton (1976) jump-diffusion model. Adds Poisson jump risk to Black-Scholes, with verified put-call parity. Free, no signup.
Jump Diffusion Merton Levy Process Engine
A clear path from inputs to results.
Price European call and put options when the underlying can gap, not just drift smoothly. The Merton jump-diffusion model adds random Poisson jumps on top of Black-Scholes diffusion, which fattens the tails and captures the kind of overnight gaps and crash risk that a plain Black-Scholes price ignores. It is aimed at options traders, quants, and finance students who want a fair value that reflects jump risk.
How to use
- Enter the spot price (S0) and the strike (K) of the option you want to value.
- Set the risk-free rate (r) and the continuous dividend yield (q) as annual decimals.
- Set the diffusion volatility (σ) — the ordinary Black-Scholes volatility that applies between jumps.
- Set the three jump parameters: the jump intensity λ (expected number of jumps per year), the mean log-jump μJ (negative means jumps are, on average, downward), and the jump volatility δJ (how dispersed the jumps are).
- Set the maturity T in years. The call price, put price, jump compensator κ, and the risk-neutral drift update immediately.
- Read the "Parity error" tile to confirm the result is internally consistent, and use the price-vs-strike, terminal-density, and jump-count charts to see how jumps reshape the distribution.
The formula
Reference: Merton, R. C. (1976), "Option pricing when underlying stock returns are discontinuous", Journal of Financial Economics 3 (1–2), 125–144.
Worked example
At-the-money option with downward jump risk
- Spot S0 = 100; strike K = 100; risk-free rate r = 4.5%; dividend yield q = 1%; diffusion volatility σ = 22%; jump intensity λ = 0.85 per year; mean log-jump μJ = −0.08; jump volatility δJ = 0.25; maturity T = 1.5 years.
- 1
First the jump compensator κ = e^(−0.08 + ½·0.25²) − 1 = −0.047581, so the average jump multiplies the price by about 0.952 (a downward bias). The risk-neutral Poisson intensity is reweighted to λ′ = λ(1+κ) = 0.809556, giving λ′T = 1.214334. The price is a Poisson-weighted sum of Black-Scholes prices: the n-jump term uses variance σ_n² = σ² + nδ²/T and rate r_n = r − λκ + n·ln(1+κ)/T. The zero-jump term (weight 0.2969) uses σ_0 = 0.2200 and r_0 = 0.0854 for a BS call of 16.1249; the one-jump term (weight 0.3605) uses σ_1 = 0.3001 and r_1 = 0.0529 for 17.1997; the two-jump term (weight 0.2189) gives 17.9685; and so on. Summing the series converges to a call of 17.2345 and a put of 12.1961.
Call ≈ 17.2345, put ≈ 12.1961. Put-call parity checks out: C − P = 5.0384 = S·e^(−qT) − K·e^(−rT) = 98.5112 − 93.4728. A 4-million-path Monte Carlo of the exact jump-diffusion SDE gives 17.227 / 12.202, confirming the closed form.
Interpreting the result
The call and put are fair values today in the same currency as the spot and strike. Because the jumps here are biased downward (μJ < 0), the model prices in extra crash risk: compared with plain Black-Scholes at the same diffusion volatility, the out-of-the-money put is worth more and the implied-volatility smile steepens. The jump compensator κ and the risk-neutral drift r − q − λκ show how the expected jump is offset so the discounted price stays a martingale, and the near-zero parity error confirms the call and put are mutually consistent.
Assumptions & limitations
- Jumps arrive as a Poisson process with constant intensity λ, and log-jump sizes are independent normal draws with mean μJ and standard deviation δJ — real markets show clustering and fatter jump tails than this.
- Diffusion volatility σ, the interest rate r, and the dividend yield q are all constant over the life of the option; there is no stochastic volatility or term structure.
- The price is for European exercise only (settlement at maturity); it does not value early exercise, so it is not a direct American-option price.
- The infinite Poisson sum is truncated once the remaining probability mass is numerically negligible, so very large jump counts contribute nothing to the displayed price.
- Jump risk is treated as diversifiable and priced under Merton's risk-neutral reweighting; if jump risk carries a market premium, the true market price can differ.
- The normal CDF uses the Abramowitz-Stegun rational approximation (error ≈ 1.5e-7), which is far finer than the four-to-six digits shown.
Frequently asked questions
How is the Merton model different from Black-Scholes?
Black-Scholes assumes the price moves only by continuous diffusion, so returns are exactly log-normal. Merton (1976) adds sudden Poisson jumps on top of that diffusion, which produces fatter tails and skew. The price becomes a probability-weighted average of Black-Scholes prices, one for each possible number of jumps before expiry. When the jump intensity λ is set to zero, the Merton price collapses exactly back to Black-Scholes.
What is the jump compensator κ?
κ = e^(μJ + ½δJ²) − 1 is the expected proportional change in price from a single jump, E[J − 1]. The model subtracts λκ from the drift so that, despite the jumps, the discounted price is still a fair (martingale) process under the risk-neutral measure. With μJ = −0.08 and δJ = 0.25 the compensator is about −0.0476, i.e. the average jump knocks roughly 4.8% off the price.
How were the worked-example numbers verified?
The call of 17.2345 and put of 12.1961 come from running the engine's own math and are locked in by a reference test that checks three things: put-call parity holds, the λ = 0 case equals plain Black-Scholes, and the default inputs reproduce these prices. They were independently cross-checked by a 4-million-path Monte Carlo simulation of the exact jump-diffusion SDE, which returned 17.227 and 12.202.
What do λ, μJ and δJ mean?
λ (lambda) is the jump intensity — the expected number of jumps per year; λ = 0.85 means a little under one jump per year on average. μJ is the mean of the log jump size: a negative value such as −0.08 means jumps are, on average, downward (a roughly 8% drop). δJ is the standard deviation of the log jump size, controlling how big and dispersed the jumps are. Together they set the skew and kurtosis the model adds to the return distribution.
Why does the calculator show a put-call parity error?
Put-call parity says C − P must equal S·e^(−qT) − K·e^(−rT) for European options, regardless of the model. The parity-error tile reports how far the computed call and put stray from that identity. For a correct Merton price it is essentially zero (here about 1e-15, pure floating-point noise), which is a strong internal check that the Poisson-mixture pricing is implemented correctly.
Can I use this to price American options?
No. This is a European-option model: it assumes exercise only at maturity. American options allow early exercise and are generally worth at least as much; pricing them under jump-diffusion needs a lattice or least-squares Monte Carlo method rather than the closed-form Poisson mixture used here.
Methodology last reviewed 2026-10-06. Results are informational and not financial or engineering advice — see our disclaimer.