Econometric models module¶
Some econometric models.
fynance.models.econometric_models.MA (y, …) |
Moving Average model of order q s.t: |
fynance.models.econometric_models.ARMA (y, …) |
AutoRegressive Moving Average model of order q and p s.t: |
fynance.models.econometric_models.ARMA_GARCH (y, …) |
AutoRegressive Moving Average model of order q and p, such that: |
fynance.models.econometric_models.ARMAX_GARCH (y, …) |
AutoRegressive Moving Average model of order q and p, such that: |
Time series models¶
-
fynance.models.econometric_models.
MA
(y, theta, c, q)¶ Moving Average model of order q s.t:
\[y_t = c + \theta_1 * u_{t-1} + ... + \theta_q * u_{t-q} + u_t\]Parameters: - y : np.ndarray[np.float64, ndim=1]
Time series.
- theta : np.ndarray[np.float64, ndim=1]
Coefficients of model.
- c : np.float64
Constant of the model.
- q : int
Order of MA(q) model.
Returns: - u : np.ndarray[ndim=1, dtype=np.float64]
Residual of the model.
See also
Examples
>>> y = np.array([3, 4, 6, 8, 5, 3]) >>> MA(y=y, theta=np.array([0.8]), c=3, q=1) array([ 0. , 1. , 2.2 , 3.24 , -0.592 , 0.4736])
-
fynance.models.econometric_models.
ARMA
(y, phi, theta, c, p, q)¶ AutoRegressive Moving Average model of order q and p s.t:
\[y_t = c + \phi_1 * y_{t-1} + ... + \phi_p * y_{t-p} + \theta_1 * u_{t-1} + ... + \theta_q * u_{t-q} + u_t\]Parameters: - y : np.ndarray[np.float64, ndim=1]
Time series.
- phi : np.ndarray[np.float64, ndim=1]
Coefficients of AR model.
- theta : np.ndarray[np.float64, ndim=1]
Coefficients of MA model.
- c : np.float64
Constant of the model.
- p : int
Order of AR(p) model.
- q : int
Order of MA(q) model.
Returns: - u : np.ndarray[np.float64, ndim=1]
Residual of the model.
See also
ARMA_GARCH
,ARMAX_GARCH
,MA.
-
fynance.models.econometric_models.
ARMA_GARCH
(y, phi, theta, alpha, beta, c, omega, p, q, Q, P)¶ AutoRegressive Moving Average model of order q and p, such that:
\[y_t = c + \phi_1 * y_{t-1} + ... + \phi_p * y_{t-p} + \theta_1 * u_{t-1} + ... + \theta_q * u_{t-q} + u_t\]With Generalized AutoRegressive Conditional Heteroskedasticity volatility model of order Q and P, such that:
\[ \begin{align}\begin{aligned}u_t = z_t * h_t\\h_t^2 = \omega + \alpha_1 * u^2_{t-1} + ... + \alpha_Q * u^2_{t-Q} + \beta_1 * h^2_{t-1} + ... + \beta_P * h^2_{t-P}\end{aligned}\end{align} \]Parameters: - y : np.ndarray[np.float64, ndim=1]
Time series.
- phi : np.ndarray[np.float64, ndim=1]
Coefficients of AR model.
- theta : np.ndarray[np.float64, ndim=1]
Coefficients of MA model.
- alpha : np.ndarray[np.float64, ndim=1]
Coefficients of MA part of GARCH.
- beta : np.ndarray[np.float64, ndim=1]
Coefficients of AR part of GARCH.
- c : np.float64
Constant of ARMA model.
- omega : np.float64
Constant of GARCH model.
- p : int
Order of AR(p) model.
- q : int
Order of MA(q) model.
- Q : int
Order of MA part of GARCH.
- P : int
Order of AR part of GARCH.
Returns: - u : np.ndarray[np.float64, ndim=1]
Residual of the model.
- h : np.ndarray[np.float64, ndim=1]
Conditional volatility of the model.
See also
ARMAX_GARCH
,ARMA
,MA.
-
fynance.models.econometric_models.
ARMAX_GARCH
(y, x, phi, psi, theta, alpha, beta, c, omega, p, q, Q, P)¶ AutoRegressive Moving Average model of order q and p, such that:
\[y_t = c + \phi_1 * y_{t-1} + ... + \phi_p * y_{t-p} + \psi_t * x_t + \theta_1 * u_{t-1} + ... + \theta_q * u_{t-q} + u_t\]With Generalized AutoRegressive Conditional Heteroskedasticity volatility model of order Q and P, such that:
\[ \begin{align}\begin{aligned}u_t = z_t * h_t\\h_t^2 = \omega + \alpha_1 * u^2_{t-1} + ... + \alpha_Q * u^2_{t-Q} + \beta_1 * h^2_{t-1} + ... + \beta_P * h^2_{t-P}\end{aligned}\end{align} \]Parameters: - y : np.ndarray[np.float64, ndim=1]
Time series.
- x : np.ndarray[np.float64, ndim=2]
Time series of external features.
- phi : np.ndarray[np.float64, ndim=1]
Coefficients of AR model.
- psi : np.ndarray[np.float64, ndim=1]
Coefficients of external features.
- theta : np.ndarray[np.float64, ndim=1]
Coefficients of MA model.
- alpha : np.ndarray[np.float64, ndim=1]
Coefficients of MA part of GARCH.
- beta : np.ndarray[np.float64, ndim=1]
Coefficients of AR part of GARCH.
- c : np.float64
Constant of the model.
- p : int
Order of AR(p) model.
- q : int
Order of MA(q) model.
- Q : int
Order of MA part of GARCH.
- P : int
Order of AR part of GARCH.
Returns: - u : np.ndarray[np.float64, ndim=1]
Residual of the model.
- h : np.ndarray[np.float64, ndim=1]
Conditional volatility of the model.
See also
ARMA_GARCH
,ARMA
,MA.
Tools¶
-
fynance.models.econometric_models.
get_parameters
(params, p=0, q=0, Q=0, P=0, cons=True)¶ Get parameters for ARMA-GARCH models.
Parameters: - params : np.ndarray[np.float64, ndim=1]
Array of model parameters.
- p, q, Q, P : int, optional
Order of model, default is 0.
- cons : bool, optional
True if model contains constant, default is True.
Returns: - phi : np.ndarray[np.float64, ndim=1]
AR parameters.
- theta : np.ndarray[np.float64, ndim=1]
MA parameters.
- alpha : np.ndarray[np.float64, ndim=1]
First part GARCH parameters.
- beta : np.ndarray[np.float64, ndim=1]
Last part GARCH parameters.
- c : float
Constant of ARMA part.
- omega : float
Constants of GARCH part.
See also
ARMAX_GARCH
,ARMA_GARCH
,ARMA
,MA.