26#ifndef quantlib_merton_76_process_hpp
27#define quantlib_merton_76_process_hpp
29#include <ql/processes/blackscholesprocess.hpp>
30#include <ql/processes/eulerdiscretization.hpp>
45 const ext::shared_ptr<discretization>& d =
50 Real drift(
Time,
Real)
const override { QL_FAIL(
"Merton76Process does not implement drift"); }
52 Real apply(
Real,
Real)
const override { QL_FAIL(
"Merton76Process does not implement apply"); }
Euler discretization for stochastic processes.
Shared handle to an observable.
Merton-76 jump-diffusion process.
Real apply(Real, Real) const override
Real drift(Time, Real) const override
returns the drift part of the equation, i.e.
const Handle< Quote > & jumpIntensity() const
const Handle< Quote > & logJumpVolatility() const
Real diffusion(Time, Real) const override
returns the diffusion part of the equation, i.e.
const Handle< Quote > & stateVariable() const
Handle< Quote > logJumpVolatility_
Handle< Quote > logMeanJump_
const Handle< YieldTermStructure > & dividendYield() const
Time time(const Date &) const override
ext::shared_ptr< GeneralizedBlackScholesProcess > blackProcess_
const Handle< Quote > & logMeanJump() const
Handle< Quote > jumpIntensity_
const Handle< BlackVolTermStructure > & blackVolatility() const
Real x0() const override
returns the initial value of the state variable
const Handle< YieldTermStructure > & riskFreeRate() const
1-dimensional stochastic process
Real Time
continuous quantity with 1-year units