Autocorrelation

This week's lesson deals with autocorrelation and replicates some of the examples in chapter 12 of Greene.

 

/*===============================================================
Get some data to play with.
*/===============================================================
Read ; Nobs = 20 ; Nvar = 5 ; Names = 1 $
Year GNP Invest Price Interest
1963 596.7 90.9 0.7167 3.23
1964 637.7 97.4 0.7277 3.55
1965 691.1 113.5 0.7436 4.04
1966 756.0 125.7 0.7676 4.50
1967 799.6 122.8 0.7906 4.19
1968 873.4 133.3 0.8254 5.16
1969 944.0 149.3 0.8679 5.87
1970 992.7 144.2 0.9145 5.95
1971 1077.6 166.4 0.9601 4.88
1972 1185.9 195.0 1.0000 4.50
1973 1326.4 229.8 1.0575 6.44
1974 1434.2 228.7 1.1508 7.83
1975 1549.2 206.1 1.2579 6.25
1976 1718.0 257.9 1.3234 5.50
1977 1918.3 324.1 1.4005 5.46
1978 2163.9 386.6 1.5042 7.46
1979 2417.8 423.0 1.6342 10.28
1980 2631.7 401.9 1.7842 11.77
1981 2954.1 474.9 1.9514 13.42
1982 3073.0 414.5 2.0688 11.02
Create ; If(_Obsno > 1)DP = 100*(Price - Price[-1])/Price[-1] $
Create ; RealInt = Interest - DP
; RealGNP = GNP/Price
; RealNvst= Invest/Price $
Dates ; 1963 $
Period ; 1964 - 1982 $
Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; PlotResiduals $
/*===============================================================
Autocorrelation Consistent Covariance Estimation (Newey-West)
*/===============================================================
?
? Uncorrected
?

Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt $
?
? Corrected
?
Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; PDS=4 $
?
/*===============================================================
Tests of Autocorrelation
*/===============================================================
Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Res = e $
Create ; e1=0 ; e2=0 ; e3=0 ; e4 = 0 $
Create ; If(Year > 1964) e1=e[-1] $
Create ; If(Year > 1965) e2=e[-2] $
Create ; If(Year > 1966) e3=e[-3] $
Create ; If(Year > 1967) e4=e[-4] $
?
? A LaGrange Multiplier Test with 4 lags
?
Regress; Lhs = e ; Rhs = One,RealGNP,RealInt,e1,e2,e3,e4 $
Calc ; List ; LMG_G = n * Rsqrd
; Ctb(.95,5)
; Ctb(.99,4) $
?
? Box-Jenkins diagnostics with 4 lags.
?
Period ; 1964-1982 $
Identify ; Rhs = e ; Pds = 9 $
?
/*===============================================================
Estimation of rho in the AR(1) Model
*/===============================================================
?
? Least Squares
?

Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt $
?
? Prais-Winsten, no iteration
?

Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Ar1 ; Maxit=1 $
?
? Prais-Winsten, iterated
?
Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Ar1 $
?
? Cochrane-Orcutt, no iteration
?

Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Ar1 ; Alg = Corc ; Maxit=1$
?
? Cochrane-Orcutt, iterated
?
Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Ar1 ; Alg = Corc $
?
? Maximum Likelihood
?

Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Ar1 ; Alg=MLE $
?
? Durbin's estimator. Uses r(Durbin) in Cochrane-Orcutt
?
? First step to estimate rho
?
Period ; 1965-1982 $
Regress; Lhs = RealNvst ; Rhs = RealNvst[-1],
One,RealGNP,RealInt,RealGNP[-1],RealInt[-1]$
Calc ; Durbin = b(1) $
? Second step
?

Period ; 1964-1982 $
Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt ; Ar1 ; Rho=Durbin $
?
? Hildreth-Lu grid search
?

