QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
GeometricBrownianMotionProcess Class Reference

Geometric brownian-motion process. More...

#include <ql/processes/geometricbrownianprocess.hpp>

+ Inheritance diagram for GeometricBrownianMotionProcess:
+ Collaboration diagram for GeometricBrownianMotionProcess:

Public Member Functions

 GeometricBrownianMotionProcess (double initialValue, double mue, double sigma)
 
Real x0 () const override
 returns the initial value of the state variable More...
 
Real drift (Time t, Real x) const override
 returns the drift part of the equation, i.e. \( \mu(t, x_t) \) More...
 
Real diffusion (Time t, Real x) const override
 returns the diffusion part of the equation, i.e. \( \sigma(t, x_t) \) More...
 
- Public Member Functions inherited from StochasticProcess1D
virtual Real expectation (Time t0, Real x0, Time dt) const
 
virtual Real stdDeviation (Time t0, Real x0, Time dt) const
 
virtual Real variance (Time t0, Real x0, Time dt) const
 
virtual Real evolve (Time t0, Real x0, Time dt, Real dw) const
 
virtual Real apply (Real x0, Real dx) const
 
- Public Member Functions inherited from StochasticProcess
 ~StochasticProcess () override=default
 
virtual Size factors () const
 returns the number of independent factors of the process More...
 
virtual Time time (const Date &) const
 
void update () override
 
- Public Member Functions inherited from Observer
 Observer ()=default
 
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
virtual ~Observer ()
 
std::pair< iterator, boolregisterWith (const ext::shared_ptr< Observable > &)
 
void registerWithObservables (const ext::shared_ptr< Observer > &)
 
Size unregisterWith (const ext::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
virtual void update ()=0
 
virtual void deepUpdate ()
 
- Public Member Functions inherited from Observable
 Observable ()
 
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
 Observable (Observable &&)=delete
 
Observableoperator= (Observable &&)=delete
 
virtual ~Observable ()=default
 
void notifyObservers ()
 

Protected Attributes

double initialValue_
 
double mue_
 
double sigma_
 
- Protected Attributes inherited from StochasticProcess1D
ext::shared_ptr< discretizationdiscretization_
 
- Protected Attributes inherited from StochasticProcess
ext::shared_ptr< discretizationdiscretization_
 

Additional Inherited Members

- Public Types inherited from Observer
typedef set_type::iterator iterator
 
- Protected Member Functions inherited from StochasticProcess1D
 StochasticProcess1D ()=default
 
 StochasticProcess1D (ext::shared_ptr< discretization >)
 
- Protected Member Functions inherited from StochasticProcess
 StochasticProcess ()=default
 
 StochasticProcess (ext::shared_ptr< discretization >)
 

Detailed Description

Geometric brownian-motion process.

This class describes the stochastic process governed by

\[ dS(t, S)= \mu S dt + \sigma S dW_t. \]

Definition at line 41 of file geometricbrownianprocess.hpp.

Constructor & Destructor Documentation

◆ GeometricBrownianMotionProcess()

GeometricBrownianMotionProcess ( double  initialValue,
double  mue,
double  sigma 
)

Definition at line 27 of file geometricbrownianprocess.cpp.

Member Function Documentation

◆ x0()

Real x0 ( ) const
overridevirtual

returns the initial value of the state variable

Implements StochasticProcess1D.

Definition at line 35 of file geometricbrownianprocess.cpp.

◆ drift()

Real drift ( Time  t,
Real  x 
) const
overridevirtual

returns the drift part of the equation, i.e. \( \mu(t, x_t) \)

Implements StochasticProcess1D.

Definition at line 39 of file geometricbrownianprocess.cpp.

◆ diffusion()

Real diffusion ( Time  t,
Real  x 
) const
overridevirtual

returns the diffusion part of the equation, i.e. \( \sigma(t, x_t) \)

Implements StochasticProcess1D.

Definition at line 43 of file geometricbrownianprocess.cpp.

Member Data Documentation

◆ initialValue_

double initialValue_
protected

Definition at line 51 of file geometricbrownianprocess.hpp.

◆ mue_

double mue_
protected

Definition at line 52 of file geometricbrownianprocess.hpp.

◆ sigma_

double sigma_
protected

Definition at line 53 of file geometricbrownianprocess.hpp.