44 gamma_(gamma), delta_(delta),
45 eps_(eps), zeta_(zeta),
d_(
d),
47 sig2_(sig2),
a_(a),
b_(
b),
48 theta1_(theta1), theta2_(theta2), theta3_(theta3),
62 return muPrime +
theta1_*(mu-x);
80 urng_ = ext::make_shared<urng_type>((
unsigned long)(1234UL * dw + 56789UL));
83 du[0] =
urng_->next().value;
84 du[1] =
urng_->next().value;
92 const Time t = t0 + 0.5*dt;
102 const Real jumpIntensity
104 const Time interarrival = -1.0/jumpIntensity*std::log(du[0]);
106 if (interarrival < dt) {
1-D array used in linear algebra.
Euler discretization for stochastic processes.
Real diffusion(Time t, Real x) const override
returns the diffusion part of the equation, i.e.
ext::shared_ptr< PseudoRandom::urng_type > urng_
Real stdDeviation(Time t0, Real x0, Time dt) const override
Real evolve(Time t0, Real x0, Time dt, Real dw) const override
Real drift(Time t, Real x) const override
returns the drift part of the equation, i.e.
GemanRoncoroniProcess(Real x0, Real alpha, Real beta, Real gamma, Real delta, Real eps, Real zeta, Real d, Real k, Real tau, Real sig2, Real a, Real b, Real theta1, Real theta2, Real theta3, Real psi)
Real x0() const override
returns the initial value of the state variable
1-dimensional stochastic process
virtual Real evolve(Time t0, Real x0, Time dt, Real dw) const
discretization of a stochastic process over a given time interval
Euler discretization for stochastic processes.
ext::function< Real(Real)> b
Real Time
continuous quantity with 1-year units
Real Volatility
volatility
functionals and combinators not included in the STL