julian::ArithmeticBrownianMotion Class Reference

Class is implements arithmetic Brownian motion. More...

#include <arithmeticBrownianMotion.hpp>

Inheritance diagram for julian::ArithmeticBrownianMotion:
julian::StochasticProcess

Public Member Functions

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

Private Attributes

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

Detailed Description

Class is implements arithmetic Brownian motion.

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

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

where:

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

Constructor & Destructor Documentation

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

constructor

Member Function Documentation

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

Virtual copy constructor.

Implements julian::StochasticProcess.

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

Generates path.

Parameters
x0Value of the process for t = 0;
tgpoints in 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::ArithmeticBrownianMotion::getPath ( double  x0,
const TimeGrid tg,
const std::vector< double > &  rnds 
) const
virtual

generates path

Parameters
x0Value of the process for t = 0;
tgpoints in 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::ArithmeticBrownianMotion::setDrift ( double  input)

sets drift

void julian::ArithmeticBrownianMotion::setVolatility ( double  input)

sets volatility

Member Data Documentation

double julian::ArithmeticBrownianMotion::drift_
private

Drift of the Arithmetic Brownian Motion.

double julian::ArithmeticBrownianMotion::volatility_
private

Volatility of the Arithmetic Brownian Motion.


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