Estimates coefficients of a univariate time series model with autoregressive-moving average errors. Model may include fixed regressors.
arimaFit(y, p[, d, q, amc])¶
arimaFit(data, var, p[, d, q, amc])
y (Nx1 vector) – data.
data (string) – name of data set or null string.
var (string) – formula string of the model. E.g.
"y ~ X1 + X2", y is the name of dependent variable,
X2are names of independent variables; E.g.
"y ~ .", ‘.’ means including all variables except dependent variable y;
p (Scalar) – the autoregressive order.
d (scalar) – Optional input, the order of differencing. Default = 0.
q (scalar) – Optional input, the moving average order. Default = 0.
amc (struct) –
Optional input. An instance of an
arimamtControlstructure. The following members of amc are referenced within this routine:
If fixed regressors: NxM matrix, N must be the same as y after it has been differenced.
Else: Scalar, if 1, a constant is estimated; 0 otherwise. Default = 1.
Matrix, 3x1 , controls the convergence criterion.
Maximum number of iterations.
Default = 100.
Minimum percentage change in the sum of squared errors.
Default = 1e-8.
Minimum percentage change in the parameter values.
Default = 1e-6.
Scalar, controls printing of output.
Default = 1.
Nothing will be printed by arimaFit.
Final results are printed.
Final results, iterations results, residual a utocorrelations, Box-Ljung statistic, and covariance and correlation matrices are printed.
Scalar, the tolerance used in determining if any of the singular values are effectively zero when computing the rank of a matrix.
Default = 1e-13.
vector of starting values in order of AR, MA, and Constant; or a scalar, 0, which instructs arimaFit to compute starting values;
Default = 0.
Character, 1x(M+1) vector of parameter names. This is used for models with fixed regressors. The first element contains the name of the independent variable; the second through \(Mth\) elements contain the variable names for the fixed regressors. If
amc.varn = 0, the fixed regressors labeled as \(X_0, X_1, ..., X_M\).
Default = 0.
amo (struct) –
An instance of an
arimamtOutstructure containing the following members:
Scalar, value of the Akaike information criterion.
Kx1 vector, estimated model coefficients.
Nx1 vector, residual from fitted model.
Scalar, the value of the log likelihood function.
Scalar, value of the Schwartz Bayesian criterion.
KxK matrix, the covariance matrix of estimated model coefficients.
new; cls; library tsmt; //Simulate data seed = 423458; y = simarmamt(.3, 1, 0, 2, 0, 250, 1, .5, seed); //Declare arima out structures struct arimamtOut amo; //Set AR order p = 1; //Estimate model amo = arimaFit(y, p);
new; cls; library tsmt; // Simulate data seed = 423458; y = simarmamt(.3, 1, 0, 2, 0, 250, 1, .5, seed); // Integrated series z = cumsumc(y); // Declare arima out structures struct arimamtOut amo; // Set AR order p = 1; // Set order of differencing d = 1; // Estimate model amo = arimaFit(z, p, d);
AR(2) Using dataset and formula string¶
new; cls; library tsmt; // Filename fname = getGAUSSHome() $+ "pkgs/tsmt/examples/enders_sim2.dat"; // Declare arima out structures struct arimamtOut amo; // Set AR order p = 2; // Run arima estimation amo = arimaFit(fname, "ar2", p);
The example above prints the following results:
Model: ARIMA(2,0,0) Final Results: Log Likelihood: 200.167329 Number of Residuals: 100 AIC : -396.334658 Error Variance : 0.088081041 SBC : -391.124317 Standard Error : 0.296784502 DF: 98 SSE: 8.631942002 Coefficients Std. Err. T-Ratio Approx. Prob. AR[1,1] 0.69112 0.08760 7.88927 0.00000 AR[2,1]-0.48468 0.08780 -5.52026 0.00000 Constant: -0.01830559 Total Computation Time: 0.00 (seconds) AR Roots and Moduli: Real : 0.71296 0.71296 Imag.: 1.24695 -1.24695 Mod. : 1.43638 1.43638
There are other members of the
arimamtControl structure which are
used by the
arimaFit() likelihood function but need not be set by the
arimaFit() forces the autoregressive coefficients to be invertible (in
other words, the autoregressive roots have modulus greater than one).
The moving average roots will have modulus one or greater. If a
moving average root is one,
arimaFit() reports a missing value for the
moving average coefficient’s standard deviation, t-statistic and
p-value. This is because these values are meaningless when one of the
moving average roots is equal to one. A moving average root equal to
one suggests that the data may have been over-differenced.