Vector Autoregressive Moving Average with eXogenous regressors model
| Parameters: | endog : array_like
exog : array_like, optional
order : iterable
trend : {‘nc’, ‘c’}, optional
error_cov_type : {‘diagonal’, ‘unstructured’}, optional
measurement_error : boolean, optional
enforce_stationarity : boolean, optional
enforce_invertibility : boolean, optional
kwargs :
|
|---|
Notes
Generically, the VARMAX model is specified (see for example chapter 18 of [R105]):
y_t = \nu + A_1 y_{t-1} + \dots + A_p y_{t-p} + B x_t + \epsilon_t + M_1 \epsilon_{t-1} + \dots M_q \epsilon_{t-q}
where \epsilon_t \sim N(0, \Omega), and where y_t is a k_endog x 1 vector. Additionally, this model allows considering the case where the variables are measured with error.
Note that in the full VARMA(p,q) case there is a fundamental identification problem in that the coefficient matrices \{A_i, M_j\} are not generally unique, meaning that for a given time series process there may be multiple sets of matrices that equivalently represent it. See Chapter 12 of [R105] for more informationl. Although this class can be used to estimate VARMA(p,q) models, a warning is issued to remind users that no steps have been taken to ensure identification in this case.
References
| [R105] | (1, 2, 3) Lutkepohl, Helmut. 2007. New Introduction to Multiple Time Series Analysis. Berlin: Springer. |
Attributes
| order | iterable | The (p,q) order of the model for the number of AR and MA parameters to use. |
| trend | {‘nc’, ‘c’}, optional | Parameter controlling the deterministic trend polynomial. Can be specified as a string where ‘c’ indicates a constant intercept and ‘nc’ indicates no intercept term. |
| error_cov_type | {‘diagonal’, ‘unstructured’}, optional | The structure of the covariance matrix of the error term, where “unstructured” puts no restrictions on the matrix and “diagonal” requires it to be a diagonal matrix (uncorrelated errors). Default is “unstructured”. |
| measurement_error | boolean, optional | Whether or not to assume the endogenous observations endog were measured with error. Default is False. |
| enforce_stationarity | boolean, optional | Whether or not to transform the AR parameters to enforce stationarity in the autoregressive component of the model. Default is True. |
| enforce_invertibility | boolean, optional | Whether or not to transform the MA parameters to enforce invertibility in the moving average component of the model. Default is True. |
Methods
| filter(params, **kwargs) | |
| fit([start_params, transformed, cov_type, ...]) | Fits the model by maximum likelihood via Kalman filter. |
| from_formula(formula, data[, subset]) | Not implemented for state space models |
| hessian(params, *args, **kwargs) | Hessian matrix of the likelihood function, evaluated at the given |
| impulse_responses(params[, steps, impulse, ...]) | Impulse response function |
| information(params) | Fisher information matrix of model |
| initialize() | Initialize (possibly re-initialize) a Model instance. |
| initialize_approximate_diffuse([variance]) | |
| initialize_known(initial_state, ...) | |
| initialize_statespace(**kwargs) | Initialize the state space representation |
| initialize_stationary() | |
| loglike(params, *args, **kwargs) | Loglikelihood evaluation |
| loglikeobs(params[, transformed, complex_step]) | Loglikelihood evaluation |
| observed_information_matrix(params[, ...]) | Observed information matrix |
| opg_information_matrix(params[, ...]) | Outer product of gradients information matrix |
| predict(params[, exog]) | After a model has been fit predict returns the fitted values. |
| prepare_data() | Prepare data for use in the state space representation |
| score(params, *args, **kwargs) | Compute the score function at params. |
| score_obs(params[, method, transformed, ...]) | Compute the score per observation, evaluated at params |
| set_conserve_memory([conserve_memory]) | Set the memory conservation method |
| set_filter_method([filter_method]) | Set the filtering method |
| set_inversion_method([inversion_method]) | Set the inversion method |
| set_smoother_output([smoother_output]) | Set the smoother output |
| set_stability_method([stability_method]) | Set the numerical stability method |
| simulate(params, nsimulations[, ...]) | Simulate a new time series following the state space model |
| smooth(params, **kwargs) | |
| transform_jacobian(unconstrained[, ...]) | Jacobian matrix for the parameter transformation function |
| transform_params(unconstrained) | Transform unconstrained parameters used by the optimizer to constrained |
| untransform_params(constrained) | Transform constrained parameters used in likelihood evaluation to unconstrained parameters used by the optimizer. |
| update(params, **kwargs) |
Methods
| filter(params, **kwargs) | |
| fit([start_params, transformed, cov_type, ...]) | Fits the model by maximum likelihood via Kalman filter. |
| from_formula(formula, data[, subset]) | Not implemented for state space models |
| hessian(params, *args, **kwargs) | Hessian matrix of the likelihood function, evaluated at the given |
| impulse_responses(params[, steps, impulse, ...]) | Impulse response function |
| information(params) | Fisher information matrix of model |
| initialize() | Initialize (possibly re-initialize) a Model instance. |
| initialize_approximate_diffuse([variance]) | |
| initialize_known(initial_state, ...) | |
| initialize_statespace(**kwargs) | Initialize the state space representation |
| initialize_stationary() | |
| loglike(params, *args, **kwargs) | Loglikelihood evaluation |
| loglikeobs(params[, transformed, complex_step]) | Loglikelihood evaluation |
| observed_information_matrix(params[, ...]) | Observed information matrix |
| opg_information_matrix(params[, ...]) | Outer product of gradients information matrix |
| predict(params[, exog]) | After a model has been fit predict returns the fitted values. |
| prepare_data() | Prepare data for use in the state space representation |
| score(params, *args, **kwargs) | Compute the score function at params. |
| score_obs(params[, method, transformed, ...]) | Compute the score per observation, evaluated at params |
| set_conserve_memory([conserve_memory]) | Set the memory conservation method |
| set_filter_method([filter_method]) | Set the filtering method |
| set_inversion_method([inversion_method]) | Set the inversion method |
| set_smoother_output([smoother_output]) | Set the smoother output |
| set_stability_method([stability_method]) | Set the numerical stability method |
| simulate(params, nsimulations[, ...]) | Simulate a new time series following the state space model |
| smooth(params, **kwargs) | |
| transform_jacobian(unconstrained[, ...]) | Jacobian matrix for the parameter transformation function |
| transform_params(unconstrained) | Transform unconstrained parameters used by the optimizer to constrained |
| untransform_params(constrained) | Transform constrained parameters used in likelihood evaluation to unconstrained parameters used by the optimizer. |
| update(params, **kwargs) |
Attributes
| endog_names | Names of endogenous variables |
| exog_names | |
| initial_variance | |
| initialization | |
| loglikelihood_burn | |
| param_names | |
| start_params | |
| tolerance |