Next: ARSIGN Up: Arima Macros Help File Previous: arimahelp()   Contents

arimares()

Usage:
residuals <- arimares(b,x,y,params), REAL vectors b, y, REAL
  vector or matrix x, params = structure(pdq:vector(p,d,q),
  PDQ:vector(P,D,Q),seasonal:n1,cast:n2,cycles:n3,fitmean:T or F
  [,sigmahat:s]) integers >= 0 p, d, q, P, D, Q, n1, n2, n3,
  integer seasonal > 0, REAL scalar sigmahat



Keywords: arima models, time domain
residuals <- arimares(b,x,y,params) returns a REAL vector of residual
from a (p,d,q)x(P,D,Q) ARIMA model with specified coefficients.  The
model may optionally have one or more linear predictors.  Depending on
arguments it can do one or more forecast/backcast cycles to estimate
past residuals.  It is intended for use by other macros.

b = vector(mu,beta,phi,theta,phiS,thetaS) is a REAL vector of
coefficients.  mu is the mean, beta is a vector of coefficients of
linear predictors in the columns of x, phi, theta, phiS and thetaS are
vectors of AR, MA, seasonal AR and seasonal MA coefficients,
respectively.  Any of mu, beta, ..., thetaS are NULL if they are not in
the model.

x is either 0 (no linear predictors) or a nrows(y) by k REAL matrix of
linear predictors.

REAL vector y contains the time series being analyzed.

params = structure(pdq:vector(p,d,q),PDQ:vector(P,D,Q),seasonal:n1,
cast:n2,cycles:m3,fitmean:T or F [,sigmahat:s]) defines the form of the
model and details about the algorithm used.

The value is as follows
  residual vector                             sigmahat is not provided
  vector(sigmahat*sqrt(log(det)),residuals)   sigmahat > 0
  sqrt(log(det))                              sigmahat < 0

The ARIMA model is Phi(B)*PhiS(B)*((1 - B)^d*(1 - B)^D*Y[t] - mu) =
mu + Theta(B)*ThetaS(B)*Z(t), where B is the backshift
operator.  Here
  Phi(z) = 1 - phi[1]*z - phi[2]*z^2 - ... - phi[p]*z^p.
  Theta(z) = 1 - theta[1]*z - theta[2]*z^2 - ... - theta[q]*z^q
  PhiS(z) = 1 - phiS[1]*z^n1 - phiS[2]*z^(2*n1) - ... - phi[P]*z^(P*n1)
  ThetaS(z) = 1 - thetaS[1]*z^n1 - thetaS[2]*z^(2*n1) - ... -
     theta[Q]*z^(Q*n1)

When there are k linear predictors, there is also an term X %*% beta on
the right, where X is an nrows(y) by k matrix matrix of linear
predictors with coefficient vector beta

When another convention on the signs of the MA and/or AR coefficients is
wanted, the calling macro must make the adjustment.  That is, in the
notation used in describing arima, arimares() assumes Arsign = -1,
Masign = -1.

The components of params are as follows:
 p,d,q   integers >= 0, AR order, difference, MA order
 P,D,Q   integers >= 0, seasonal AR order, seasonal difference,
         seasonal MA order
 n1      integer > 1, length of seasonal
 n2      integer >= - specifies how far to backcast
 n3      integer >= 0 number of cycles of fore/backcasting
 fitmean:T => mean will be fit
 s       REAL scalar, estimate of residual stddev.  Its presence
         signals that log(det(covariance matrix)) is to be
         computed. If sigmahat < 0, this is all that arimares()
         does, returning the scalar sqrt(log(det)).
length(b) should be p + q + (P + Q)*seasonal + 1*fitmean +
         ncols(x)*isscalar(x)


Gary Oehlert 2003-01-15