QuantLib_StochasticProcess (3) Linux Manual Page
QuantLib::StochasticProcess – multi-dimensional stochastic process class.
Synopsis
#include <ql/stochasticprocess.hpp>Inherits QuantLib::Observer, and QuantLib::Observable.
Inherited by ForwardMeasureProcess, G2Process, GJRGARCHProcess, HestonProcess, JointStochasticProcess, LiborForwardModelProcess, StochasticProcess1D, and StochasticProcessArray.
Classes
class discretizationdiscretization of a stochastic process over a given time interval
Public Member Functions
Stochastic process interface virtual Size size () const =0
returns the number of dimensions of the stochastic process
virtual Size factors () const
returns the number of independent factors of the process
virtual Disposable< Array > initialValues () const =0
returns the initial values of the state variables
virtual Disposable< Array > drift (Time t, const Array &x) const =0
returns the drift part of the equation, i.e., $ mu(t, mathrm{x}_t) $
virtual Disposable< Matrix > diffusion (Time t, const Array &x) const =0
returns the diffusion part of the equation, i.e. $ igma(t, mathrm{x}_t) $
virtual Disposable< Array > expectation (Time t0, const Array &x0, Time dt) const
virtual Disposable< Matrix > stdDeviation (Time t0, const Array &x0, Time dt) const
virtual Disposable< Matrix > covariance (Time t0, const Array &x0, Time dt) const
virtual Disposable< Array > evolve (Time t0, const Array &x0, Time dt, const Array &dw) const
virtual Disposable< Array > apply (const Array &x0, const Array &dx) const
utilities
virtual Time time (const Date &) const
Observer interface
void update ()
Protected Member Functions
StochasticProcess (const boost::shared_ptr< discretization > &)Protected Attributes
boost::shared_ptr< discretization > discretization_Detailed Description
multi-dimensional stochastic process class. This class describes a stochastic process governed by [ dmathrm{x}_t = mu(t, x_t)mathrm{d}t + igma(t, mathrm{x}_t) dot dmathrm{W}_t. ]
Member Function Documentation
virtual Disposable<Array> expectation (Time t0, const Array & x0, Time dt) const [virtual]
returns the expectation $ E(mathrm{x}_{t_0 + Delta t} | mathrm{x}_{t_0} = mathrm{x}_0) $ of the process after a time interval $ Delta t $ according to the given discretization. This method can be overridden in derived classes which want to hard-code a particular discretization. Reimplemented in G2Process, G2ForwardProcess, and StochasticProcessArray.
virtual Disposable<Matrix> stdDeviation (Time t0, const Array & x0, Time dt) const [virtual]
returns the standard deviation $ S(mathrm{x}_{t_0 + Delta t} | mathrm{x}_{t_0} = mathrm{x}_0) $ of the process after a time interval $ Delta t $ according to the given discretization. This method can be overridden in derived classes which want to hard-code a particular discretization. Reimplemented in G2Process, G2ForwardProcess, and StochasticProcessArray.
virtual Disposable<Matrix> covariance (Time t0, const Array & x0, Time dt) const [virtual]
returns the covariance $ V(mathrm{x}_{t_0 + Delta t} | mathrm{x}_{t_0} = mathrm{x}_0) $ of the process after a time interval $ Delta t $ according to the given discretization. This method can be overridden in derived classes which want to hard-code a particular discretization. Reimplemented in LiborForwardModelProcess, G2Process, G2ForwardProcess, and StochasticProcessArray.
virtual Disposable<Array> evolve (Time t0, const Array & x0, Time dt, const Array & dw) const [virtual]
returns the asset value after a time interval $ Delta t $ according to the given discretization. By default, it returns [ E(mathrm{x}_0,t_0,Delta t) + S(mathrm{x}_0,t_0,Delta t) dot Delta mathrm{w} ] where $ E $ is the expectation and $ S $ the standard deviation. Reimplemented in LiborForwardModelProcess, BatesProcess, GJRGARCHProcess, HestonProcess, and StochasticProcessArray.
virtual Disposable<Array> apply (const Array & x0, const Array & dx) const [virtual]
applies a change to the asset value. By default, it returns $ mathrm{x} + Delta mathrm{x} $. Reimplemented in LiborForwardModelProcess, GJRGARCHProcess, HestonProcess, and StochasticProcessArray.
virtual Time time (const Date &) const [virtual]
returns the time value corresponding to the given date in the reference system of the stochastic process. Note:
- As a number of processes might not need this functionality, a default implementation is given which raises an exception.
Reimplemented in GeneralizedBlackScholesProcess, GJRGARCHProcess, HestonProcess, Merton76Process, and StochasticProcessArray.
void update () [virtual]
This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.Implements Observer.
Reimplemented in GeneralizedBlackScholesProcess, and HybridHestonHullWhiteProcess.
