GeneralizedBlackScholesProcess Class Reference
[Stochastic processes]

Generalized Black-Scholes stochastic process. More...

#include <ql/processes/blackscholesprocess.hpp>

Inheritance diagram for GeneralizedBlackScholesProcess:

List of all members.

Public Member Functions

 GeneralizedBlackScholesProcess (const Handle< Quote > &x0, const Handle< YieldTermStructure > &dividendTS, const Handle< YieldTermStructure > &riskFreeTS, const Handle< BlackVolTermStructure > &blackVolTS, const boost::shared_ptr< discretization > &d=boost::shared_ptr< discretization >(new EulerDiscretization))
Time time (const Date &) const
StochasticProcess1D interface
Real x0 () const
 returns the initial value of the state variable
Real drift (Time t, Real x) const
Real diffusion (Time t, Real x) const
Real apply (Real x0, Real dx) const
Real expectation (Time t0, Real x0, Time dt) const
Real evolve (Time t0, Real x0, Time dt, Real dw) const
Observer interface
void update ()
Inspectors
const Handle< Quote > & stateVariable () const
const Handle
< YieldTermStructure > & 
dividendYield () const
const Handle
< YieldTermStructure > & 
riskFreeRate () const
const Handle
< BlackVolTermStructure > & 
blackVolatility () const
const Handle
< LocalVolTermStructure > & 
localVolatility () const


Detailed Description

Generalized Black-Scholes stochastic process.

This class describes the stochastic process governed by

\[ dS(t, S) = (r(t) - q(t) - \frac{\sigma(t, S)^2}{2}) dt + \sigma dW_t. \]


Member Function Documentation

Real drift ( Time  t,
Real  x 
) const [virtual]

Possible enhancements:
revise extrapolation

Implements StochasticProcess1D.

Reimplemented in ExtendedBlackScholesMertonProcess.

Real diffusion ( Time  t,
Real  x 
) const [virtual]

Possible enhancements:
revise extrapolation

Implements StochasticProcess1D.

Reimplemented in ExtendedBlackScholesMertonProcess.

Real apply ( Real  x0,
Real  dx 
) const [virtual]

applies a change to the asset value. By default, it returns $ x + \Delta x $.

Reimplemented from StochasticProcess1D.

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

Warning:
raises a "not implemented" exception. It should be rewritten to return the expectation E(S) of the process, not exp(E(log S)).

Reimplemented from StochasticProcess1D.

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

returns the asset value after a time interval $ \Delta t $ according to the given discretization. By default, it returns

\[ E(x_0,t_0,\Delta t) + S(x_0,t_0,\Delta t) \cdot \Delta w \]

where $ E $ is the expectation and $ S $ the standard deviation.

Reimplemented from StochasticProcess1D.

Reimplemented in ExtendedBlackScholesMertonProcess.

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 from StochasticProcess.

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.

Reimplemented from StochasticProcess.