Docs / nablatensor-quant / com.nablatensor.quant

class

KouJumpModel

Kou double-exponential jump-diffusion as a composable step block (Seam 5).

Structure follows MertonJumpModel: one smoothed at-most-one-jump indicator per step, but the log jump size is drawn from the asymmetric two-sided exponential by inverting each side's CDF from a uniform. The risk-neutral compensator is

kappa = probUp * etaUp / (etaUp - 1) + (1 - probUp) * etaDown / (etaDown + 1) - 1

probUp, etaUp, etaDown are differentiable inputs.

Constructors

KouJumpModel(Nabla.Inputs<KouMarket> in, double maturity, int steps, double indicatorWidth)

Methods

ADouble start(Nabla.Inputs<KouMarket> in)
ADouble step(AadRecorder rec, ADouble s, ADouble z, ADouble uJump, ADouble uSide, ADouble uMag)

One step. z drives the diffusion, uJump selects whether a jump occurs, uSide selects up vs down, uMag is inverted to the exponential magnitude.

static BiConsumer<AadRecorder, Nabla.Inputs<KouMarket>> european(OptionType type, double maturity, int steps)
static BiConsumer<AadRecorder, Nabla.Inputs<KouMarket>> european(OptionType type, double maturity, int steps, double indicatorWidth)