STAT 497 LECTURE NOTE 9
Download
Report
Transcript STAT 497 LECTURE NOTE 9
STAT 497
LECTURE NOTE 9
DIAGNOSTIC CHECKS
1
DIAGNOSTIC CHECKS
• After identifying and estimating a time series
model, the goodness-of-fit of the model and
validity of the assumptions should be checked.
If we have a perfect model fit, then we can
construct the ARIMA forecasts.
2
1. NORMALITY OF ERRORS
• Check the histogram of the standardized
residuals, aˆt ˆ a .
• Draw Normal QQ-plot of the standardized
residuals (should be a straight line on 450 line).
• Look at Tukey’s simple 5-number summary +
skewness (should be 0 for normal)+ kurtosis
(should be 3 for normal) or excess kurtosis
(should be 0 for normal)
3
1. NORMALITY OF ERRORS
• Jarque-Bera Normality Test: Skewness and
kurtosis are used for constructing this test
statistic. JB (1981) tests whether the
coefficients of skewness and excess kurtosis
are jointly 0.
3
E at
1
skewness
3
/
2
E at2
2
E a
E a
4
t
2 2
t
kurtosis
4
1. NORMALITY OF ERRORS
• JB test statistic
2 approx.
ˆ
n ˆ 2 2 3
2
JB 1
~ 2 under H 0 .
6
4
n
1
4
1n
3
Yt Y
Yt Y
n t 1
ˆ
n
t 1
ˆ
1
2
2
3/ 2
n
1 Y Y 2
1 n Y Y 2
t
t
n t 1
n t 1
2
• JB> , 2 , then reject the null hypothesis that
residuals are normally distributed.
5
1. NORMALITY OF ERRORS
• The chi-square approximation, however, is overly
sensitive for small samples, rejecting the null
hypothesis often when it is in fact true. Furthermore,
the distribution of p-values departs from a uniform
distribution and becomes a right-skewed uni-modal
distribution, especially for small p-values. This leads to
a large Type I error rate. The table below shows some
p-values approximated by a chi-square distribution that
differ from their true alpha levels for very small
samples.
• You can also use Shapiro-Wilk test.
6
1. NORMALITY OF ERRORS
Calculated p-value equivalents to true alpha levels
at given sample sizes
True α level
20
30
50
70
100
.1
.307
.252
.201
.183
.1560
.05
.1461
.109
.079
.067
.062
.025
.051
.0303
.020
.016
.0168
.01
.0064
.0033
.0015
.0012
.002
7
2. DETECTION OF THE SERIAL
CORRELATION
• In OLS regression, time residuals are often
found to be serially correlated with their own
lagged values.
• Serial correlation means
– OLS is no longer an efficient linear estimator.
– Standard errors are incorrect and generally
overstated.
– OLS estimates are biased and inconsistent if a
lagged dependent variable is used as a regressor.
8
2. DETECTION OF THE SERIAL
CORRELATION
• Durbin-Watson test is for regular regression
with independent variables. It is not
appropriate for time series models with
lagged dependent variables. It only tests for
AR(1) errors. There should be a constant term
and deterministic independent variables in
the model.
9
2. DETECTION OF THE SERIAL
CORRELATION
• Serial Correlation Lagrange Multiplier
(Breusch-Godfrey) Test is valid in the presence
of lagged dependent variables. It tests for
AR(p) errors.
aˆt the residual at time t.
aˆt the auxilary linear model 1aˆt 1 r aˆt r ut
where ut ~ N 0, u2 .
10
2. DETECTION OF THE SERIAL
CORRELATION
• The test hypothesis:
H 0 : 1 0 and 2 0 and r 0
( No serial autocorrel ation up to r - th order)
H1 : at least one i 0.
• Test statistic:
n r R 2 ~ r2
Obtained from the auxiliary regression
11
2. DETECTION OF THE SERIAL
CORRELATION
• Determination of r: No obvious answer exists.
In empirical studies
– for AR, ARMA: r=p+1 lags
– For seasonal, r=s.
12
2. DETECTION OF THE SERIAL
CORRELATION
• Ljung-Box (Modified Box-Pierce) or
Portmanteau Lack-of-Fit Test: Box and Pierce
(1970) have developed a test to check the
autocorrelation structure of the residuals.
Then, it is modified by Ljung and Box.
• The null hypothesis to be tested:
H 0 : 1 2 K 0
13
2. DETECTION OF THE SERIAL
CORRELATION
• The test statistic:
K
Q nn 2 n k ˆ k2
1
k 1
where K the maximum lag length
n the number of observatio ns
ˆ k sACF at lag k
14
2. DETECTION OF THE SERIAL
CORRELATION
• If the correct model is estimated,
approx.
Q ~
2
K m where
m p q.
• If Q
, reject H0. This means that the
autocorrelation exists in residuals. Assumption
is violated. Check the model again. It is better
to add another lag in AR or MA part of the
model.
2
Table
15
3. DETECTING HETEROSCEDASTICITY
• Heteroskedasticity is a violation of the
constant error variance assumption. It occurs if
variance of error changing by time.
Var at
2
t .
16
3. DETECTING HETEROSCEDASTICITY
• ACF-PACF PLOT OF SQUARED RESIDUALS:
Since {at} is a zero mean process, the variance
of at is defined by the expected value of
squared at’s. So, if at’s are homoscedastic, the
variance will be constant (not change over
time) and when we look at the ACF and PACF
plots of squared residuals, they should be in
95% WN limits. If not, this is a sign of
heteroscedasticity.
17
3. DETECTING HETEROSCEDASTICITY
• Let rt be the log return of an asset at time t. We are going to look at
the study of volatility: the series is either serially uncorrelated or with
minor lower order serial correlations, but it is a dependent series.
• Examine the ACF for the residuals and squared residuals for the
calamari catch data. The catch data had a definite seasonality, which
was removed. Then, the remaining series was modelled with an AR(5)
model and the residuals of this model are obtained.
• There are various definitions of what constitutes weak dependence of
a time series. However, the operational definition of independence
here will be that both the autocorrelation functions of the series and
the squared series show no autocorrelation. If there is no serial
correlation of the series but there is of the squared series, then we
will say there is weak dependence. This will lead us to examine the
volatility of the series, since that is exemplified by the squared terms.
18
Autocorrelation Function for RESI1
Autocorrelation Function for C3
(with 5% significance limits for the autocorrelations)
(with 5% significance limits for the autocorrelations)
1.0
1.0
0.8
0.8
0.6
0.6
0.4
0.4
Autocorrelation
Autocorrelation
3. DETECTING HETEROSCEDASTICITY
0.2
0.0
-0.2
-0.4
0.2
0.0
-0.2
-0.4
-0.6
-0.6
-0.8
-0.8
-1.0
-1.0
1
2
3
4
5
6
7
8
9
Lag
10
11
12
13
14
15
16
Figure 1: Residuals after AR(5) fitted to the deseasoned
calamari data
1
2
3
4
5
6
7
8
9
Lag
10
11
12
13
14
15
16
Figure 2: Autocorrelation of the squared residuals
19
3. DETECTING HETEROSCEDASTICITY
Autocorrelation Function for C1
(with 5% significance limits for the autocorrelations)
1.0
0.8
Autocorrelation
0.6
0.4
0.2
0.0
-0.2
-0.4
-0.6
-0.8
-1.0
1
5
10
15
20
25
30
35
Lag
40
45
50
55
60
Figure 3: Autocorrelation for the log returns for the Intel series
20
Autocorrelation Function for C2
Partial Autocorrelation Function for C2
(with 5% significance limits for the autocorrelations)
(with 5% significance limits for the partial autocorrelations)
1.0
1.0
0.8
0.8
0.6
0.6
Partial Autocorrelation
Autocorrelation
3. DETECTING HETEROSCEDASTICITY
0.4
0.2
0.0
-0.2
-0.4
-0.6
0.4
0.2
0.0
-0.2
-0.4
-0.6
-0.8
-0.8
-1.0
-1.0
1
5
10
15
20
25
30
35
Lag
40
45
50
55
Figure 4: ACF of the squared returns
60
1
5
10
15
20
25
30
35
Lag
40
45
50
55
60
Figure 5: PACF for squared returns
Combining these three plots, it appears that this series is serially
uncorrelated but dependent. Volatility models attempt to capture
such dependence in the return series
21
3. DETECTING HETEROSCEDASTICITY
• If we ignore heterocedasticity:
– The OLS estimator is unbiased but not efficient.
The GLS or WLS is the Gauss-Markov estimator.
– The estimate of the variance of the OLS estimator
is a biased estimator of the true variance. The
classical testing procedures are invalidated.
• Now, the question is how we can detect
heteroscedasticity?
22
3. DETECTING HETEROSCEDASTICITY
• White’s General Test for Heteroscedasticity:
H0
Var a E a
t
2
t Yt 1 , Yt 2 ,
2
a
constant
• After identified model is estimated, we obtain
2
the residuals, aˆt . Then, aˆt can be written as
2
ˆ
ˆ
aˆ 0 Yt 1Yt 1 2Yt 2
2
t
0 1Yt 1 2Yt 2 1Yt 21 2Yt 22 1Yt 1Yt 2
23
3. DETECTING HETEROSCEDASTICITY
• Then, construct the following artificial
regression
at2 0 1Yt 1 2Yt 2 1Yt 21 2Yt 22 1Yt 1Yt 2 ut
• The homocedastic case implies that 1 = 2 =
... = 1 = 2=…= 1= 2=…= 0, therefore
E
.
2
at Yt 1, Yt 2 ,
0
24
3. DETECTING HETEROSCEDASTICITY
• Then, the test statistics is given by
nRa2ˆ 2 ~ m2
t
under the null hypothesis of homoscedasticity
where m is the number of variables in artificial
regression except the constant term.
25
3. DETECTING HETEROSCEDASTICITY
• The Breush-Pagan Test: It is a LagrangeMultiplier test for heteroscedasticity. Consider
the IF of a time series. Let’s assume that we
can write our model in AR(m).
1 B
1
mB
• Then, consider testing
H 0 Var at E
m
Y
t
0
at
2
at Yt 1, Yt 2 ,
2
a
constant
26
3. DETECTING HETEROSCEDASTICITY
• Note that we need to evaluate the conditional
(on the independent variables) expectation of
the squared of the error term,
2
at 0 1Yt 1 mYt m ut
• The homocedastic case implies that 1 = 2 =
... = m = 0.
27
3. DETECTING HETEROSCEDASTICITY
• The problem, however, is that we do not know
the error term at2, but it can be replaced by an
2
estimate aˆt . A simple approach is to run a
regression,
2
aˆt
0 1Yt 1 mYt m ut
and test if the slope coefficients are all equal
to zero.
28
3. DETECTING HETEROSCEDASTICITY
• The test statistic
nRa2ˆ 2 ~ m2
t
under the null hypothesis of homoscedasticity
where m is the number of variables in artificial
regression except the constant term.
29
3. DETECTING HETEROSCEDASTICITY
• If we reject the null hypothesis, this means
that the error variance is not constant. It is
changing over time. Therefore, we need to
model the volatility. ARCH (Autoregressive
Conditional Heteroskedasticity) or GARCH
(Generalized Autoregressive Conditional
Heteroskedasticity) modeling helps us to
model the error variance.
30
EXAMPLE (BEER)
> library(TSA)
> fit=arima(beer,order=c(3,1,0),seasonal=list(order=c(3,0,0), period=4))
> par(mfrow=c(1,3))
> plot(window(rstandard(fit),start=c(1975,1)), ylab='Standardized Residuals',type='o')
> abline(h=0)
> acf(as.vector(window(rstandard(fit),start=c(1975,1))), lag.max=36)
> pacf(as.vector(window(rstandard(fit),start=c(1975,1))), lag.max=36)
31
EXAMPLE (BEER)
> fit2=arima(beer,order=c(2,1,1),seasonal=list(order=c(3,0,1), period=4))
> fit2
Call:
arima(x = beer, order = c(2, 1, 1), seasonal = list(order = c(3, 0, 1), period = 4))
Coefficients:
ar1
ar2
ma1
sar1
sar2
sar3 sma1
-0.2567 -0.4255 -0.4990 1.1333 0.2656 -0.3991 -0.9721
s.e. 0.1426 0.1280 0.1501 0.1329 0.1656 0.1248 0.1160
sigma^2 estimated as 1.564: log likelihood = -157.47, aic = 328.95
> plot(window(rstandard(fit2),start=c(1975,1)), ylab='Standardized Residuals',type='o')
> abline(h=0)
> acf(as.vector(window(rstandard(fit2),start=c(1975,1))), lag.max=36)
> pacf(as.vector(window(rstandard(fit2),start=c(1975,1))), lag.max=36)
32
EXAMPLE (BEER)
33
EXAMPLE (BEER)
> hist(rstandard(fit2), xlab='Standardized Residuals')
34
EXAMPLE (BEER)
> qqnorm(rstandard(fit2))
> qqline(rstandard(fit2))
35
EXAMPLE (BEER)
> shapiro.test(window(rstandard(fit2),start=c(1975,1)))
Shapiro-Wilk normality test
data: window(rstandard(fit2), start = c(1975, 1))
W = 0.9857, p-value = 0.4181
> jarque.bera.test(resid(fit2))
Jarque Bera Test
data: resid(fit2)
X-squared = 1.0508, df = 2, p-value = 0.5913
36
EXAMPLE (BEER)
> tsdiag(fit2)
37
EXAMPLE (BEER)
> Box.test(resid(fit2),lag=15,type = c("Ljung-Box"))
Box-Ljung test
data: resid(fit2)
X-squared = 24.2371, df = 15, p-value = 0.06118
> Box.test(resid(fit2),lag=15,type = c("Box-Pierce"))
Box-Pierce test
data: resid(fit2)
X-squared = 21.4548, df = 15, p-value = 0.1229
38
EXAMPLE (BEER)
> rr=resid(fit2)^2
> par(mfrow=c(1,2))
> acf(rr)
> pacf(rr)
39
EXAMPLE (BEER)
> par(mfrow=c(1,1))
> result=plot(fit2,n.ahead=12,ylab='Series & Forecasts',col=NULL,pch=19)
> abline(h=coef(fit2))
> forecast=result$pred
> cbind(beer,forecast)
> plot(fit2,n1=1975,n.ahead=12,ylab='Series, Forecasts, Actuals & Limits', pch=19)
40