ARXmdl: Autoregressive X Model

View source: R/models.R

ARXmdlR Documentation

Autoregressive X Model

Description

This function estimates an ARX model with p lags. This can be used for the null hypothesis of a linear model against an alternative hypothesis of a Markov switching autoregressive model with k regimes.

Usage

ARXmdl(Y, p, Z, control = list())

Arguments

Y

A (T x 1) matrix of observations.

p

Integer determining the number of autoregressive lags.

Z

A (T x qz) matrix of exogenous regressors.

control

List with model options including:

  • const: Boolean determining whether to estimate model with constant if TRUE or not if FALSE. Default is TRUE.

  • getSE: Boolean determining whether to compute standard errors of parameters if TRUE or not if FALSE. Default is TRUE.

Value

List of class ARmdl (S3 object) with model attributes including:

  • y: a (T-p x 1) matrix of observations.

  • X: a (T-p x p + const) matrix of lagged observations with a leading column of 1s if const=TRUE or not if const=FALSE.

  • x: a (T-p x p) matrix of lagged observations.

  • fitted: a (T-p x 1) matrix of fitted values.

  • resid: a (T-p x 1) matrix of residuals.

  • mu: estimated mean of the process.

  • beta: a ((1 + p + qz) x 1) matrix of estimated coefficients.

  • betaZ: a (qz x q) matrix of estimated exogenous regressor coefficients.

  • intercept: estimate of intercept.

  • phi: estimates of autoregressive coefficients.

  • stdev: estimated standard deviation of the process.

  • sigma: estimated variance of the process.

  • theta: vector containing: mu, sigma, and phi.

  • theta_mu_ind: vector indicating location of mean with 1 and 0 otherwise.

  • theta_sig_ind: vector indicating location of variance with 1 and 0 otherwise.

  • theta_var_ind: vector indicating location of variance with 1 and 0 otherwise. This is the same as theta_sig_ind in ARmdl.

  • theta_phi_ind: vector indicating location of autoregressive coefficients with 1 and 0 otherwise.

  • stationary: Boolean indicating if process is stationary if TRUE or non-stationary if FALSE.

  • n: number of observations after lag transformation (i.e., n = T-p).

  • p: number of autoregressive lags.

  • q: number of series. This is always 1 in ARmdl.

  • k: number of regimes. This is always 1 in ARmdl.

  • control: List with model options used.

  • logLike: log-likelihood.

  • AIC: Akaike information criterion.

  • BIC: Bayesian (Schwarz) information criterion.

  • Hess: Hessian matrix. Approximated using hessian and only returned if getSE=TRUE.

  • info_mat: Information matrix. Computed as the inverse of -Hess. If matrix is not PD then nearest PD matrix is obtained using nearest_spd. Only returned if getSE=TRUE.

  • nearPD_used: Boolean determining whether nearPD function was used on info_mat if TRUE or not if FALSE. Only returned if getSE=TRUE.

  • theta_se: standard errors of parameters in theta. Only returned if getSE=TRUE.

See Also

MSARmdl

Examples

set.seed(1234)
# Define DGP of AR process
mdl_ar <- list(n     = 500, 
               mu    = 5,
               sigma = 2,
               phi   = c(0.5,0.2))

# Simulate process using simuAR() function
y_simu <- simuAR(mdl_ar)

# Set options for model estimation
control <- list(const  = TRUE, 
                getSE  = TRUE)

# Estimate model
y_ar_mdl <- ARmdl(y_simu$y, p = 2, control)
y_ar_mdl


roga11/MSTest documentation built on Feb. 25, 2025, 6:10 p.m.