Integer type:  int32  int64  nag_int  show int32  show int32  show int64  show int64  show nag_int  show nag_int

Chapter Contents
Chapter Introduction
NAG Toolbox

## Purpose

nag_tsa_uni_arima_prelim (g13ad) calculates preliminary estimates of the parameters of an autoregressive integrated moving average (ARIMA) model from the autocorrelation function of the appropriately differenced times series.

## Syntax

[par, rv, isf, ifail] = g13ad(mr, r, xv, npar, 'nk', nk)
[par, rv, isf, ifail] = nag_tsa_uni_arima_prelim(mr, r, xv, npar, 'nk', nk)

## Description

Preliminary estimates of the $p$ non-seasonal autoregressive parameters ${\varphi }_{1},{\varphi }_{2},\dots ,{\varphi }_{p}$ and the $q$ non-seasonal moving average parameters ${\theta }_{1},{\theta }_{2},\dots ,{\theta }_{q}$ may be obtained from the sample autocorrelations relating to lags $1$ to $p+q$, i.e., ${r}_{1},\dots ,{r}_{p+q}$, of the differenced ${\nabla }^{d}{\nabla }_{s}^{D}{x}_{t}$, where ${x}_{t}$ is assumed to follow a (possibly) seasonal ARIMA model (see Description in nag_tsa_uni_arima_estim (g13ae) for the specification of an ARIMA model).
Taking ${r}_{0}=1$ and ${r}_{-k}={r}_{k}$, the ${\varphi }_{i}$, for $\mathit{i}=1,2,\dots ,p$ are the solutions to the equations
 $r q+i-1 ϕ1+ r q+i-2 ϕ2 +⋯+ r q+i-p ϕp = rq+i , i=1,2,…,p.$
The ${\theta }_{j}$, for $\mathit{j}=1,2,\dots ,q$, are obtained from the solutions to the equations
 $cj=τ0τj+τ1τj+1+⋯+τq+jτq, j=0,1,…,q$
(Cramer Wold-factorization), by setting
 $θj=-τjτ0 ,$
where ${c}_{j}$ are the ‘covariances’ modified in a two stage process by the autoregressive parameters.
Stage 1:
 $dj=rj-ϕ1rj-1-⋯-ϕprj-p, j=0,1,…,q; dj=0, j=q+1,q+2,…,p+q.$
Stage 2:
 $cj=dj-ϕ1dj+ 1-ϕ2dj+ 2-⋯-ϕpdj+p, j= 0,1,…,q.$
The $P$ seasonal autoregressive parameters ${\Phi }_{1},{\Phi }_{2},\dots ,{\Phi }_{P}$ and the $Q$ seasonal moving average parameters ${\Theta }_{1},{\Theta }_{2},\dots ,{\Theta }_{Q}$ are estimated in the same way as the non-seasonal parameters, but each ${r}_{j}$ is replaced in the calculation by ${r}_{s×j}$, where $s$ is the seasonal period.
An estimate of the residual variance is obtained by successively reducing the sample variance, first for non-seasonal, and then for seasonal, parameter estimates. If moving average parameters are estimated, the variance is reduced by a multiplying factor of ${\tau }_{0}^{2}$, but otherwise by ${c}_{0}$.

## References

Box G E P and Jenkins G M (1976) Time Series Analysis: Forecasting and Control (Revised Edition) Holden–Day

## Parameters

### Compulsory Input Parameters

1:     $\mathrm{mr}\left(7\right)$int64int32nag_int array
The orders vector $\left(p,d,q,P,D,Q,s\right)$ of the ARIMA model whose parameters are to be estimated. $p$, $q$, $P$ and $Q$ refer respectively to the number of autoregressive $\left(\varphi \right)$, moving average $\left(\theta \right)$, seasonal autoregressive $\left(\Phi \right)$ and seasonal moving average $\left(\Theta \right)$ parameters. $d$, $D$ and $s$ refer respectively to the order of non-seasonal differencing, the order of seasonal differencing and the seasonal period.
Constraints:
• $p,d,q,P,D,Q,s\ge 0$;
• $p+q+P+Q>0$;
• $s\ne 1$;
• if $s=0$, $P+D+Q=0$;
• if $s>1$, $P+D+Q>0$.
2:     $\mathrm{r}\left({\mathbf{nk}}\right)$ – double array
The autocorrelations (starting at lag $1$), which must have been calculated after the time series has been appropriately differenced.
Constraint: $-1.0\le {\mathbf{r}}\left(\mathit{i}\right)\le 1.0$, for $\mathit{i}=1,2,\dots ,{\mathbf{nk}}$.
3:     $\mathrm{xv}$ – double scalar
The series sample variance, calculated after appropriate differencing has been applied to the series.
Constraint: ${\mathbf{xv}}>0.0$.
4:     $\mathrm{npar}$int64int32nag_int scalar
The exact number of parameters specified in the model by array mr.
Constraint: ${\mathbf{npar}}=p+q+P+Q$.

