Normal Inverse Gaussian Model

The Normal Inverse Gaussian (NIG) model is a Levy-process specification designed to accommodate asymmetric, semi-heavy-tailed returns. It is built by mixing a normal distribution with an inverse Gaussian clock. Relative to Gaussian returns, it can assign much more probability to large moves; relative to pure power-law models, its exponential tails retain useful moments and transform methods.

NIG is best understood as a distributional and pricing tool rather than a claim that all intraday price formation follows one universal process. A model can fit daily index returns and still misrepresent overnight gaps, earnings jumps, volatility clustering, or the risk-neutral left tail. Define which horizon and which instrument the model is meant to serve.

Parameters and admissible region

One common NIG characteristic function is:

phi_t(u) = exp(i mu u t + delta t [
  sqrt(alpha^2 - beta^2) - sqrt(alpha^2 - (beta + i u)^2)
])

The parameters must satisfy alpha > |beta|, with delta > 0. The parameter alpha controls tail decay, beta controls asymmetry, delta sets scale, and mu shifts location. Smaller alpha permits heavier tails, while a negative beta tends to produce a heavier left side.

ParameterConstraintEconomic interpretation
alphaalpha > 0tail steepness
beta`beta
deltadelta > 0activity/scale
mureallocation drift

The model has infinitely many small jumps but finite variation only in particular parameter regimes. Calling it “jump diffusion” is therefore imprecise: NIG has no Brownian component in its standard Levy decomposition, though paths can resemble a noisy diffusion at coarse observation intervals.

The mixture construction

An equivalent representation uses an inverse Gaussian subordinator Y_t:

X_t = mu t + beta Y_t + W_(Y_t)

with the parameters of Y_t chosen to recover the exponent above. This representation helps simulation and explains the name: returns are conditionally normal, but random business time creates skewness and heavy tails. It also exposes a key limitation: independent increments do not create a persistent latent volatility state.

def admissible_nig(alpha, beta, delta):
    return alpha > abs(beta) and delta > 0

def nig_exponent(u, alpha, beta, delta, mu=0.0):
    root0 = np.sqrt(alpha**2 - beta**2)
    rootu = np.sqrt(alpha**2 - (beta + 1j*u)**2)
    return 1j * mu * u + delta * (root0 - rootu)

Complex square roots require consistent branches. Unit tests should check phi(0)=1, conjugate symmetry phi(-u)=conj(phi(u)), and continuity as parameters change. A numerically plausible price can conceal the wrong branch.

Turning NIG into an option model

For St = S0 exp((r-q+omega)t + X_t), select omega so that the discounted asset price is a martingale:

omega = -psi(-i)

where psi is the per-unit-time log characteristic function. This exists only when the exponential moment at one is finite; in the convention above it requires alpha > |beta + 1| for the relevant direction. The pricing domain is stricter than the ordinary distribution domain.

Implementation testExpected result
phi(0)exactly one within tolerance
martingale forwardS0 exp((r-q)T)
call monotonicitydeclines with strike
convexitynonnegative discrete second difference
put-call parityholds at every fitted strike

Fourier inversion is attractive because NIG’s transform is explicit. Use a damping parameter that lies inside the moment strip, then validate its price slice with a second numerical method. Do not extrapolate a fitted smile without checking static arbitrage; transform smoothness does not guarantee no-arbitrage interpolation.

Estimation under P and Q

Maximum likelihood can estimate NIG from returns, but high-frequency data bring bid-ask bounce, discreteness, and irregular clock time. At lower frequency, volatility clustering violates the independent-increment assumption and can be absorbed spuriously as fatter NIG tails. Fit likelihoods across sampling intervals and compare predictive quantiles, not just in-sample log likelihood.

For options, calibrate under Q to liquid prices after cleaning crossed, stale, and zero-bid quotes. Historical alpha and beta do not equal their risk-neutral counterparts; the difference is an implicit risk premium. This is the same measure separation emphasized in Levy processes in finance and risk-neutral pricing and martingales.

Where NIG fits

NIG can be a compact benchmark for a single maturity’s wings or a return-risk engine with analytic quantiles. It is less natural when the problem requires a forward variance curve, a dynamic smile, or a path-dependent hedge. Compare jump behavior to jump-diffusion models and persistent variance to Heston stochastic volatility. A better calibration is useful only if it improves the risk measure or hedge the desk actually uses.

Key takeaways

  • NIG uses an inverse-Gaussian time change to generate asymmetric semi-heavy tails.
  • The constraints alpha > |beta| and the stricter pricing moment domain must be enforced.
  • A risk-neutral drift correction is required even when the return process is well specified.
  • Transform methods are fast, but branch, moment-strip, and arbitrage tests are essential.
  • Independent increments fit return shape, not volatility clustering or all path-dependent risk.
#normal inverse gaussian #levy processes #option pricing #heavy tails