geometricBrownianMotion.hpp
Go to the documentation of this file.
1 #ifndef JULIAN_GEOMETRICBROWNIANMOTION_HPP
2 #define JULIAN_GEOMETRICBROWNIANMOTION_HPP
3 
5 
6 namespace julian {
7 
23  public:
25  GeometricBrownianMotion(double drift, double volatility);
26  void setDrift(double);
27  void setVolatility(double);
28 
29  Path getPath(double, const TimeGrid&, SmartPointer<UniformRNG>& rng) const;
30  Path getPath(double, const TimeGrid&, const std::vector<double>&) const;
31 
32  virtual GeometricBrownianMotion* clone() const;
34  private:
35  double drift_;
36  double volatility_;
37  };
38 }
39 #endif
Class implements a TimeGrid object.
Definition: timeGrid.hpp:21
virtual GeometricBrownianMotion * clone() const
Virtual copy constructor.
Definition: geometricBrownianMotion.cpp:30
Path is a series of real numbers indexed with time. In general, it is identical with a series of time...
Definition: path.hpp:18
Definition: cadHoliday.cpp:3
Path getPath(double, const TimeGrid &, SmartPointer< UniformRNG > &rng) const
generates path
Definition: geometricBrownianMotion.cpp:42
Template of deep-coping smart pointer.
Definition: smartPointer.hpp:14
Class is implements geometric Brownian motion.
Definition: geometricBrownianMotion.hpp:22
Class is an abstract type expressing the concept of stochastic process.
Definition: stochasticProcess.hpp:20
double volatility_
Volatility of the Geometric Brownian Motion.
Definition: geometricBrownianMotion.hpp:36
void setDrift(double)
sets drift
Definition: geometricBrownianMotion.cpp:17
double drift_
Drift of the Geometric Brownian Motion.
Definition: geometricBrownianMotion.hpp:33
void setVolatility(double)
sets volatility
Definition: geometricBrownianMotion.cpp:24
File contains interface for stochastic processes.