2.5.9. sdepy.jumpdiff_process¶
-
class
sdepy.
jumpdiff_process
(paths=1, vshape=(), dtype=None, steps=None, i0=0, info=None, getinfo=True, method='euler', x0=1., mu=0., sigma=1., dw=None, corr=None, rho=None, dj=None, dn=None, ptype=int, lam=1., y=None)[source]¶ Jump-diffusion process (lognormal process with compound Poisson logarithmic jumps).
Generates a process x(t) that solves the following SDE (see [1]):
dx(t) = mu(t)*x(t)*dt + sigma(t)*x(t)*dw(t, dt) + x(t)*dj(t, dt)
where
dw(t, dt)
are standard Wiener process increments with correlation matrix specified bycorr(t)
orrho(t)
, anddj(t, dt)
are increments of a Poisson process with intensitylam(t)
, compounded with random variates distributed asexp(y(t)) - 1
.Parameters: - paths, vshape, dtype, steps, i0, info, getinfo, method
See
SDE
class documentation.- x0 : array-like
Initial condition.
- mu, sigma : array-like, or callable
SDE parameters.
- dw, corr, rho
Specification of stochasticity source of Wiener process increments. See
SDE.source_dw
documentation.- dj, dn, ptype, lam, y
Specification of stochasticity source of compound Poisson process increments. See
SDE.source_dj
documentation.
Notes
The drift of the mean value x_mean(t) of x(t) is mu(t) + nu(t), i.e. dx_mean(t)/dt = x_mean(t)*(mu(t) + nu(t)), where:
nu(t) = lam(t)*(y_exp_mean(t) - 1) y_exp_mean(t) = average of exp(y(t))
x(t)
is obtained via Euler-Maruyama numerical integration of the following equivalent SDE fora(t) = log(x(t))
:da(t) = (mu(t) - sigma(t)**2/2)*dt + x(t)*sigma(t)*dw(t, dt) + x(t)*dh(t, dt)
where
dh(t, dt)
are increments of a Poisson process with intensitylam(t)
compounded with random variates distributed asy(t)
.References
[1] Tankov P Voltchkova E 2009, Jump-diffusion models: a practitioner’s guide, Banque et Marches, No. 99, March-April 2009 (available at: http://www.proba.jussieu.fr/pageperso/tankov/tankov_voltchkova.pdf) Attributes: - See SDE class documentation.
Methods
See SDE class documentation.