arma {tseries}R Documentation

Fit ARMA Models to Time Series

Description

Fit an ARMA model to a univariate time series by conditional least squares. For exact maximum likelihood estimation see arima0.

Usage

arma(x, order = c(1, 1), lag = NULL, coef = NULL,
     include.intercept = TRUE, series = NULL, qr.tol = 1e-07, ...)

Arguments

x a numeric vector or time series.
order a two dimensional integer vector giving the orders of the model to fit. order[1] corresponds to the AR part and order[2] to the MA part.
lag a list with components ar and ma. Each component is an integer vector, specifying the AR and MA lags that are included in the model. If both, order and lag, are given, only the specification from lag is used.
coef If given this numeric vector is used as the initial estimate of the ARMA coefficients. The preliminary estimator suggested in Hannan and Rissanen (1982) is used for the default initialization.
include.intercept Should the model contain an intercept?
series name for the series. Defaults to deparse(substitute(x)).
qr.tol the tol argument for qr when computing the asymptotic standard errors of coef.
... additional arguments for optim when fitting the model.

Details

The following parametrization is used for the ARMA(p,q) model:

y[t] = a[0] + a[1]y[t-1] + ... + a[p]y[t-p] + b[1]e[t-1] + ... + b[q]e[t-q] + e[t],

where a[0] is set to zero if no intercept is included. By using the argument lag, it is possible to fit a parsimonious submodel by setting arbitrary a[i] and b[i] to zero.

arma uses optim to minimize the conditional sum-of-squared errors. The gradient is computed, if it is needed, by a finite-difference approximation. Default initialization is done by fitting a pure high-order AR model (see ar.ols). The estimated residuals are then used for computing a least squares estimator of the full ARMA model. See Hannan and Rissanen (1982) for details.

Value

A list of class "arma" with the following elements:

lag the lag specification of the fitted model.
coef estimated ARMA coefficients for the fitted model.
css the conditional sum-of-squared errors.
n.used the number of observations of x.
residuals the series of residuals.
fitted.values the fitted series.
series the name of the series x.
frequency the frequency of the series x.
call the call of the arma function.
asy.se.coef the asymptotic-theory standard errors of the coefficient estimates.
convergence The convergence integer code from optim.
include.intercept Does the model contain an intercept?

Author(s)

A. Trapletti

References

E. J. Hannan and J. Rissanen (1982): Recursive Estimation of Mixed Autoregressive-Moving Average Order. Biometrika 69, 81–94.

See Also

summary.arma for summarizing ARMA model fits; arma-methods for further methods; arima0, ar.

Examples

data(tcm)  
r <- diff(tcm10y)
summary(r.arma <- arma(r, order = c(1, 0)))
summary(r.arma <- arma(r, order = c(2, 0)))
summary(r.arma <- arma(r, order = c(0, 1)))
summary(r.arma <- arma(r, order = c(0, 2)))
summary(r.arma <- arma(r, order = c(1, 1)))
plot(r.arma)

data(nino)
s <- nino3.4
summary(s.arma <- arma(s, order=c(20,0)))
summary(s.arma
         <- arma(s, lag=list(ar=c(1,3,7,10,12,13,16,17,19),ma=NULL)))
acf(residuals(s.arma), na.action=na.remove)
pacf(residuals(s.arma), na.action=na.remove)
summary(s.arma
         <- arma(s, lag=list(ar=c(1,3,7,10,12,13,16,17,19),ma=12)))
summary(s.arma
         <- arma(s, lag=list(ar=c(1,3,7,10,12,13,16,17),ma=12)))
plot(s.arma)

[Package tseries version 0.10-0 Index]