NAG Library Routine Document
G13DSF
1 Purpose
G13DSF is a diagnostic checking routine suitable for use after fitting a vector ARMA model to a multivariate time series using
G13DDF.
The residual cross-correlation matrices are returned along with an estimate of their asymptotic standard errors and correlations. Also, G13DSF calculates the modified Li–McLeod portmanteau statistic and its significance level for testing model adequacy.
2 Specification
SUBROUTINE G13DSF ( |
K, N, V, KMAX, IP, IQ, M, PAR, PARHLD, QQ, ISHOW, R0, R, RCM, LDRCM, CHI, IDF, SIGLEV, IW, LIW, WORK, LWORK, IFAIL) |
INTEGER |
K, N, KMAX, IP, IQ, M, ISHOW, LDRCM, IDF, IW(LIW), LIW, LWORK, IFAIL |
REAL (KIND=nag_wp) |
V(KMAX,N), PAR((IP+IQ)*K*K), QQ(KMAX,K), R0(KMAX,K), R(KMAX,KMAX,M), RCM(LDRCM,M*K*K), CHI, SIGLEV, WORK(LWORK) |
LOGICAL |
PARHLD((IP+IQ)*K*K) |
|
3 Description
Let
Wt
=
w1t,w2t,…,wktT
, for
t=1,2,…,n, denote a vector of
k time series which is assumed to follow a multivariate ARMA model of the form
where
εt
=
ε1t,ε2t,…,εktT
, for
t=1,2,…,n, is a vector of
k residual series assumed to be Normally distributed with zero mean and positive definite covariance matrix
Σ. The components of
εt are assumed to be uncorrelated at non-simultaneous lags. The
ϕi and
θj are
k by
k matrices of parameters.
ϕi, for
i=1,2,…,p, are called the autoregressive (AR) parameter matrices, and
θi, for
i=1,2,…,q, the moving average (MA) parameter matrices. The parameters in the model are thus the
p (
k by
k)
ϕ-matrices, the
q (
k by
k)
θ-matrices, the mean vector
μ and the residual error covariance matrix
Σ. Let
where I denotes the k by k identity matrix.
The ARMA model
(1) is said to be stationary if the eigenvalues of
Aϕ lie inside the unit circle, and invertible if the eigenvalues of
Bθ lie inside the unit circle. The ARMA model is assumed to be both stationary and invertible. Note that some of the elements of the
ϕ- and/or
θ-matrices may have been fixed at pre-specified values (for example by calling
G13DDF).
The estimated residual cross-correlation matrix at lag
l is defined to the
k by
k matrix
R^l whose
i,jth element is computed as
where
ε^it denotes an estimate of the
tth residual for the
ith series
εit and
ε-i=∑t=1nε^it/n. (Note that
R^l is an estimate of
Eεt-lεtT, where
E is the expected value.)
A modified portmanteau statistic,
Q
m
*, is calculated from the formula (see
Li and McLeod (1981))
where
⊗ denotes Kronecker product,
R^0 is the estimated residual cross-correlation matrix at lag zero and
r^l=vec
R^lT
, where
vec of a
k by
k matrix is a vector with the
i,jth element in position
i-1k+j.
m denotes the number of residual cross-correlation matrices computed. (Advice on the choice of
m is given in
Section 8.2.) Let
lC denote the total number of ‘free’ parameters in the ARMA model excluding the mean,
μ, and the residual error covariance matrix
Σ. Then, under the hypothesis of model adequacy,
Q
m
*, has an asymptotic
χ2-distribution on
mk2-lC degrees of freedom.
Let
r^̲=vec
R1T
,vec
R2T
,…,vec
RmT
then the covariance matrix of
r^̲ is given by
where
Y=Im⊗Δ⊗Δ and
G=ImGGT.
Δ is the dispersion matrix
Σ in correlation form and
G a nonsingular
k by
k matrix such that
GGT=Δ-1 and
GΔGT=Ik. The construction of the matrix
X is discussed in
Li and McLeod (1981). (Note that the mean,
μ, plays no part in calculating
Varr̲^ and therefore is not required as input to G13DSF.)
4 References
Li W K and McLeod A I (1981) Distribution of the residual autocorrelations in multivariate ARMA time series models
J. Roy. Statist. Soc. Ser. B 43 231–239
5 Parameters
The output quantities
K,
N,
V,
KMAX,
IP,
IQ,
PAR,
PARHLD and
QQ from
G13DDF are suitable for input to G13DSF.
- 1: K – INTEGERInput
On entry: k, the number of residual time series.
Constraint:
K≥1.
- 2: N – INTEGERInput
On entry: n, the number of observations in each residual series.
- 3: V(KMAX,N) – REAL (KIND=nag_wp) arrayInput
On entry: Vit must contain an estimate of the ith component of εt, for i=1,2,…,k and t=1,2,…,n.
Constraints:
- no two rows of V may be identical;
- in each row there must be at least two distinct elements.
- 4: KMAX – INTEGERInput
On entry: the first dimension of the arrays
V,
QQ and
R0 and
Constraint:
KMAX≥K.
- 5: IP – INTEGERInput
On entry: p, the number of AR parameter matrices.
Constraint:
IP≥0.
- 6: IQ – INTEGERInput
On entry: q, the number of MA parameter matrices.
Constraint:
IQ≥0.
Note: IP=IQ=0 is not permitted.
- 7: M – INTEGERInput
On entry: the value of
m, the number of residual cross-correlation matrices to be computed. See
Section 8.2 for advice on the choice of
M.
Constraint:
IP+IQ<M<N.
- 8: PAR(IP+IQ×K×K) – REAL (KIND=nag_wp) arrayInput
On entry: the parameter estimates read in row by row in the order
ϕ1,ϕ2,…,ϕp,
θ1,θ2,…,θq.
Thus,
- if IP>0,
PARl-1×k×k+i-1×k+j must be set equal to an estimate of the i,jth element of ϕl, for l=1,2,…,p and i=1,2,…,k;
- if IQ≥0,
PARp×k×k+l-1×k×k+i-1×k+j must be set equal to an estimate of the i,jth element of θl, for l=1,2,…,q and i=1,2,…,k.
The first
p×k×k elements of
PAR must satisfy the stationarity condition and the next
q×k×k elements of
PAR must satisfy the invertibility condition.
- 9: PARHLD(IP+IQ×K×K) – LOGICAL arrayInput
On entry: PARHLDi must be set to .TRUE. if PARi has been held constant at a pre-specified value and .FALSE. if PARi is a free parameter, for i=1,2,…,p+q×k×k.
- 10: QQ(KMAX,K) – REAL (KIND=nag_wp) arrayInput/Output
On entry: QQij is an efficient estimate of the i,jth element of Σ. The lower triangle only is needed.
Constraint:
QQ must be positive definite.
On exit: if IFAIL≠1, then the upper triangle is set equal to the lower triangle.
- 11: ISHOW – INTEGERInput
On entry: must be nonzero if the residual cross-correlation matrices
r^ijl and their standard errors
ser^ijl, the modified portmanteau statistic with its significance and a summary table are to be printed. The summary table indicates which elements of the residual correlation matrices are significant at the
5% level in either a positive or negative direction; i.e., if
r^ijl>1.96×ser^ijl then a ‘
+’ is printed, if
r^ijl<-1.96×ser^ijl then a ‘
-’ is printed, otherwise a fullstop (.) is printed. The summary table is only printed if
k≤6 on entry.
The residual cross-correlation matrices, their standard errors and the modified portmanteau statistic with its significance are available also as output variables in
R,
RCM,
CHI,
IDF and
SIGLEV.
- 12: R0(KMAX,K) – REAL (KIND=nag_wp) arrayOutput
On exit: if
i≠j, then
R0ij contains an estimate of the
i,jth element of the residual cross-correlation matrix at lag zero,
R^0. When
i=j,
R0ij contains the standard deviation of the
ith residual series. If
IFAIL=3 on exit then the first
K rows and columns of
R0 are set to zero.
- 13: R(KMAX,KMAX,M) – REAL (KIND=nag_wp) arrayOutput
On exit:
Rlij is an estimate of the
i,jth element of the residual cross-correlation matrix at lag
l, for
i=1,2,…,k,
j=1,2,…,k and
l=1,2,…,m. If
IFAIL=3 on exit then all elements of
R are set to zero.
- 14: RCM(LDRCM,M×K×K) – REAL (KIND=nag_wp) arrayOutput
On exit: the estimated standard errors and correlations of the elements in the array
R. The correlation between
Rlij and
Rl2i2j2 is returned as
RCMst where
s=l-1×k×k+j-1×k+i and
t=l2-1×k×k+j2-1×k+i2 except that if
s=t, then
RCMst contains the standard error of
Rlij. If on exit,
IFAIL≥5, then all off-diagonal elements of
RCM are set to zero and all diagonal elements are set to
1/n.
- 15: LDRCM – INTEGERInput
On entry: the first dimension of the array
RCM as declared in the (sub)program from which G13DSF is called.
Constraint:
LDRCM≥M×K×K.
- 16: CHI – REAL (KIND=nag_wp)Output
On exit: the value of the modified portmanteau statistic,
Q m *. If
IFAIL=3 on exit then
CHI is returned as zero.
- 17: IDF – INTEGEROutput
On exit: the number of degrees of freedom of
CHI.
- 18: SIGLEV – REAL (KIND=nag_wp)Output
On exit: the significance level of
CHI based on
IDF degrees of freedom. If
IFAIL=3 on exit,
SIGLEV is returned as one.
- 19: IW(LIW) – INTEGER arrayWorkspace
- 20: LIW – INTEGERInput
On entry: the dimension of the array
IW as declared in the (sub)program from which G13DSF is called.
Constraint:
LIW≥K×maxIP,IQ.
- 21: WORK(LWORK) – REAL (KIND=nag_wp) arrayWorkspace
- 22: LWORK – INTEGERInput
On entry: the dimension of the array
WORK as declared in the (sub)program from which G13DSF is called.
Constraint:
if LWORK≥kn+KMAX+2+mk2NPAR+mk2+1+ 3k2+NPAR+1NPAR, NPAR=p+qk2.
- 23: IFAIL – INTEGERInput/Output
-
On entry:
IFAIL must be set to
0,
-1 or 1. If you are unfamiliar with this parameter you should refer to
Section 3.3 in the Essential Introduction for details.
For environments where it might be inappropriate to halt program execution when an error is detected, the value
-1 or 1 is recommended. If the output of error messages is undesirable, then the value
1 is recommended. Otherwise, because for this routine the values of the output parameters may be useful even if
IFAIL≠0 on exit, the recommended value is
-1.
When the value -1 or 1 is used it is essential to test the value of IFAIL on exit.
On exit:
IFAIL=0 unless the routine detects an error or a warning has been flagged (see
Section 6).
6 Error Indicators and Warnings
If on entry
IFAIL=0 or
-1, explanatory error messages are output on the current error message unit (as defined by
X04AAF).
Note: G13DSF may return useful information for one or more of the following detected errors or warnings.
Errors or warnings detected by the routine:
- IFAIL=1
On entry, | K<1, |
or | KMAX<K, |
or | IP<0, |
or | IQ<0, |
or | IP=IQ=0, |
or | M≤IP+IQ, |
or | M≥N, |
or | LDRCM<M×K×K, |
or | LIW is too small, |
or | LWORK is too small. |
- IFAIL=2
-
On entry, either
QQ is not positive definite or the autoregressive parameter matrices are extremely close to or outside the stationarity region, or the moving average parameter matrices are extremely close to or outside the invertibility region. To proceed, you must supply different parameter estimates in the arrays
PAR and
QQ.
- IFAIL=3
On entry, at least one of the
k residual series is such that all its elements are practically identical giving zero (or near zero) variance or at least two of the residual series are identical. In this case
CHI is set to zero,
SIGLEV to one and all the elements of
R0 and
R set to zero.
- IFAIL=4
This is an unlikely exit brought about by an excessive number of iterations being needed to evaluate the zeros of the determinantal polynomials detAϕ and detBθ. All output parameters are undefined.
- IFAIL=5
On entry, either the eigenvalues and eigenvectors of
Δ (the matrix
QQ in correlation form) could not be computed or the determinantal polynomials
detAϕ and
detBθ have a factor in common. To proceed, you must either supply different parameter estimates in the array
QQ or delete this common factor from the model. In this case, the off-diagonal elements of
RCM are returned as zero and the diagonal elements set to
1/n. All other output quantities will be correct.
- IFAIL=6
This is an unlikely exit. At least one of the diagonal elements of
RCM was found to be either negative or zero. In this case all off-diagonal elements of
RCM are returned as zero and all diagonal elements of
RCM set to
1/n.
7 Accuracy
The computations are believed to be stable.
8 Further Comments
8.1 Timing
The time taken by G13DSF depends upon the number of residual cross-correlation matrices to be computed, m, and the number of time series, k.
8.2 Choice of m
The number of residual cross-correlation matrices to be computed,
m, should be chosen to ensure that when the ARMA model
(1) is written as either an infinite order autoregressive process, i.e.,
or as an infinite order moving average process, i.e.,
then the two sequences of
k by
k matrices
π1,π2,… and
ψ1,ψ2,… are such that
πj and
ψj are approximately zero for
j>m. An overestimate of
m is therefore preferable to an under-estimate of
m. In many instances the choice
m=10 will suffice. In practice, to be on the safe side, you should try setting
m=20.
8.3 Checking a ‘White Noise’ Model
If you have fitted the ‘white noise’ model
then G13DSF should be entered with
p=1,
q=0, and the first
k2 elements of
PAR and
PARHLD set to zero and .TRUE. respectively.
8.4 Approximate Standard Errors
When
IFAIL=5 or
6 all the standard errors in
RCM are set to
1/n. This is the asymptotic standard error of
r^ijl when all the autoregressive and moving average parameters are assumed to be known rather than estimated.
8.5 Alternative Tests
R^0 is useful in testing for instantaneous causality. If you wish to carry out a likelihood ratio test then the covariance matrix at lag zero
C^0 can be used. It can be recovered from
R^0 by setting
9 Example
This example fits a bivariate AR(1) model to two series each of length 48. μ has been estimated but ϕ12,1 has been constrained to be zero. Ten residual cross-correlation matrices are to be computed.
9.1 Program Text
Program Text (g13dsfe.f90)
9.2 Program Data
Program Data (g13dsfe.d)
9.3 Program Results
Program Results (g13dsfe.r)