Compound Poisson#

class quantflow.sp.poisson.CompoundPoissonProcess(*, intensity: Annotated[float, Ge(ge=0)] = 1.0, jumps: D)#

A generic Compound Poisson process.

Methods:

analytical_mean

Expected value at a time horizon

analytical_variance

Expected variance at a time horizon

arrivals

Same as Poisson process

characteristic_exponent

The characteristic exponent of the Compound Poisson process, given by

sample_jumps

Sample jump sizes from an exponential distribution with rate parameter :class:b

Attributes:

intensity

Intensity rate \(\lambda\) of the Poisson process

jumps

Jump size distribution

model_config

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

analytical_mean(t: ndarray[tuple[int, ...], dtype[floating[Any]]] | float) ndarray[tuple[int, ...], dtype[floating[Any]]] | float#

Expected value at a time horizon

analytical_variance(t: ndarray[tuple[int, ...], dtype[floating[Any]]] | float) ndarray[tuple[int, ...], dtype[floating[Any]]] | float#

Expected variance at a time horizon

arrivals(time_horizon: float = 1) list[float]#

Same as Poisson process

characteristic_exponent(t: ndarray[tuple[int, ...], dtype[floating[Any]]] | float, u: int | float | complex | ndarray | Series) int | float | complex | ndarray | Series#

The characteristic exponent of the Compound Poisson process, given by

\[\phi_{x_t,u} = t\lambda \left(1 - \Phi_{j,u}\right)\]

where \(\Phi_{j,u}\) is the characteristic function of the jump distribution

sample_jumps(n: int) ndarray[tuple[int, ...], dtype[floating[Any]]]#

Sample jump sizes from an exponential distribution with rate parameter :class:b

intensity: float#

Intensity rate \(\lambda\) of the Poisson process

It determines the number of jumps in the same way as the PoissonProcess

jumps: D#

Jump size distribution

model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].