Class is implements geometric Brownian motion. More...

#include <geometricBrownianMotion.hpp>

Inheritance diagram for julian::GeometricBrownianMotion:
julian::StochasticProcess

Public Member Functions

 GeometricBrownianMotion (double drift, double volatility)
 constructor More...
 
void setDrift (double)
 sets drift More...
 
void setVolatility (double)
 sets volatility More...
 
Path getPath (double, const TimeGrid &, SmartPointer< UniformRNG > &rng) const
 generates path More...
 
Path getPath (double, const TimeGrid &, const std::vector< double > &) const
 generates path More...
 
virtual GeometricBrownianMotionclone () const
 Virtual copy constructor. More...
 
- Public Member Functions inherited from julian::StochasticProcess
 StochasticProcess ()
 Constructor. More...
 
virtual ~StochasticProcess ()
 Destructor. More...
 

Private Attributes

double drift_
 Drift of the Geometric Brownian Motion. More...
 
double volatility_
 Volatility of the Geometric Brownian Motion. More...
 

Detailed Description

Class is implements geometric Brownian motion.

Arithmetic Geometric Motion (ABM) is a stochastic process governed by following SDE:

\[\frac{dX_{t}}{X_{t}} = \mu dt + \sigma dW_{t}\]

where:

  • $ \mu $ is drift
  • $ \sigma $ is volatility
  • $ dW $ is Wiener Process

Constructor & Destructor Documentation

julian::GeometricBrownianMotion::GeometricBrownianMotion ( double  drift,
double  volatility 
)

constructor

Member Function Documentation

GeometricBrownianMotion * julian::GeometricBrownianMotion::clone ( ) const
virtual

Virtual copy constructor.

Implements julian::StochasticProcess.

Path julian::GeometricBrownianMotion::getPath ( double  x0,
const TimeGrid tg,
SmartPointer< UniformRNG > &  rng 
) const
virtual

generates path

Parameters
x0Value of the process for t = 0;
tgin time for which the value of process is generated
rngrandom number generator that will be used to generate stochastic process
Returns
path representing time series

Implements julian::StochasticProcess.

Path julian::GeometricBrownianMotion::getPath ( double  x0,
const TimeGrid tg,
const std::vector< double > &  rnds 
) const
virtual

generates path

Parameters
x0Value of the process for t = 0;
tgin time for which the value of process is generated
rndsrandom number that will be used to generate the path
Returns
path representing time series

Implements julian::StochasticProcess.

void julian::GeometricBrownianMotion::setDrift ( double  drift)

sets drift

void julian::GeometricBrownianMotion::setVolatility ( double  volatility)

sets volatility

Member Data Documentation

double julian::GeometricBrownianMotion::drift_
private

Drift of the Geometric Brownian Motion.

double julian::GeometricBrownianMotion::volatility_
private

Volatility of the Geometric Brownian Motion.


The documentation for this class was generated from the following files:
  • C:/Unix/home/OEM/jULIAN/src/mathematics/stochasticProcesses/geometricBrownianMotion.hpp
  • C:/Unix/home/OEM/jULIAN/src/mathematics/stochasticProcesses/geometricBrownianMotion.cpp