GeneralizedOrnsteinUhlenbeckProcess Class Reference

Piecewise linear Ornstein-Uhlenbeck process class. More...

#include <ql/experimental/shortrate/generalizedornsteinuhlenbeckprocess.hpp>

Inheritance diagram for GeneralizedOrnsteinUhlenbeckProcess:

List of all members.

Public Member Functions

 GeneralizedOrnsteinUhlenbeckProcess (const boost::function< Real(Time)> &speed, const boost::function< Real(Time)> &vol, Real x0=0.0, Real level=0.0)
Real speed (Time t) const
Real volatility (Time t) const
Real level () const
StochasticProcess1D interface
Real x0 () const
 returns the initial value of the state variable
Real drift (Time t, Real x) const
 returns the drift part of the equation, i.e. $ \mu(t, x_t) $
Real diffusion (Time t, Real x) const
 returns the diffusion part of the equation, i.e. $ \sigma(t, x_t) $
Real expectation (Time t0, Real x0, Time dt) const
Real stdDeviation (Time t0, Real x0, Time dt) const
Real variance (Time t0, Real x0, Time dt) const

Detailed Description

Piecewise linear Ornstein-Uhlenbeck process class.

This class describes the Ornstein-Uhlenbeck process governed by

\[ dx = a (level - x_t) dt + \sigma dW_t \]

where the coefficients a and sigma are piecewise linear.


Member Function Documentation

Real expectation ( Time  t0,
Real  x0,
Time  dt 
) const [virtual]

returns the expectation $ E(x_{t_0 + \Delta t} | x_{t_0} = 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 from StochasticProcess1D.

Real stdDeviation ( Time  t0,
Real  x0,
Time  dt 
) const [virtual]

returns the standard deviation $ S(x_{t_0 + \Delta t} | x_{t_0} = 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 from StochasticProcess1D.

Real variance ( Time  t0,
Real  x0,
Time  dt 
) const [virtual]

returns the variance $ V(x_{t_0 + \Delta t} | x_{t_0} = 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 from StochasticProcess1D.