Regress; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt
; Ar1 ; Alg = Grid(.1,.9,.03) $
?
RESET $
DELETE ; * $
?
/*======================================================================
Autocorrelation Induced by Misspecification of the Model
*/======================================================================
Read ; Nobs = 36 ; Nvar = 11 ; Names = 1 $
Year G Pg Y Pnc Puc Ppt Pd Pn Ps Pop
1960 129.7 .925 6036 1.045 .836 .810 .444 .331 .302 180.7
1961 131.3 .914 6113 1.045 .869 .846 .448 .335 .307 183.7
1962 137.1 .919 6271 1.041 .948 .874 .457 .338 .314 186.5
1963 141.6 .918 6378 1.035 .960 .885 .463 .343 .320 189.2
1964 148.8 .914 6727 1.032 1.001 .901 .470 .347 .325 191.9
1965 155.9 .949 7027 1.009 .994 .919 .471 .353 .332 194.3
1966 164.9 .970 7280 .991 .970 .952 .475 .366 .342 196.6
1967 171.0 1.000 7513 1.000 1.000 1.000 .483 .375 .353 198.7
1968 183.4 1.014 7728 1.028 1.028 1.046 .501 .390 .368 200.7
1969 195.8 1.047 7891 1.044 1.031 1.127 .514 .409 .386 202.7
1970 207.4 1.056 8134 1.076 1.043 1.285 .527 .427 .407 205.1
1971 218.3 1.063 8322 1.120 1.102 1.377 .547 .442 .431 207.7
1972 226.8 1.076 8562 1.110 1.105 1.434 .555 .458 .451 209.9
1973 237.9 1.181 9042 1.111 1.176 1.448 .566 .497 .474 211.9
1974 225.8 1.599 8867 1.175 1.226 1.480 .604 .572 .513 213.9
1975 232.4 1.708 8944 1.276 1.464 1.586 .659 .615 .556 216.0
1976 241.7 1.779 9175 1.357 1.679 1.742 .695 .638 .598 218.0
1977 249.2 1.882 9381 1.429 1.828 1.824 .727 .671 .648 220.2
1978 261.3 1.963 9735 1.538 1.865 1.878 .769 .719 .698 222.6
1979 248.9 2.656 9829 1.660 2.010 2.003 .821 .800 .756 225.1
1980 226.8 3.691 9722 1.793 2.081 2.516 .892 .894 .839 227.7
1981 225.6 4.109 9769 1.902 2.569 3.120 .957 .969 .926 230.0
1982 228.8 3.894 9725 1.976 2.964 3.460 1.000 1.000 1.000 232.2
1983 239.6 3.764 9930 2.026 3.297 3.626 1.041 1.021 1.062 234.3
1984 244.7 3.707 10421 2.085 3.757 3.852 1.038 1.050 1.117 236.3
1985 245.8 3.738 10563 2.152 3.797 4.028 1.045 1.075 1.173 238.5
1986 269.4 2.921 10780 2.240 3.632 4.264 1.053 1.069 1.224 240.7
1987 276.8 3.038 10859 2.321 3.776 4.413 1.085 1.111 1.271 242.8
1988 279.9 3.065 11186 2.368 3.939 4.494 1.105 1.152 1.336 245.0
1989 284.1 3.353 11300 2.414 4.019 4.719 1.129 1.213 1.408 247.3
1990 282.0 3.834 11389 2.451 3.926 5.197 1.144 1.285 1.482 249.9
1991 271.8 3.766 11272 2.538 3.942 5.427 1.167 1.332 1.557 252.6
1992 280.2 3.751 11466 2.528 4.113 5.518 1.184 1.358 1.625 255.4
1993 286.7 3.713 11476 2.663 4.470 6.086 1.200 1.379 1.684 258.1
1994 290.2 3.732 11636 2.754 4.730 6.268 1.225 1.396 1.734 260.7
1995 297.8 3.789 11934 2.815 5.224 6.410 1.239 1.419 1.786 263.2
Create ; G=G/Pop
; lg=log(g) ; lpg=log(pg) ; ly=log(y) ; lpnc=log(pnc)
; lpuc=log(puc) ; lpd=log(pd) ; lpn=log(pn) ; lppt=log(ppt)
; lpd=log(pd) ; lps=log(ps) ; t=year - 1959 $
Date ; 1960 $
Period ; 1960-1995 $
Regress ; lhs = lg ; Rhs = One,lpg ; Plot $
Regress ; lhs = lg ; Rhs = One,lpg,ly ; Plot $
Regress ; lhs = lg ; Rhs = One,lpg,ly,lpnc,lpuc,lppt,lpn,lpd,lps,t ; Plot $
Create ; post=year > 1973
; p1=post*lpg ; p2=post*ly ; p3=post*lpnc ; p4=post*lpuc
; p5=post*lppt ; p6=post*lpn ; p7=post*lpd ;p8=post*lps ; p9=post*t $
Regress ; lhs = lg ; Rhs = One,lpg,ly,lpnc,lpuc,lppt,lpn,lpd,lps,t,
post,p1,p2,p3,p4,p5,p6,p7,p8,p9 ; PlotResiduals $
/*======================================================================
Tests for common Factors
*/======================================================================
Period ; 1961-1995 $
?
? Original Model generates starting values for least squares
?
Regress ; Lhs = lg ; Rhs = one,lpg,ly,lpnc,lpuc $
?
? AR(1) model with nonlinear restrictions
? First create lagged values
Period ; 1960-1995 $
Create ; lg1=lg[-1] ; lpg1=lpg[-1] ; ly1=ly[-1]
; lpnc1=lpnc[-1] ; lpuc1=lpuc[-1] $
Period ; 1961-1995 $
Mini ; Fcn = (lg-(b1 + b2*(lpg-r*lpg1) + b3*(ly-r*ly1)
+ b4*(lpnc-r*lpnc1) + b5*(lpuc-r*lpuc1) + r*lg1))^2
; Labels=b1,b2,b3,b4,b5,r
; Start =b,0 ; output=1 $maxit=500 $
Calc ; list ; eer = logl $
?
? Unrestricted model
?

