sparseVARMA {bigtime}R Documentation

Sparse Estimation of the Vector AutoRegressive Moving Average (VARMA) Model

Description

Sparse Estimation of the Vector AutoRegressive Moving Average (VARMA) Model

Usage

sparseVARMA(
  Y,
  U = NULL,
  VARp = NULL,
  VARpen = "HLag",
  VARlseq = NULL,
  VARgran = NULL,
  VARselection = c("cv", "bic", "aic", "hq"),
  VARMAp = NULL,
  VARMAq = NULL,
  VARMApen = "HLag",
  VARMAlPhiseq = NULL,
  VARMAPhigran = NULL,
  VARMAlThetaseq = NULL,
  VARMAThetagran = NULL,
  VARMAalpha = 0,
  VARMAselection = c("none", "cv", "bic", "aic", "hq"),
  h = 1,
  cvcut = 0.9,
  eps = 10^-3,
  check_std = TRUE
)

Arguments

Y

A T by k matrix of time series. If k=1, a univariate autoregressive moving average model is estimated.

U

A T by k matrix of (approximated) error terms. Typical usage is to have the program estimate a high-order VAR model (Phase I) to get approximated error terms U.

VARp

User-specified maximum autoregressive lag order of the PhaseI VAR. Typical usage is to have the program compute its own maximum lag order based on the time series length.

VARpen

"HLag" (hierarchical sparse penalty) or "L1" (standard lasso penalty) penalization in PhaseI VAR.

VARlseq

User-specified grid of values for regularization parameter in the PhaseI VAR. Typical usage is to have the program compute its own grid. Supplying a grid of values overrides this. WARNING: use with care.

VARgran

User-specified vector of granularity specifications for the penalty parameter grid of the PhaseI VAR: First element specifies how deep the grid should be constructed. Second element specifies how many values the grid should contain.

VARselection

Selection procedure for the first stage. Default is time series Cross-Validation. Alternatives are BIC, AIC, HQ

VARMAp

User-specified maximum autoregressive lag order of the VARMA. Typical usage is to have the program compute its own maximum lag order based on the time series length.

VARMAq

User-specified maximum moving average lag order of the VARMA. Typical usage is to have the program compute its own maximum lag order based on the time series length.

VARMApen

"HLag" (hierarchical sparse penalty) or "L1" (standard lasso penalty) penalization in the VARMA.

VARMAlPhiseq

User-specified grid of values for regularization parameter corresponding to the autoregressive coefficients in the VARMA. Typical usage is to have the program compute its own grid. Supplying a grid of values overrides this. WARNING: use with care.

VARMAPhigran

User-specified vector of granularity specifications for the penalty parameter grid corresponding to the autoregressive coefficients in the VARMA: First element specifies how deep the grid should be constructed. Second element specifies how many values the grid should contain.

VARMAlThetaseq

User-specified grid of values for regularization parameter corresponding to the moving average coefficients in the VARMA. Typical usage is to have the program compute its own grid. Supplying a grid of values overrides this. WARNING: use with care.

VARMAThetagran

User-specified vector of granularity specifications for the penalty parameter grid corresponding to the moving average coefficients in the VARMA: First element specifies how deep the grid should be constructed. Second element specifies how many values the grid should contain.

VARMAalpha

a small positive regularization parameter value corresponding to squared Frobenius penalty in VARMA. The default is zero.

VARMAselection

selection procedure in the second stage. Default is "none"; Alternatives are cv, bic, aic, hq

h

Desired forecast horizon in time-series cross-validation procedure.

cvcut

Proportion of observations used for model estimation in the time series cross-validation procedure. The remainder is used for forecast evaluation.

eps

a small positive numeric value giving the tolerance for convergence in the proximal gradient algorithms.

check_std

Check whether data is standardised. Default is TRUE and is not recommended to be changed

Value

A list with the following components

Y

T by k matrix of time series.

U

Matrix of (approximated) error terms.

k

Number of time series.

VARp

Maximum autoregressive lag order of the PhaseI VAR.

VARPhihat

Matrix of estimated autoregressive coefficients of the Phase I VAR.

VARphi0hat

Vector of Phase I VAR intercepts.

VARMAp

Maximum autoregressive lag order of the VARMA.

VARMAq

Maximum moving average lag order of the VARMA.

Phihat

Matrix of estimated autoregressive coefficients of the VARMA.

Thetahat

Matrix of estimated moving average coefficients of the VARMA.

phi0hat

Vector of VARMA intercepts.

series_names

names of time series

PhaseI_lambas

Phase I sparsity parameter grid

PhaseI_MSFEcv

MSFE cross-validation scores for each value of the sparsity parameter in the considered grid

PhaseI_lambda_opt

Phase I Optimal value of the sparsity parameter as selected by the time-series cross-validation procedure

PhaseI_lambda_SEopt

Phase I Optimal value of the sparsity parameter as selected by the time-series cross-validation procedure and after applying the one-standard-error rule

PhaseII_lambdaPhi

Phase II sparsity parameter grid corresponding to Phi parameters

PhaseII_lambdaTheta

Phase II sparsity parameter grid corresponding to Theta parameters

PhaseII_lambdaPhi_opt

Phase II Optimal value of the sparsity parameter (corresponding to Phi parameters) as selected by the time-series cross-validation procedure

PhaseII_lambdaPhi_SEopt

Phase II Optimal value of the sparsity parameter (corresponding to Theta parameters) as selected by the time-series cross-validation procedure and after applying the one-standard-error rule

PhaseII_lambdaTheta_opt

Phase II Optimal value of the sparsity parameter (corresponding to Phi parameters) as selected by the time-series cross-validation procedure

PhaseII_lambdaTheta_SEopt

Phase II Optimal value of the sparsity parameter (corresponding to Theta parameters) as selected by the time-series cross-validation procedure and after applying the one-standard-error rule

PhaseII_MSFEcv

Phase II MSFE cross-validation scores for each value in the two-dimensional sparsity grid

h

Forecast horizon h

References

Wilms Ines, Sumanta Basu, Bien Jacob and Matteson David S. (2021), “Sparse Identification and Estimation of Large-Scale Vector AutoRegressive Moving Averages”, Journal of the American Statistical Association, doi: 10.1080/01621459.2021.1942013.

See Also

lagmatrix and directforecast

Examples

data(varma.example)
VARMAfit <- sparseVARMA(Y = scale(Y.varma)) # sparse VARMA
y <- matrix(Y.varma[,1], ncol=1)
ARMAfit <- sparseVARMA(Y=scale(y)) # sparse ARMA

[Package bigtime version 0.2.3 Index]