' ====================================================== ' Heteroskedasticity and Autocorrelation Consistent (HAC) Covariances ' ====================================================== ' 1.- Genera una serie e de 200 números aleatorios y luego la transforma en el vector v ' 2.- Con los primeros 100 elementos de v construye v1 y con los restantes v2 ' 3.- Transforma los vectores v1 y v2 en las series ey y ex (Notar que Cov(ex,ey)=0) ' 4.- Genera los procesos autoregresivos: ' yt = 0.8 yt-1 + eyt ' xt = 0.8 yt-1 + ext ' 5.- Estima las ecuaciones: ' equation ols1: yt = a + b xt + ut ' equation ols2: yt = a + b xt + ut (teniendo en cuenta la corrección de Newey-West) ' 6.- Calcula el intervalo de confianza ( b -2 sd(b), b+2 sd(b) ) para cada ecuación ' Los resultados de este cálculo están guardados en la matriz comparar, ' columna 1: límite inferior de ols1, ' columna 2: límite superior de ols1, ' columna 3: 1 si el 0 está en el intervalo y 0 en caso contrario ' columna 4: vacia ' columna 5, 6 y 7: idem 1, 2 y 3 pero para la ols2 ' 7.- Repete el procedimiento n veces y guarda los resultados en las filas de comparar ' 8.- El porcentaje de veces que el cero está en el intervalo lo indican las filas del vector resultado. ' La primer fila corresponde al porcentaje de veces que el cero está en el intervalo en el caso de ' la ecuación 1 y la segunda al de la ecuación 2 que tiene un estimador consistente de la variaza. create u 1 200 scalar n = 1000 matrix(n,7) comparar=0 vector(n) r1=0 vector(n) r2=0 for !j = 1 to n smpl 1 200 series e = nrnd stom(e,v) vector(100) v1=0 vector(100) v2=0 for !i = 1 to 100 v1(!i)=v(!i) v2(!i)=v(100+!i) next mtos(v1,ey) mtos(v2,ex) smpl 1 2 series y = 0 series x = 0 smpl 2 100 series y = 0.8*y(-1) + ey series x = 0.8*x(-1) + ex equation ols1.ls y c x comparar(!j,1) = ols1.@coefs(2) - 2*ols1.@stderrs(2) comparar(!j,2) = ols1.@coefs(2) + 2*ols1.@stderrs(2) comparar(!j,3) = (- comparar(!j,1)*comparar(!j,2) / abs(comparar(!j,1)*comparar(!j,2)) + 1 )/2 r1(!j)=comparar(!j,3) equation ols2.ls(n) y c x comparar(!j,5) = ols2.@coefs(2) - 2*ols2.@stderrs(2) comparar(!j,6) = ols2.@coefs(2) + 2*ols2.@stderrs(2) comparar(!j,7) = (- comparar(!j,5)*comparar(!j,6) / abs(comparar(!j,5)*comparar(!j,6)) + 1)/2 r2(!j)=comparar(!j,7) next scalar s1 = @sum(r1)/n scalar s2 = @sum(r2)/n vector(2) resultado=0 resultado(1)=s1 resultado(2)=s2