Regress ; Lhs = lg ; Rhs=One,lpg,ly,lpnc,lpuc,lg1,lpg1,ly1,lpnc1,lpuc1 $
Calc ; List ; eeu = sumsqdev
; F = ((eer-eeu)/5)/(eeu/25)
; Ftb(.95,4,25) $
?
? Repeat common factor study for investment data
?
Reset $
DELETE ; * $
Read ; Nobs = 20 ; Nvar = 5 ; Names = 1 $
Year GNP Invest Price Interest
1963 596.7 90.9 0.7167 3.23
1964 637.7 97.4 0.7277 3.55
1965 691.1 113.5 0.7436 4.04
1966 756.0 125.7 0.7676 4.50
1967 799.6 122.8 0.7906 4.19
1968 873.4 133.3 0.8254 5.16
1969 944.0 149.3 0.8679 5.87
1970 992.7 144.2 0.9145 5.95
1971 1077.6 166.4 0.9601 4.88
1972 1185.9 195.0 1.0000 4.50
1973 1326.4 229.8 1.0575 6.44
1974 1434.2 228.7 1.1508 7.83
1975 1549.2 206.1 1.2579 6.25
1976 1718.0 257.9 1.3234 5.50
1977 1918.3 324.1 1.4005 5.46
1978 2163.9 386.6 1.5042 7.46
1979 2417.8 423.0 1.6342 10.28
1980 2631.7 401.9 1.7842 11.77
1981 2954.1 474.9 1.9514 13.42
1982 3073.0 414.5 2.0688 11.02
Create ; If(_Obsno > 1)DP = 100*(Price - Price[-1])/Price[-1] $
Create ; RealInt = Interest - DP
; RealGNP = GNP/Price
; RealNvst= Invest/Price $
Create ; GNP1 = RealGNP[-1]
; Nvst1= RealNvst[-1]
; Int1 = RealInt[-1] $
Dates ; 1963 $
Period ; 1965 - 1982 $
?
? Original Model generates starting values for least squares
?
Regress ; Lhs = RealNvst ; Rhs = one,RealGNP,RealInt $
Nlsq ; Lhs = RealNvst
; Fcn = b1 + b2*(RealGNP - r*GNP1) + b3*(RealInt - r*Int1)
+ r*Nvst1
; labels = b1,b2,b3,r
; Start = b,0 ; maxit=500 $
Calc ; List ; eer = sumsqdev $
Regress ; Lhs = RealNvst ; Rhs = One,RealGNP,RealInt,GNP1,Int1,Nvst1 $
Calc ; List ; eeu = sumsqdev
; F = ((eer - eeu)/2)/(eeu/12)
; Ftb(.95,2,12) $

/* That's all folks. */