### Optional Input Parameters

1:     $\mathrm{nk}$int64int32nag_int scalar
Default: the dimension of the array r.
The maximum lag of the autocorrelations in array r.
Constraint: ${\mathbf{nk}}\ge \mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(p+q,s×\left(P+Q\right)\right)$.

### Output Parameters

1:     $\mathrm{par}\left({\mathbf{npar}}\right)$ – double array
The first npar elements of par contain the preliminary estimates of the ARIMA model parameters, in standard order.
2:     $\mathrm{rv}$ – double scalar
An estimate of the residual variance of the preliminarily estimated model.
3:     $\mathrm{isf}\left(4\right)$int64int32nag_int array
Contains success/failure indicators, one for each of the four types of parameter (autoregressive, moving average, seasonal autoregressive, seasonal moving average).
The indicator has the interpretation:
 $\phantom{-}0$ No parameter of this type is in the model. $\phantom{-}1$ Parameters of this type appear in the model and satisfactory preliminary estimates of this type were obtained. $-1$ Parameters of this type appear in the model but satisfactory preliminary estimates of this type were not obtainable. The estimates of this type of parameter were set to $0.0$ in array par.
4:     $\mathrm{ifail}$int64int32nag_int scalar
${\mathbf{ifail}}={\mathbf{0}}$ unless the function detects an error (see Error Indicators and Warnings).

## Error Indicators and Warnings

Errors or warnings detected by the function:

Cases prefixed with W are classified as warnings and do not generate an error of type NAG:error_n. See nag_issue_warnings.

${\mathbf{ifail}}=1$
On entry, the orders vector mr is invalid. One of the constraints in Arguments has been violated.
${\mathbf{ifail}}=2$
On entry, ${\mathbf{nk}}<\mathrm{max}\phantom{\rule{0.125em}{0ex}}\left(p+q,s×\left(P+Q\right)\right)$. There are not enough autocorrelations to enable the required model to be estimated.
${\mathbf{ifail}}=3$
 On entry, at least one element of r lies outside the range $\left[-1.0,1.0\right]$.
${\mathbf{ifail}}=4$
 On entry, ${\mathbf{xv}}\le 0.0$.
${\mathbf{ifail}}=5$
 On entry, ${\mathbf{npar}}\ne p+q+P+Q$.
${\mathbf{ifail}}=6$
 On entry, the workspace array wa is too small. See Arguments for the minimum size formula.
W  ${\mathbf{ifail}}=7$
Satisfactory parameter estimates could not be obtained for all parameter types in the model. Inspect array isf for indicators of the parameter type(s) which could not be estimated.
${\mathbf{ifail}}=-99$
${\mathbf{ifail}}=-399$
Your licence key may have expired or may not have been installed correctly.
${\mathbf{ifail}}=-999$
Dynamic memory allocation failed.

## Accuracy

The performance of the algorithm is conditioned by the roots of the autoregressive and moving average operators. If these are not close to unity in modulus, the errors, $e$, should satisfy $e<100\epsilon$ where $\epsilon$ is machine precision.

The time taken by nag_tsa_uni_arima_prelim (g13ad) is approximately proportional to $\left({p}^{3}+{q}^{2}+{P}^{3}+{Q}^{2}\right)\text{.}$

## Example

This example reads the sample autocorrelations to lag $40$ and the sample variance of the lagged and doubly differenced series of airline passenger totals (Box and Jenkins example series G (see Box and Jenkins (1976))). Preliminary estimates of the parameters of the $\left(0,1,1,0,1,1,12\right)$ model are obtained by a call to nag_tsa_uni_arima_prelim (g13ad).
```function g13ad_example

% Data
r = [-0.32804;     0.09850;    -0.21854;     0.05585;     0.04679;
0.04135;    -0.07989;     0.00335;     0.13973;    -0.04022;
0.07618;    -0.40583;     0.18239;    -0.05057;     0.16094;
-0.15900;     0.09152;    -0.03474;     0.05195;    -0.14417;
0.04264;    -0.08170;     0.23389;    -0.02828;    -0.09001;
0.03050;    -0.02046;     0.05522;    -0.02048;    -0.06651;
-0.02940;     0.20204;    -0.13953;     0.10098;    -0.20849;
0.03338;     0.00829;     0.07082;    -0.04457;    -0.01216];

% orders
mr = [int64(0);1;1;0;1;1;12];
% variance
xv = 0.00213;

npar = int64(2);

% Calculate preliminary estimates
[par, rv, isf, ifail] = g13ad( ...
mr, r, xv, npar);

% Display results
fprintf('Parameter estimation success/failure indicator');
fprintf('%4d', isf);
fprintf('\n\nARIMA model parameter values ');
fprintf('%10.5f', par);
fprintf('\n\nResidual variance %10.5f\n', rv);

```
```g13ad example results

Parameter estimation success/failure indicator   0   1   0   1

ARIMA model parameter values    0.37390   0.51237

Residual variance    0.00148
```