Class BimodalGaussian
Defined in File bimodal_gaussian.hpp
Inheritance Relationships
Base Type
public otyca::StochasticProcess
(Class StochasticProcess)
Derived Types
public otyca::TimeBoundedBimodalGaussian
(Class TimeBoundedBimodalGaussian)public otyca::TimeFixedBimodalGaussian
(Class TimeFixedBimodalGaussian)
Class Documentation
-
class BimodalGaussian : public otyca::StochasticProcess
A stochastic jump process exhibiting bimodal behavior with a mean and a standard deviation parameter.
The BimodalGaussian jump process can be used to model events, e.g. stock earning announcements.
The model is parameterized by:
mu
: the mean of the jumpsigma
: the standard deviation of the jump
Subclassed by otyca::TimeBoundedBimodalGaussian, otyca::TimeFixedBimodalGaussian
Public Functions
-
inline virtual BimodalGaussian *clone() const
Clones the current object.
- Returns:
A new instance of BimodalGaussian.
-
inline BimodalGaussian()
Default constructor. Initializes the process with default parameters.
-
inline BimodalGaussian(double mu, double sigma)
Parameterized constructor.
- Parameters:
mu – Mean of the distribution.
sigma – Standard deviation of the distribution.
-
inline virtual ~BimodalGaussian()
Destructor.
-
inline double get_mu() const
Gets the mean parameter.
- Returns:
The mean of the distribution.
-
inline void set_mu(double mu)
Sets the mean parameter.
- Parameters:
mu – The new mean value.
-
inline double get_sigma() const
Gets the standard deviation parameter.
- Returns:
The standard deviation of the distribution.
-
inline void set_sigma(double sigma)
Sets the standard deviation parameter.
- Parameters:
sigma – The new standard deviation value.
-
arma::cx_colvec characteristic_function(const arma::cx_colvec &u) const
-
virtual arma::cx_mat characteristic_function(const arma::cx_colvec &u, const arma::rowvec &t) const override
Computes the characteristic function.
- Parameters:
u – Complex-valued column vector of Fourier arguments.
t – Row vector of time points.
- Returns:
A characteristic function matrix where rows correspond to u and columns to t.
-
std::vector<arma::cx_colvec> characteristic_function_derivatives(const arma::cx_colvec &u) const
-
virtual std::vector<arma::cx_mat> characteristic_function_derivatives(const arma::cx_colvec &u, const arma::rowvec &t) const override
Computes the characteristic function’s derivatives to process parameters.
- Parameters:
u – Complex-valued column vector of Fourier arguments.
t – Row vector of time points.
- Returns:
A vector of characteristic function matrices with each matrix is the characteristic function’s derivatives to each process parameter
-
virtual std::vector<double> transformation_derivatives() const override
Get derivatives of the transformation with respect to the raw parameters.
Used for Jacobian computation during calibration.
- Returns:
A vector of derivatives (default: all 1).
-
inline virtual void set_parameters(const std::vector<double> &in) override
Set the model’s raw parameters.
- Parameters:
parameters – A vector of new parameter values.
-
virtual void set_transformed_calibration_parameters(const std::vector<double> ¶ms) override
set the transformed parameters for calibration.
- Parameters:
transformed_calibration_parameters – the transformed calibration parameters
-
virtual std::vector<double> get_transformed_calibration_parameters() const override
get the transformed parameters for calibration.
- Returns:
the transformed parameters for calibration
-
inline virtual std::vector<double> get_parameters() const override
Get the model’s raw parameters.
- Returns:
A vector containing the model’s parameters.
-
virtual std::vector<double> get_transformed_calibration_parameter_variances() const override
-
inline virtual std::string name() const override
Gets the name of the process.
- Returns:
The process name “BG”.
-
inline virtual std::vector<std::string> get_parameter_names() const override
Gets the names of the parameters.
- Returns:
A vector of parameter names.
Public Static Functions
-
static inline std::string get_header()