Alessia Paccagnini 1
Maggio 2008
1
Ringrazio innanzitutto la Professoressa Barbara Chizzolini per i sui preziosi suggerimenti, nella redazione di queste
note. Ringrazio inoltre per la collaborazione nella preparazione di questi appunti, Paolo Bianchi, Claudia Foroni e
Mario Porqueddu, che sono stati con me esercitatori per il corso di Economia Applicata all’Università Bocconi di
Milano.
PRIMA ESERCITAZIONE
Introduzione
Nella prima parte dell’esercitazione, genereremo ed analizzeremo dei dati simulati, ovvero dei dati
estratti da una variabile aleatoria.
2
Ecco il nostro workfile. Contiene solamente 2 elementi vuoti: c (che sarà destinata a raccogliere i
coefficienti stimati nell’ultima regressione) e resid (che sarà destinata a raccogliere i residui
dell’ultima regressione). Notate che i 2 oggetti sono contraddistinti da simboli diversi: beta per c,
dato che conterrà dei coefficienti, una linea spezzata per resid, dato che conterrà una serie.
Se volessimo salvare il WORFILE, clicchiamo sul tasto SAVE e salviamo nella nostra cartella di
lavoro dandone un nome. Ricordate: quando lavorate con EViews non dimenticatevi di salvare i
workfile e gli oggetti creati!
Notate l’indicazione di RANGE e di SAMPLE. Il RANGE è l’ampiezza del vostro workfile, è la
capacità massima di lunghezza delle serie che potete creare od importare; invece, SAMPLE, è il
campione selezionato per le vostre analisi. Cliccando sopra queste righe possiamo modificare sia
RANGE che SAMPLE. Provate.
3
N.B: Se volete creare un workfile undated, senza seguire la procedura presentata precedentemente,
potete scrivere nella banda bianca di EViews (cioè dalla Command Window) e poi lanciare invio:
4
ed otterrete lo stesso risultato!
Ora siamo pronti a creare le nostre variabili digitando i comandi direttamente dalla Command
Window.
genr x1=rnd/10 Î creiamo una variabile estraendola da una distribuzione uniforme (rnd)
dividendo il numero ottenuto per 10. Siamo cioè generando 200 numeri nell’intervallo [0, 0.1] da
una distribuzione per cui tutti i numeri nell’intervallo hanno la stessa probabilità di essere estratti.
genr x2=nrnd Î creiamo una variabile estraendola da una distribuzione normale (nrnd): la
nostra serie X2 sarà distribuita come una N(0,1).
genr x3=10*nrnd+2 Î creiamo una variabile estraendola da una distribuzione N(0,1) (nrnd)
moltiplicata per 10 ed aggiungendo 2, ovvero da una N(2,100).
N.B. Il programma utilizza degli algoritmi che creano delle serie pseudo-aleatorie, quindi ogni volta
otterrete delle serie diverse. Ma dato che si tratta di algoritmi se si fissa un punto di partenza, si
possono ottenere sempre gli stessi risultati digitando prima dell’estrazione (per esempio):
rndseed 123456
5
Proviamo a fare il grafico delle serie:
6
Possiamo copiare il grafico ed incollarlo sul nostro foglio word:
30
20
10
-10
-20
-30
25 50 75 100 125 150 175 200
X1 X2 X3
Possiamo salvare il grafico come oggetto all’interno del nostro workfile usando il tasto FREEZE
7
Possiamo anche visualizzare le serie in tre grafici separati:
X1
.12
.10
.08
.06
.04
.02
.00
25 50 75 100 125 150 175 200
X2
3
-1
-2
-3
25 50 75 100 125 150 175 200
X3
30
20
10
-10
-20
-30
25 50 75 100 125 150 175 200
8
1.3 Statistiche descrittive
Ora proviamo a svolgere delle statistiche descrittive:
Possiamo salvare l’output delle statistiche con FREEZE e poi copiarle in word.
X1 X2 X3
Mean 0.051261 0.045885 2.715546
Median 0.046849 0.045040 3.959681
Maximum 0.099526 3.394216 23.38242
Minimum 0.000978 -2.972108 -22.50636
Std. Dev. 0.028879 1.045447 9.871434
Skewness 0.034070 0.062960 -0.340268
Kurtosis 1.793384 3.418079 2.662926
Osserviamo media, mediana, massimo e minimo delle serie (per esempio x1 compreso tra 0 e 0.1
con media vicina a 0.05) e la standard deviation (in futuro analizzeremo anche le altre statistiche).
9
Se vogliamo controllare le correlazioni tra le 3 serie:
Copiando la matrice:
1 -0.0829256 0.037741
-0.0829256 1 -0.07571
0.037741 -0.07571 1
Notiamo che la correlazione tra le serie è prossima a 0, dato che si tratta di serie estratte
indipendentemente una dall’altra.
10
Ecco il grafico
.12
.10
.08
.06
.04
.02
.00
25 50 75 100 125 150 175 200
X1
12
Series: X1
Sample 1 200
10
Observations 200
8 Mean 0.051261
Median 0.046849
6 Maximum 0.099526
Minimum 0.000978
Std. Dev. 0.028879
4 Skewness 0.034070
Kurtosis 1.793384
2
Jarque-Bera 12.17138
Probability 0.002275
0
0.000 0.025 0.050 0.075 0.100
Notiamo in questo caso che ci troviamo davanti ad una distribuzione uniforme, mentre se andate e
vedere x2 e x3 avreste la tipica forma “a campana” di una distribuzione gaussiana.
11
1.4 La regressione
Ora creiamo la variabile dipendente per le prime 4 osservazioni (senza errore) e per le altre 196
osservazioni (con errore):
smpl 1 4
genr y=5+6*x1+7*x2+8*x3
smpl 5 200
genr y=5+6*x1+7*x2+8*x3+nrnd
Ora siamo pronti ad eseguire la prima regressione (per le prime quattro osservazioni), scrivendo ls
(least square) variabile dipendente costante e variabili esplicative.
ls y c x1 x2 x3
Dependent Variable: Y
Method: Least Squares
Sample: 1 4
Included observations: 4
C 5.000000 NA NA NA
X1 6.000000 NA NA NA
X2 7.000000 NA NA NA
X3 8.000000 NA NA NA
Questa regressione è anomala: non otteniamo le stime per gli standard errors e quindi per la t-
statistic. Inoltre R-squared è pari ad 1. Questo accade perché il numero delle osservazioni è uguale
al numero dei regressori: abbiamo un problema di gradi di libertà. In questo caso i parametri stimati
sono identici a quelli del modello, perché non avevamo errori.
Se effettuiamo la stessa regressione sulle ultime 4 osservazioni otteniamo:
C 2.969870 NA NA NA
X1 8.217347 NA NA NA
X2 7.017458 NA NA NA
X3 7.994076 NA NA NA
12
In questo caso otteniamo dei valori diversi da quelli del modello originale.
Se noi aggiungessimo altri 196 regressori nella regressione riguardante tutto il campione,
otterremmo lo stesso risultato, ma sicuramente delle stime molto diverse rispetto all’originale.
Quindi dobbiamo stare attenti ai gradi di libertà: se abbiamo poche osservazioni non possiamo avere
molti regressori, perché otterremmo dei risultati sbagliati.
ls y c
Dependent Variable: Y
Method: Least Squares
Sample: 1 200
Included observations: 200
In questo caso notiamo che Rsquared è pari a zero, dato che stiamo regredendo la variabile
dipendente solamente sulla costante. Ciò succede perché In questo caso C è pari alla media della
variabile dipendente, quindi la somma dei quadrati spiegati (Explained Sum of Squares) è pari a 0
Ora svolgiamo la regressione su tutto il campione e notiamo come le stime siano molto simili a
quelle del modello originale:
ls y c x1 x2 x3
Dependent Variable: Y
Method: Least Squares
Sample: 1 200
Included observations: 200
13
Se vogliamo rifare la regressione senza x1 ed x2 possiamo semplicemente digitare:
ls y c x3
O per cambiare regressori, possiamo cliccare su EQUATION e poi nella finestra modificare la
nostra scelta :
Dependent Variable: Y
Method: Least Squares
Sample: 1 200
Included observations: 200
Il coefficiente stimato per x3 è pari 7.965, ciò significa che all’aumentare di x3 di un’unità, y
aumenterà di 7.965; esso rappresenta l’impatto, la variazione marginale di x3 su y, possiamo
∂E ( y | X )
vederlo come una derivata . Il parametro è simile a quello ottenuto nella regressione
∂x3
precedente, perché i regressori sono quasi ortogonali (basti pensare alla loro correlazione).
14
Il coefficiente stimato per la costante è pari a 5.718, ciò rappresenta come varia y quando x3=0.
Possiamo rappresentate il modello sopra stimato come una retta nel piano, dove la stima della
costante è l’intercetta e la stima di x3 è la pendenza della retta.
Tornando alla regressione precedente:
Dependent Variable: Y
Method: Least Squares
Sample: 1 200
Included observations: 200
Ora i coefficienti possono essere visti come una variazione marginale della variabile indipendente
in questione, mantenendo fisse le altre variabili esplicative.
Ad esempio, il coefficiente di x3 pari a 7.998, può essere inteso come varia y ad una variazione
unitaria di x3, mentendo x1, x2 fisse. Quindi, possono essere considerati come derivate parziali:
∂E ( y | X )
.
∂x3
Fino ad ora siamo interessati al segno del coefficiente ed alla sua grandezza.
Considerando la bontà del modello, prendiamo in considerazione il coefficiente di determinazione,
esso può essere compreso tra 0 ed 1 (vedi esempi precedenti):
ESS RSS
R2 = = 1−
TSS TSS
− 2 RSS / T − k T −1
R = 1− = 1− (1 − R 2 )
TSS / T − 1 T −k
Ricordate che R Squared non deve essere usato come misura di confronto di diversi modelli con
diverse variabili indipendenti!
Ora proviamo a costruire i valori che vediamo nell’output a mano.
T
scalar ssr= @inner(resid,resid) Î S = ∑ eˆt2
t =1
15
Usando il comando scalar possiamo creare uno scalare, ovvero un oggetto che racchiude un valore
che possiamo controllare ogni volta cliccando sopra l’icona, il valore comparirà in basso nella
banda marrone. In questo caso calcoliamo il quadrato dei residui, usando @inner, calcoliamo il
prodotto tra i 2 vettori di residui In questo caso il risultato è pari a
Sum squared resid 171.5684
Notate che ora avete creato uno scalare all’interno del workfile, contraddistinto dal simbolo di
cancelletto. Cliccate sopra l’oggetto e vedrete comparire il suo valore nella barra in basso:
Ora calcoliamo la stima dello standard error della regressione, pari alla radice quadrata corretta per
i gradi di libertà T-k =200-4=196 .
eˆ' eˆ
scalar ser = @sqrt(ssr/196) Î σ̂ =
T −k
Pari a
S.E. of regression 0.935601
∑y t
scalar mdv=@mean(y) Îy= t =1
Pari a
Mean dependent var 21.20868
T
scalar tss=@inner((y-mdv),(y-mdv)) Î TSS = ∑ ( y t − y ) 2
t =1
scalar r2=1-ssr/tss
R-squared 0.999849
16
Per ottenere la standard deviation della variabile dipendente:
T
∑(y t − y) 2
scalar sddv=@sqrt(tss/199) Î s.d = t =1
T −1
scalar adjR2=1-(ser/sddv)^2
Adjusted R-squared 0.999846
Attenzione: ogni volta che rifate l’esercizio, creando di nuovo le variabili ottenute dei valori diversi,
questo dipende dal fatto che stiamo simulando le variabili estraendole da distribuzione uniforme e
normale.
300
200
100
0
-100
2
-200
1
0
-1
-2
-3
25 50 75 100 125 150 175 200
17
Sempre parlando di R quadro, ricordate che il coefficiente di determinazione è compreso tra 0 e 1
solo se nel modello stimato è compresa una costante. Provate infatti a regredire y su x2, senza
inserire la costante e vedete ciò che ottenete:
18
1.5 Regressioni parziali
Tornando alla regressione svolta, possiamo interpretare i nostri coefficienti della regressione
multipla come coefficienti di una regressione parziale.
Dependent Variable: Y
Method: Least Squares
Sample: 1 200
Included observations: 200
ls y c x2 x3
Salviamo i residui.
19
Ora regrediamo la x1 sulla costante e su x2 x3
ls x1 c x2 x3
Salviamo i residui
Ora regrediamo i residui della prima regressione parziale sui residui della seconda regressione
parziale:
ls resy resx1
20
1.6 Regressioni con variabili trasformate
Ora proviamo a svolgere alcune trasformazioni alle variabili:
genr x1d=x1/10
genr x2d=x2/10
genr x3d=x3/10
genr c10=1/10
Dependent Variable: Y
Method: Least Squares
Sample: 1 200
Included observations: 200
Notiamo che sia i coefficienti stimati che gli standard error stimati sono ora 10 volte più grandi
rispetto a quelli stimati nel caso precedente. La loro interpretazione non cambia, trasformare le
variabili è un modo per riscalarle.
genr y10=y/10
21
Adjusted R-squared 0.999846 S.D. dependent var 75.49381
S.E. of regression 0.935601 Akaike info criterion 2.724542
Sum squared resid 171.5684 Schwarz criterion 2.790508
Log likelihood -268.4542 F-statistic 431824.6
Durbin-Watson stat 2.058369 Prob(F-statistic) 0.000000
In questo caso sia i coefficienti stimati che gli standard error sono divisi per 10.
22
1.7 Multicollinearità
Consideriamo ora un modello con due variabili esplicative x1 e x2 perfettamente correlate.
Generiamo quindi ad esempio una serie x4 esattamente identica alla serie x2.
genr x4=x2
poi generiamo una nuova serie per la variabile dipendente, z, nel modo seguente:
genr z=0.3*x4+0.5*x2+nrnd
Sorprendente? No! Se le variabili esplicative sono multicollineari, la matrice X’X non ha rango
pieno e quindi non è invertibile.
genr x5=x2+0.01*nrnd
genr z2=0.3*x5+0.5*x2+nrnd
23
Da cosa possiamo notare che vi sono problemi di collinearità?
I test t accettano l’ipotesi nulla, mentre il test F la rifiuta.
Inoltre gli standard errors sono molto elevati (ciò è dovuto al fatto che se X ' X ≈ 0 , allora ( X ' X )
−1
Ora potete rifare tutte queste operazioni usando il programma che trovate sul learning space.
24
SECONDA PARTE: ANALISI EMPIRICA DI UNA COBB-
DOUGLAS
Ipotizziamo di dover stimare il seguente modello:
y = AK α H 1−α
y = è l’output di un certo paese
A= è un indice della produttività di quel paese
K = è il capitale fisico
H = è il capitale umano
Questa è un’espressione non lineare e può essere approssimata dal seguente modello in versione
logaritmica (con l’aggiunta di un termine d’errore):
Per svolger tale stima, carichiamo dei dati dalle Penn World Tables 6.2, usando delle variabili proxy
per output, capitale fisico, per quanto riguarda il capitale umano consideriamo un altro dataset.
1)
Creiamo un workfile undated di 763 osservazioni.
create u 1 763
25
Selezioniamo il dataset in EXCEL (accertatevi che non sia aperto il dataset in EXCEL)
Ora comparirà la seguente schermata in cui dobbiamo digitare i nomi delle variabili (o il loro
numero) e da che punto partiamo dal nostro foglio EXCEL:
26
Una via alternativa ed a volte più pratica (ma solo quando abbiamo poche variabili da caricare) è
quella di creare prima il workfile undated, poi con il seguente comando creiamo le variabili:
data pop k y h
genr ly=log(y)
genr lk=log(k)
genr lh=log(h)
Dependent Variable: LY
Method: Least Squares
Date: 02/28/08 Time: 23:00
Sample: 1 763
Included observations: 712
27
Sum squared resid 204.5108 Schwarz criterion 1.618095
Log likelihood -566.1895 F-statistic 256.4256
Durbin-Watson stat 1.774355 Prob(F-statistic) 0.000000
Possiamo effettuare i commenti svolti precedentemente, ma ciò che cambia ora è l’interpretazione
dei coefficienti.
Ovvero i coefficienti spiegano l’elasticità della variabile dipendente rispetto ad una variabile
indipendente. Per esempio se il capitale fisico aumenta dell’1%, l’output varierà dello 0.366%.
Quando si analizzano i coefficienti è importante verificare la grandezza del coefficiente stimato, il
suo segno ( positivo o negativo) che indica l’impatto positivo o negativo di una variabile esplicativa
sulla variabile dipendente e poi la sua significatività (nelle prossime lezioni!!!!).
Invece nell’esercizio con dati simulati, nell’output leggevamo l’effetto marginale, se avessimo
voluto l’elasticità, avremmo dovuto calcolarlo come
Coefficiente stimato * (media di x/media di y).
28
0.042621 -0.006341 0.004467
-0.006341 0.001086 -0.001017
0.004467 -0.001017 0.001369
Notate che sulla diagonale principale della matrice appena calcolata da EViews trovate le varianze
dei coefficienti stimati. Provate ad elevare al quadrato gli standard error dell’output della
regressione. Invece le covarianze sono calcolate considerando gli standard error ed il coefficiente di
correlazione.
29
SECONDA ESERCITAZIONE
Introduzione
In questa esercitazione, effettueremo tests t e tests F, utilizzando i dati del workfile
cobbdouglas.wf1.
y = AK α H β POP γ
y = è l’output di un certo paese
A = è un indice della produttività di quel paese
K = è il capitale fisico
H = è il capitale umano
POP = è la popolazione
Questa è un’espressione non lineare e può essere approssimata dal seguente modello in versione
logaritmica (con l’aggiunta di un termine d’errore):
log( y ) = log A + α log( K ) + β log( H ) + γ log( POP) + ε = β 0 + β 1 log( K ) + β 2 log( H ) + β 3 log( POP) + ε
1.3 La regressione
Dopo aver aperto il workfile cobbdouglas.wf1, dove abbiamo importato le serie da excel,
regrediamo il logaritmo del gdp reale procapite su una costante, il logaritmo del capitale umano, il
logaritmo del capitale fisico, e il logaritmo della popolazione e chiamiamo la regressione eqCB:
30
smpl @all
equation eqCB.ls ly c lh lk lpop
Dependent Variable: LY
Method: Least Squares
Sample: 1 763
Included observations: 712
31
1.4 Il Test-t
Nella colonna t-statistic, è calcolato il test per l’ipotesi nulla che il parametro sia non significativo,
cioè uguale a 0.
Ricordiamo la formula del test-t per l’ipotesi nulla che β0=0 è la seguente:
βˆ o 5.823753
test t = = = 39.56526
σˆ βˆ
0
0.147194
Per poter calcolare tale statistica per ognuno dei parametri (per esempio la costante) dobbiamo
salvare:
1)la stima dei coefficienti,
2)la matrice di varianza-covarianza,
3)lo standard error della costante,
4)i gradi di libertà nella regressione.
32
Calcoliamo lo standard error per la costante (esso si trova nella posizione 1, 1 nella matrice varianza
covarianza):
scalar stdB0 = @sqrt(CBcov(1,1))
Generiamo i gradi di libertà (con eqCB. @regobs consideriamo le osservazioni del modello di
regressione (T), invece con eqCB. @ncoef consideriamo il numero dei regressori usati nella
regressione stimata):
scalar df = eqCB. @regobs-eqCB. @ncoef
Calcoliamo il valore della t-statistic sotto ipotesi nulla, ovvero è il rapporto tra il coefficiente ed il
suo standard error (provate ad osservare l’output: prendete la stima del coefficiente della costante =
5.823753, dividete questo per lo standard error =0.147194, ottenete il valore della statistica t
=39.56526):
scalar tB0 = CB(1)/stdB0
Tale statistica è distribuita come una t di student con (T-k) gradi di libertà.
La t di student ha una funzione di densità con “code” più spesse rispetto alla normale standard, ed
ha varianza pari a df/ (df-2) dove sono i gradi di libertà (T-k).
Per un numero relativamente alto di gradi di libertà (quindi in pratica sempre per il nostro dataset),
la distribuzione tende ad una N(0,1) come si può vedere nel grafico GRAPHDISTRIBUTIONS
.45
.40
.35
DENSNORM
.30 TDENS1
TDENS5
.25 TDENS10
TDENS20
.20 TDENS50
TDENS100
.15
.10
.05
-2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 2.0 2.5
X
GRAPHDISTRIBUTIONS
33
Il numero dopo tdens indica i gradi di libertà, densnorm è la densità della distribuzione normale. Si
nota che già con 50 gradi di libertà la t di student è molto simile alla distribuzione normale.
Tali serie sono state create con i seguenti comandi:
create u 1 1000
In Eviews, per costruire le funzioni di densità, di densità cumulata, dobbiamo considerare i seguenti
comandi:
• @d per la funzione di densità
• @c per la funzione di densità cumulata
• @q è la funzione inversa di c: dato il quantile (0.9, 0.95 etc) ci dice il valore di x
E per generare i dati:
• @r genera dati casuali dalla distribuzione
Per ottenere il grafico sopra mostrato, seguite le istruzioni creandovi nel programma, oppure
potete considerare i seguenti passi:
34
Ora selezionate un nuovo tipo di grafico: XY line/ One X against all Y’s
35
L’Ipotesi Nulla e la regione di rifiuto
Per testare l’ipotesi nulla, Eviews riporta il p-value, cioè:
βˆ0
pvalue = Pr ob( x >| |)
s.e.( βˆ0 )
Il pvalue è la probabilità sotto l'ipotesi nulla che si ottengano statistiche t in valore assoluto
maggiori della statistica t calcolata dai dati campionari.
1.0
0.8
0.6
A1
A2
PVALUE
0.4
PVALUE2
0.2
0.0
-2.5 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 2.0 2.5
X
Quando queste due serie incrociano la serie pvalue (che è stata creata usando la funzione @tdist)
otteniamo i valori critici ai livelli di significatività α=0.1 ed α=0.05.
La funzione @tdist calcola il pvalue automaticamente per questo test a due code: materialmente
dovremmo moltiplicare per due la differenza tra 1 è la funzione di densità cumulata.
RICORDATE: se il pvalue calcolato da Eviews è minore del livello di significatività da voi scelto
(ad esempio, alpha=0.05), rifiutate l’ipotesi nulla; se il pvalue calcolato da Eviews è maggiore del
livello di significatività scelto, non potete rifiutare l’ipotesi nulla.
Nel nostro output, tutti i coefficienti stimati sono significativamente diversi da zero, dato che
rifiutiamo l’ipotesi nulla in tutti i casi.
scalar pvalue=@tdist(tb0,df)Î otteniamo il pvalue considerando questo comando
@tdist
37
1.6 Il Test F:
Consideriamo un modello ristretto, facendo riferimento alla seguente ipotesi nulla:
H0 : R β = r vs H 1 : R β ≠ r
j ×k k ×1 j ×1
TestF =
( ′
)[ ](
Rβˆ − r R( X ′X ) R ′ Rβˆ − r
−1 −1
)
~ F ( j, T − k )
jσˆ 2
Che può essere scritta nel seguente modo:
(RSS R − RSSU ) / j
TestF =
RSSU /(T − k )
Possiamo usare il test t per ricavare la statistica F nel caso in cui abbiamo una sola restrizione:
2
⎛ βˆ − c ⎞
TestF = t = ⎜⎜
2
⎟ .
s.eˆ.( βˆ) ⎟
⎝ ⎠
Un'altra formulazione per ricavare la statistica F è:
R 2 /( k − 1)
F=
(1 − R 2 ) /( N − k )
Ora stimiamo il seguente modello:
LY = β 0 + β 1 LH + ε t
Dependent Variable: LY
Method: Least Squares
Sample: 1 763 IF YEAR=1980
Included observations: 105
Notate che la F-statistic è pari al quadrato della t-statistic, qui abbiamo una sola restrizione nel test
F che è la stessa del test t (15.28829^2=233.7319).
Possiamo scrivere il test F riportato nell’output di EViews con ipotesi nulla che tutti i coefficienti
stimati (oltre alla costante) siano uguali a zero, usando R^2:
In questo caso
38
0.69 /( 2 − 1)
F= ≈ 233.7319
(1 − 0.69) /(105 − 2)
Ora consideriamo il seguente modello
Da questo momento consideriamo solo il campione con anno 1980 e testiamo la nostra restrizione
solo su questo sottocampione:
smpl @all if year=1980
equation eqCB1980.ls ly c lh lk lpop
Dependent Variable: LY
Method: Least Squares
Sample: 1 763 IF YEAR=1980
Included observations: 105
Salviamo il vettore dei coefficienti stimati della regressione e la matrice varianza e covarianza.
39
Ora calcoliamo il test F usando tre diversi metodi,considerando come ipotesi nulla H0:c(2)+c(3)=1:
(questa ipotesi deriva dalla teoria economica: ricordate la Cobb-Douglas Y = AK α H 1−α ( pop ) γ )
1) consideriamo il test t
Scalar ttest2=(cb2(2)+cb2(3)-
1)/@sqrt((CBcov2(2,2)+CBcov2(3,3)+2*CBcov2(2,3)))
Calcoliamo il test F
scalar ftest2=ttest2^2
Calcoliamo il pvalue (ricorda che in questo caso i gradi di libertà sono 101, 105 osservazioni meno
4 che è il numero dei regressori:
scalar pvaluew=@fdist(ftest2,1,101)
Calcoliamolo in un altro modo:
scalar pvaluew2=1-@cfdist(ftest2,1,101)
2) Calcoliamo il test F usando il modello non ristretto (stimato prima) ed il modello ristretto che
andiamo a stimare in seguito, salviamo i residual sum squared e lo standard error della regressione
del modello non ristretto:
scalar rssur=eqCB1980.@ssr
scalar seur=eqCB1980. @se
Ora stimiamo il modello ristretto sotto l’ipotesi nulla che c(2)+c(3)=1 (notate: abbiamo rinominato
la vecchia c(4) come c(3)!!!!)
40
Dependent Variable: LY
Method: Least Squares
Date: 03/14/07 Time: 01:53
Sample: 1 763 IF YEAR=1980
Included observations: 105
LY=C(1)+C(2)*LH+(1-C(2))*LK+C(3)*LPOP
Calcoliamo il test F:
scalar ftest3=((rssr-rssur)/1)/(rssur/101)
Possiamo calcolare la statistica F usando anche la seguente formula con lo standard error della
regressione al quadrato (RSS del modello non ristretto già corretti per i gradi di libertà).
scalar ftest33=(rssr-rssur)/(1*(seur^2))
3) Il terzo metodo consiste nell’usare il test di Wald e nel paragrafo successivo trovate i dettagli.
41
Scriviamo l’ipotesi che andiamo a testare:
eqCB1980.wald c(2)+c(3)=1
Ed ecco l’output, l’ipotesi nulla è H0:c(2)+c(3)=1, quindi se osserviamo le statistiche calcolate ed i
rispettivi pvalue, non possiamo rifiutare l’ipotesi nulla
Wald Test:
Equation: EQCB1980
42
F-statistic 1.597337 (1, 101) 0.2092
Chi-square 1.597337 1 0.2063
43
Stiamo testando una restrizione non lineare che è rifiutata:
Wald Test:
Equation: EQCB1980
44
1.8 Confidence ellipse:
Sempre scegliendo i test sui coefficienti possiamo trovare un’altra tipologia di analisi: il confidence
elipse, questo test riporta una serie di grafici a due dimensioni con delle ellissi di confidenza al
livello di significatività scelta da noi (per esempio 95%).
45
Ecco l’output:
1.0
0.9
C(2)
0.8
0.7
0.6
.6
.5
.4
C(3)
.3
.2
.1
.0
.08
.04
.00
C(4)
-.04
-.08
-.12
4.4 4.8 5.2 5.6 6.0 6.4 6.8 0.6 0.7 0.8 0.9 1.0 .0 .1 .2 .3 .4 .5 .6
C(1) C(2) C(3)
Questi grafici ci mostrano gli intervalli di confidenza considerando come ipotesi che c(1), c(2), c(3),
c(4) siano uguali a zero.
Notate che in questi grafici potete vedere combinati gli intervalli di confidenza per i vari
coefficienti. Per esempio, nel grafico in basso a sinistra potete vedere gli intervalli per c(1) e c(4), il
puntino rosso al centro dell’ellisse indica il coefficiente stimato per c(1) e c(4) (c(4)=-0.02 e
c(4)=5.7). Possiamo considerare gli intervalli di confidenza di c(4): la banda verticale va da poco
più di 0.04 a -0.10 (circa). Invece per quanto riguarda l’intervallo di confidenza per lo stimatore di
c(1), la banda orizzontale va da circa 5.1 a circa 6.4.
Per conoscere il valore preciso del limite inferiore e del limite superiore, possiamo cliccare sopra le
bande.
Per esempio, per c(1)
Limite inferiore
46
Limite superiore:
47
Possiamo vedere che c(4) può assumere valore zero, invece c(1) non potrà mai assumere valore pari
a zero, perché esso non cade nell’ellisse.
Infatti, questo è un modo di rappresentare gli intervalli di confidenza usando la formula matematica
dell’ellisse (vedi Wikipedia, http://it.wikipedia.org/wiki/Ellisse). In Eviews non abbiamo menzione
dell’output in merito agli intervalli di confidenza, che abbiamo calcolato precedentemente a mano.
Per vedere come sono state create queste ellissi pag 584 della UserGuide di Eviews, oppure cercate
nell’Help di Eviews .
Ecco la formula:
In effetti, la relazione è:
( )[ ′
](−1
)
b − f ( βˆ ) Var ( f ( βˆ )) b − f ( βˆ ) / 2 = cα
Dove
βˆ − β1
f ( βˆ1 ) = 1
σˆ βˆ
1
48
49
1.1
1.0
0.9
C(2)
0.8
0.7
0.6
0.5
.7
.6
.5
.4
C(3)
.3
.2
.1
.0
-.1
.10
.05
.00
C(4)
-.05
-.10
-.15
4.0 4.5 5.0 5.5 6.0 6.5 7.0 0.5 0.6 0.7 0.8 0.9 1.0 1.1 -.1 .0 .1 .2 .3 .4 .5 .6 .7
C(1) C(2) C(3)
Ora proviamo a generare una variabile lhm che sia paria alla deviazione di lh dalla sua media.
genr lhm=lh-@mean(lh)
equation eqm.ls ly c lhm
Dependent Variable: LY
Method: Least Squares
Date: 03/14/07 Time: 18:59
Sample: 1 763
Included observations: 712
50
LHM 0.936438 0.023244 40.28775 0.0000
1.00
0.98
0.96
0.94
C(2)
0.92
0.90
0.88
0.86
9.08 9.10 9.12 9.14 9.16 9.18 9.20 9.22
C(1)
In questo caso, con regressori ortogonali, l’ellisse è diventato un cerchio perfetto: Possiamo fare
ulteriori considerazioni su questo grafico.
Sempre facendo riferimento alla formula precedentemente mezionata, l’ellisse di confidenza è
l’insieme dei valori dei parametri β1 (cioè c(1))e β2 (cioè c(2))tali per cui (in questo caso di
regressori ortogonali):
⎛⎛ ˆ 2 2
⎞
⎜ ⎜ β1 − β 1 ⎞⎟ ⎛⎜ βˆ 2 − β 2 ⎞
⎟ ⎟
⎜ ⎜ σˆ +
⎟ ⎜ σˆ ˆ ⎟ ⎟ / 2 = cα = 3
⎜⎝ ˆ
β1 ⎠ ⎝ β2 ⎠ ⎟
⎝ ⎠
La stessa ellisse di confidenza può essere ottenuta per funzioni dei parametri che indicano
restrizioni. .
Per esempio se applichiamo ai parametri stimati la funzione:
βˆ − βˆ1
f ( βˆ1 ) = 1
σˆ βˆ
1
Che corrisponde alla normalizzazione dei parametri C(1) e C(2) sottraendone le stime e dividendo
per gli standard error avremo che se uno dei parametri è 0, l’altro è pari alla radice di 6, cioè circa
2.45.
β 1 2 + β 2 2 = 2cα = 6
51
43.021855102392012 * (-0.936438 + C(2))
3
-1
-2
-3
-3 -2 -1 0 1 2 3
43.622404466934222 * (-9.148773 + C(1))
52
TERZA ESERCITAZIONE
PARTE PRIMA:GLS
In questa parte dell’esercitazione, mostreremo alcuni esempi di stime in presenza di errori
autocorrelati ed eteroschedastici, l’influenza di tali problemi rispetto all’inferenza, e come possiamo
stimare particolari modelli GLS con Eviews.
2) “Y” è autocorrelato del primo ordine ed è stato generato come segue, considerando come
condizione iniziale y=e (infatti, i processi autoregressivi come quello considerato in questo
esercizio, necessitano di una condizione iniziale):
smpl 1 1
genr y=e
smpl 2 2000
y=0.8*y(-1)+e
Mentre nel grafico di E la serie si muove senza nessun vincolo nel caso di Y notate come il
valore di Y al tempo (t+1) sia fortemente influenzato dalla posizione al tempo (t): se il valore è
positivo al tempo (t), probabilmente lo sarà anche al tempo (t+1).
3) La serie X è stata generata in modo diverso nei due sottocampioni, sempre come una
combinazione del white noise precedentemente generato, ma con standard deviation diversa:
smpl 1 1000
genr x=2*e
smpl 1001 2000
genr x=4*e
Cioè nella prima parte del campione la standard deviation è pari a 2, mentre nella seconda parte
è pari a 4. Si può notare ad occhio nudo questo salto nella varianza.
E’ ciò che spesso si nota in serie finanziarie, quando in periodo di crisi la varianza aumenta.
Notate che non c’è autocorrelazione: non c’è relazione evidente tra X(t) ed X(t+1).
53
4) La serie W è una composizione tra un processo autocorrelato ed un processo
eteroschedastico x:
smpl 1 1
genr w=x
smpl 2 2000
w=0.9*w(-1)+x
Notate che in questo caso il grafico di w mostra sia autocorrelazione che eteroschedasticità.
E Y
4 8
3 6
2
4
1
2
0
0
-1
-2
-2
-3 -4
-4 -6
250 500 750 1000 1250 1500 1750 2000 250 500 750 1000 1250 1500 1750 2000
X W
20 30
15 20
10 10
5 0
0 -10
-5 -20
-10 -30
-15 -40
250 500 750 1000 1250 1500 1750 2000 250 500 750 1000 1250 1500 1750 2000
54
Generalized Least Squares
Nel caso di presenza di autocorrelazione ed eteroschedasticità gli stimatori OLS sono non distorti e
consistenti, ma esiste uno stimatore più efficiente, cioè il GLS.
Per esempio se i residui del nostro modello fossero come X, dove a metà campione la varianza
cambia, ci possiamo aspettare che la varianza degli errori delle prime osservazioni sia più bassa
rispetto a quella delle successive 1000 osservazioni.
L’equazione (1) mostra un esempio con due sole osservazioni, mentre le equazioni (2), (3) e (4)
mostrano come lo stimatore GLS per questo semplice caso si possa ottenere con l’aiuto della
matrice H, essa serve per operare una trasformazione lineare delle variabili al fine di applicare il
metodo OLS.
La matrice H contiene i pesi, con cui sono modificate le serie (vedi equazione (5)).
Consideriamo il caso della serie y1 generata come combinazione tra 2 serie estratte da una
distribuzione uniforme [0, 10] ed ad esse viene sommata la serie x creata precedentemente con
problemi di eteroschedasticità (la serie x rappresenta l’errore):
smpl 1 2000
genr z1=10*rnd
genr z2=10*rnd
genr y1=2+z1+3*z2+x
Se regrediamo y1 su costante, z1 e z2 otteniamo delle stime molto vicine ai parametri del modello
originale:
55
Dependent Variable: Y1
Method: Least Squares
Sample: 1 2000
Included observations: 2000
15
10
-5
-10
-15
250 500 750 1000 1250 1500 1750 2000
Y1 Residuals
Quindi non possiamo considerare efficienti le stime ottenute precedentemente tramite il metodo
OLS, dato che è violata l’ipotesi di omoschedasticità.
56
Eviews permette (cliccando su procs, specify/estimate, options) di stimare gli standard errors dei
parametri con metodi che correggono il problema dell’eteroschedasticità: metodo di White e
metodo Newey-West.
57
In alternativa si possono digitare i seguenti comandi:
Dependent Variable: Y1
Method: Least Squares
Sample: 1 2000
Included observations: 2000
White Heteroskedasticity-Consistent Standard Errors & Covariance
58
Dependent Variable: Y1
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Newey-West HAC Standard Errors & Covariance (lag truncation=7)
Notate che le stime dei coefficienti sono le stesse a quelle ottenuto prima, ciò che è stato corretto
con questi due metodi è la stima della standard deviation.
Ora proviamo a stimare questa regressione usando il metodo dei Generalized Least Square.
In questo caso il metodo GLS equivale al metodo WLS ed Eviews mette a disposizione questa
procedura.
'primo modo per stimare con gls: dividiamo tutte le serie per wei
smpl 1 2000
equation eqred.ls y1/wei 1/wei z1/wei z2/wei
eqred.makeresid resred
59
Dependent Variable: Y1/WEI
Method: Least Squares
Sample: 1 2000
Included observations: 2000
-1
-2
-3
-4
250 500 750 1000 1250 1500 1750 2000
RESRED
60
equation eqwls.ls(w=1/wei) y1 c z1 z2 Î notate l’opzione del comando w=weight
=1/weihat=ovvero gli standard error stimati)
eqwls.makeresid reswls
Dependent Variable: Y1
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Weighting series: 1/WEI
Weighted Statistics
Unweighted Statistics
In questo i residui non sono corretti per il problema di eteroschedasticità, come si vede dal grafico
sotto.
61
20
15
10
-5
-10
-15
250 500 750 1000 1250 1500 1750 2000
RESWLS
62
4
-1
-2
-3
-4
250 500 750 1000 1250 1500 1750 2000
Standardized Residuals
Il metodo appena utilizzato viene chiamato “unfeasible”, dato che noi non sempre conosciamo le
varianze dei nostri errori, quindi dovremo considerare un metodo che ci permetta di stimare i pesi
dalla regressione.
Ora creiamo i pesi stimando gli standard errors della regressione nei 2 ipotetici (supponiamo così se
non li consociamo come nel nostro caso) sottocampioni 1-1000 e 1001-2000
1) Dividendo tutte le serie per la serie “WEIHAT” che contiene gli standard error stimati:
equation eqwlshat2.ls y1/weihat 1/weihat z1/weihat z2/weihat
63
Dependent Variable: Y1/WEIHAT
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Dependent Variable: Y1
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Weighting series: 1/WEIHAT
Weighted Statistics
Unweighted Statistics
64
Notate che sia le stime dei coefficienti che le stime degli standard error sono identiche per entrambe
le procedure.
Inoltre nell’equazione eqwlshat cliccando su “view”, “actual, fitted, residuals”, “standardized
residuals graph” possiamo ottenere il grafico dei residui corretti per il problema di
eteroschedasticità. Notate che questi residui sono molto simili a quelli ottenuti precedentemente con
i pesi effettivi e non stimati. Infatti i pesi stimati sono pari a 1.97 (al posto di 2 come peso effettivo)
per la prima parte del campione ed a 4.13 (al posto di 4 come peso effettivo) per la seconda parte
del campione. A volte la stima dei momenti secondi non è facile e può capitare che il FGLS non sia
così efficiente come potremmo aspettarci.
65
4
-1
-2
-3
-4
250 500 750 1000 1250 1500 1750 2000
Standardized Residuals
Fino ad ora abbiamo operato tenendo conto di essere già a conoscenza dell’esistenza di
eteroschedasticità, supponiamo di voler diagnosticare questo problema. Partiamo dalla regressione
OLS.
Dependent Variable: Y1
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Proviamo a testare l’ipotesi di omoschedasticità con il test di White in EViews (come implementare
questo test, vedi seconda parte dell’esercitazione).
66
White Heteroskedasticity Test:
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Il test ci indica di non rifiutare l’ipotesi nulla, quindi sembra che non ci sia eteroschedasticità.
Se osserviamo l’istogramma per le due regressioni eq3 ed eq4 realizzata sui sottocampioni, notiamo
che i residui si distribuiscono secondo una normale:
90
Series: Residuals
80 Sample 1 800
70 Observations 800
60 Mean 3.57e-15
Median -0.011825
50
Maximum 6.393506
40 Minimum -5.776638
Std. Dev. 1.980603
30 Skewness 0.164415
Kurtosis 2.996883
20
10 Jarque-Bera 3.604614
Probability 0.164918
0
-6 -4 -2 0 2 4 6
67
90
Series: Residuals
80 Sample 1201 2000
70 Observations 800
60 Mean 5.01e-15
Median 0.037697
50
Maximum 15.43024
40 Minimum -11.65803
Std. Dev. 4.175356
30 Skewness 0.132383
Kurtosis 3.070232
20
10 Jarque-Bera 2.501135
Probability 0.286342
0
-10 -5 0 5 10 15
Possiamo usare un test che mostri se la varianza sia cambiata nei due sottocampioni scelti. L’ipotesi
nulla è che la varianza nei due sottocampioni è la stessa. Questo test si costruisce considerando:
a) i RSS di 2 regressioni, ciascuna realizzata su ogni sottocampione;
b) i gradi di libertà di ciascuna regressione (qui ipotizziamo di considerare due sottocampioni
identici)
c) infine calcoliamo la statistica ed il relativo pvalue.
smpl 1 1000
equation eq1.ls y1 c z1 z2
scalar se1=eq1.@se
scalar df1=eq1.@regobs-eq1.@ncoef
scalar ch2=(se2/se1)^2
scalar pvalueCH2=@fdist(ch2,df2,df1)
Il pvalue calcolato ci indica che rifiutiamo l’ipotesi nulla di omoschedasticità, quindi i residui sono
eteroschedastici.
68
Programma PRIMA PARTE ESERCITAZIONE
wfcreate(wf="E3GLS") u 1 2000
'crea un workfile chiamato E3GLS con 2000 osservazioni
rndseed 9072006
genr e=nrnd
'generate un errore white noise da una N(0,1)
smpl 1 1
genr y=e
smpl 2 2000
y=0.8*y(-1)+e
'generate un errore autocorrelato da un modello Autoregressivo d'ordine 1 AR(1)
smpl 1 2000
equation eqar1.ls y c y(-1)
'stimate il modello AR(1) per y
'ed ora da x creiamo gli errori w che sono sia autocorrelati che eteroschedastici
smpl 1 1
genr w=x
smpl 2 2000
w=0.9*w(-1)+x
group errors e y x w
'riuniamoli in un gruppo chiamato errors
group regressione y1 z1 z2 x
'creiamo il gruppo regressione
equation eqreg.ls y1 c z1 z2
'stimiamo il modello ols
69
'salviamo la serie dei pesi per il GLS
genr weihat=se1
scalar ch2=(se2/se1)^2
scalar pvalueCH2=@fdist(ch2,df2,df1)
smpl 1 2000
equation eqregn.ls(n) y1 c z1 z2
'stimiamo il modello ols con Newey-West standard errors
equation eqregw.ls(h) y1 c z1 z2
'stimiamo il modello ols con White standard errors
'primo modo per stimare con gls: dividiamo tutte le serie per wei
smpl 1 2000
equation eqred.ls y1/wei 1/wei z1/wei z2/wei
eqred.makeresid resred
70
scalar ch2=(se2/se1)^2
scalar pvalueCH2=@fdist(ch2,df2,df1)
1) ERRORI NORMALI
ls m c h
Dependent Variable: M
Method: Least Squares
Sample: 1 2000
Included observations: 2000
Ecco i residui, sono oscillanti intorno allo zero, questo ci può suggerire che essi siano distribuiti
come una normale.
71
4
-1
-2
-3
-4
250 500 750 1000 1250 1500 175 0 2000
RES IDS1
L’istogramma ci indica che i residui sono distribuiti come una normale con media 0 e varianza 1, la
statistica di Jarque-Bera non rifiuta l’ipotesi nulla di normalità dei residui.
Per l’ipotesi di Normalità degli errori:
72
Test di Jarque-Bera H0: Normalità di ε ⎛ μˆ 2 (
μˆ − 3σˆ 4
JB = T ⎜ 3 6 + 4
)
2
⎞
⎟ a
χ 2 (2)
H1: non Normalità di ε ⎜ 6σˆ 24σˆ 4 ⎟ ~
⎝ ⎠
H 0 , altre OLS
240
Series: Residuals
Sample 1 2000
200
Observations 2000
ls y c h
Dependent Variable: Y
Method: Least Squares
Sample: 1 2000
Included observations: 2000
73
S.E. of regression 1.371169 Akaike info criterion 3.470204
Sum squared resid 3756.448 Schwarz criterion 3.475805
Log likelihood -3468.204 F-statistic 50.40297
Durbin-Watson stat 0.631477 Prob(F-statistic) 0.000000
∑ (εˆ t − εˆt −1 ) 2
H1: εt = ρεt-1 + ut, ρ≠0 DW = t =2
≈ 2 − 2 ρˆ
T
∑ εˆ
2
t
t =1
Infatti, nella prima regressione, la statistica è un valore intorno a 2, caso in cui non c’è correlazione
seriale. Invece qui, la statistica assume un valore intorno a 0.60, ciò mostra che c’è un problema di
correlazione seriale positiva. Infatti, se guardiamo il grafico notiamo che le oscillazioni intorno allo
zero sono meno fitte, anche se continuano ad esserci (da ciò possiamo presumere che il problema di
correlazione seriale non sia rilevante).
-2
-4
-6
250 500 750 1000 1250 1500 1750 2000
RESIDS2
74
Ora testiamo la correlazione usando Breusch-Godfrey test
L’ipotesi nulla è l’assenza di correlazione seriale fino al ritardo considerato come ipotesi (qui,
abbiamo considerato il ritardo secondo). La statistica utilizzata è pari al prodotto tra il numero di
osservazioni e l’R2 della Test Equation. Tale statistica è distribuita come una chi-quadro con gradi
di libertà pari il numero dei ritardi dei residui. La tabella riporta pure un F-test per l’ipotesi nulla
che i parametri legati ai ritardi degli errori siano non significativi.
In questo caso, rifiutiamo l’ipotesi nulla, quindi la serie è correlata serialmente.
Test Equation:
Dependent Variable: RESID
Method: Least Squares
Presample missing value lagged residuals set to zero.
75
R-squared 0.468775 Mean dependent var -1.02E-16
Nel libro troverete pure un’altra versione del test LM in cui si utilizzano le correlazioni stimate dei
residui.
Test LM H0: ε t non correlato ⎛ m 2⎞ a
LM = T ⎜⎜ ∑ rˆj ⎟⎟ χ 2 ( m)
H1: ε t correlato di ordine m ⎝ j =1 ⎠ ~
H 0 , altre OLS
3) ERRORI ETEROSCHEDASTICI
ls x c z
Dependent Variable: X
Method: Least Squares
Sample: 1 2000
Included observations: 2000
76
Se osserviamo i residui notiamo che c’è un evidente caso di eteroschedasticità, dato che la varianza
dei residui è diversa nelle tre parti del campione.
300
200
100
-100
-200
-300
250 500 750 1000 1250 1500 1750 2000
RESIDS3
Testiamo questa ipotesi tramite i due test di White che si può realizzare automaticamente in
EViews:
77
Test di White H0: σi2=σ2 W = T⋅R2 ~ χ 2 (q )
H 0 , altreOLS
H1: σi2=f(γ+δZ), Z è T × q
L’ipotesi nulla è la presenza di omoschedasticità, esso non richiede l’ipotesi di Normalità degli
errori per ricavare la distribuzione della statistica.
In EViews abbiamo la possibilità di svolgere due tipi di White test: senza cross term e con cross
term. La differenza tra le due opzioni è data dal fatto che c’è la possibilità di avere i termini
incrociati tra i regressori, nel caso in cui abbiamo un solo regressore oltre la costante i risultati del
test sono identici come potete vedere sotto. L’ipotesi di omoschedasticità è rifiutata.
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Date: 03/28/07 Time: 10:27
Sample: 1 2000
Included observations: 2000
78
White Heteroskedasticity Test:Cross term
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Date: 03/28/07 Time: 10:27
Sample: 1 2000
Included observations: 2000
79
Durbin-Watson stat 1.257141 Prob(F-statistic) 0.000000
Possiamo testare l’ipotesi nulla di omoschedasticità con il test di Goldfeld-Quandt e con il test di
Breusch-Pagan.
Test di Goldfeld-Quandt H0: σi2=σ2 RSS 2
GQ = ~ F(p,p)
H1: σi2=cXi2, c>0, RSS1 H 0 , altre OLS
∑ (γˆ + δˆZ )
Test di Breusch-Pagan H0: σi2=σ2 T 2
2 i
H1: σi =f(γ+δZ), Z è T × q BP = i =1
~ χ 2 (q)
2 H 0 , altreOLS
Questi possono essere svolti solo nel caso in cui i residui oltre ad un problema di eteroschedasticità
rispettano le altre ipotesi del modello lineare,inoltre non vengono implementati automaticamente in
EViews, ma bisogna costruirli a mano.
Dependent Variable: W
Method: Least Squares
Sample: 2 2000
Included observations: 1999
Dall’output notiamo che c’è un problema di correlazione seriale, in considerazione della statistica di
Durbin-Watson. Se osserviamo il grafico, notiamo oltre ad un problema di correlazione, anche un
problema di eteroschedasticità.
80
40
30
20
10
-10
-20
-30
-40
250 500 750 1000 1250 1500 1750 2000
RESIDS4
Ora rifacciamo le analisi viste precedentemente sui residui il test Breusch- Godfrey rifiuta l’ipotesi
nulla di assenza di correlazione seriale ed il test di White rifiuta l’ipotesi di omoschedasticità.
Test Equation:
Dependent Variable: RESID
Method: Least Squares
Presample missing value lagged residuals set to zero.
81
Variable Coefficient Std. Error t-Statistic Prob.
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Sample: 2 2000
Included observations: 1999
82
Ecco un confronto tra i diversi residui analizzati in questa esercitazione: Notate che RESIDS1
Mostrano le caratteristiche di una serie normale, con media zero e varianza 1, invece RESIDS2
mostra delle oscillazioni più lente intorno allo zero, tipico sintomo di serie correlata. RESIDS3
mostrano l’esistenza di un problema di eteroschedasticità, anche RESDIS4 mostrano questo
sintomo abbinato ad un problema di correlazione.
RESIDS1 RESIDS2
4 6
3
4
2
2
1
0 0
-1
-2
-2
-4
-3
-4 -6
250 500 750 1000 1250 1500 1750 2000 250 500 750 1000 1250 1500 1750 2000
RESIDS3 RESIDS4
300 200
200
100
100
0 0
-100
-100
-200
-300 -200
250 500 750 1000 1250 1500 1750 2000 250 500 750 1000 1250 1500 1750 2000
83
In EVIEWS 6 c’è la possibilità di implementare altri nuovi Test sull’eteroschedasticità:
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Date: 04/09/08 Time: 11:41
Sample: 2 2000
Included observations: 1999
wfcreate(wf="tests_resids") u 1 2000
rndseed 21101980
'generiamo dei white noise con media zero e varianza 1
genr e=nrnd
genr h=nrnd
genr m=nrnd+2+0.4*h
genr y=0
smpl 2 2000
'ipotizziamo un processo autocorrelato di ordine 1
y=0.7*y(-1)+0.2*h+e
smpl 1 2000
'stimiamo il seguente modello e testiamo sui residui con il test di Breusch-Pagan l'ipotesi di
assenza di correlazione
equation eq2.ls y c h
eq2.makeresids resids2
eq2.auto(2)
freeze(bp_eq2) eq2.auto(2)
85
'ora consideriamo un problema di eteroschedasticità
rndseed 21101980
smpl 1 2000
genr z=nrnd
genr ee=e
'ora creiamo una nuova serie che ha problemi sia di eteroschedasticità che di correlazione
smpl 1 1
genr w=x
smpl 2 2000
w=10+x+0.6*w(-1)
86
QUARTA ESERCITAZIONE
1) Modello log-linearizzato
Consideriamo un modello in cui vogliamo spiegare il salario avendo come variabili esplicative
gli anni di attività lavorativa di un individuo, il suo livello di istruzione e il sesso.
Il livello di istruzione viene indicato dalla variabile educ che è una variabile discreta,
qualitativa, ovvero una variabile che assume i valori 1, 2, 3, 4,5 in base al livello di istruzione
(1=scuola elementare; 2=scuola media; 3=scuola professionale di 3 anni; 4=liceo; 5=università)
dell’individuo. Il sesso è indicato dalla variabile “male”, che è una variabile dummy, ovvero una
variabile binaria che può assumere solo 2 valori: 0 oppure 1, 1 se l’individuo è di sesso
maschile. Stiamo trattando un dataset cross-section, ovvero dove abbiamo osservazioni per tanti
individui.
Ecco il grafico della variabile educ e l’istogramma e le statistiche di male:
0
250 500 750 1000 1250
EDUC
900
Series: MALE
800 Sample 1 1404
700 Observations 1403
87
L’unica variabile non qualitativa è l’esperienza. Ora trattiamo il modello trasformando il salario
e l’esperienza in logaritmi, lasciando in livelli l’istruzione e la variabile male.
genr lwage=log(wage)
genr lexper=log(exper)
600
30
500
400
20
300
200
10
100
0 0
250 500 750 1000 1250 250 500 750 1000 1250
1.24
1.20
1.16
1.12
1.08
1.04
1.00
0.96
2 4 6 8 10 12 14 16 18 20
1+X EX
Invece la variabile educ può essere considerata una variabile continua, ed il campione è ordinato
considerando tale variabile. Quindi l’interpretazione data al coefficiente stimato è quella di
semi-elasticità, più è elevato il grado di istruzione, più il salario aumenta.
Ogni successivo grado d’istruzione fa aumentare il salario del 13% rispetto alla media a parità
di esperienza lavorativa.
In termini monetari il salario aumenterà quindi di 0.13*wage (questa sarà la pendenza), mentre
l’elasticità sarà pari a 0.13*educ. Notate che in questa ultima interpretazione possiamo
considerare la media di wage e educ per ottenere un valore puntuale di elasticità e pendenza,
oppure possiamo considerare i singoli valori per ogni individuo e quindi elasticità e pendenza
cambiano a seconda dell’individuo.
Consultate la pagina 142 del libro dove trovate una tabella riassuntiva di tutti i casi
possibili di modelli in livelli e logaritmi.
Se esiste una relazione non lineare tra la variabile dipendente ed i regressori, il modello può
essere approssimato tramite un’espansione di Taylor come un modello lineare che include tra i
regressori le potenze ed i prodotti incrociati dei regressori. In una regressione contenente questi
ulteriori regressori i loro coefficienti risulteranno significativi in presenza di non linearità.
89
Se ci sono poche osservazioni e molti regressori, diventa impossibile stimare il modello
necessario per un test di non linearità che consideri espressamente i regressori non lineari; per
questo nel test di Ramsey si sostituiscono tali regressori con le potenze delle serie stimate
(FITTED)
Il Ramsey RESET è un test a due stadi: nel primo stadio si stima il modello lineare e si
ottengono i valori stimati (indicati nell’output come FITTED), nel secondo le potenze di
FITTED vengono aggiunte nella regressione come serie che approssimano la presenza di
regressori non lineari. L’ipotesi nulla del test è che i coefficienti di questi termini siano
congiuntamente non significativi, quindi rifiutando l’ipotesi nulla, rifiutiamo l’ipotesi di
linearità.
In questo caso scegliamo tre potenze della variabile dipendente stimata come regressori aggiunti
che includono la componente non lineare.
90
Test Equation:
Dependent Variable: LWAGE
Method: Least Squares
Sample: 1 1403
Included observations: 1403
Test Equation:
Dependent Variable: RESID
Method: Least Squares
Presample missing value lagged residuals set to zero.
91
Variable Coefficient Std. Error t-Statistic Prob.
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Sample: 1 1403
Included observations: 1403
92
R-squared 0.014176 Mean dependent var 0.066169
Adjusted R-squared 0.008518 S.D. dependent var 0.148095
S.E. of regression 0.147463 Akaike info criterion -0.984091
Sum squared resid 30.31281 Schwarz criterion -0.950436
Log likelihood 699.3398 F-statistic 2.505688
Durbin-Watson stat 2.000345 Prob(F-statistic) 0.010544
eq1.makeresids res1
freeze(statistics) res1.stats
240
Series: Residuals
Sample 1 1403
200
Observations 1403
Notate che i residui non sono Normali, la kurtosis è di 6, invece che di 3, le skewness è –0.90,
invece che 0; quindi ci sono dei problemi. Osservando il grafico, possiamo vedere che nella coda
sinistra della distribuzione ci sono delle osservazioni che possiamo definire degli outliers, oppure
osservazioni aberranti, ovvero dei valori che possono influenzare pesantemente la nostra
distribuzione in modo sbagliato.
Dal punto di vista economico, considerando che i residui sono la differenza tra i valori effettivi ed i
valori stimati, è possibile che il salario di qualche individuo sia stranamente troppo basso rispetto a
quello stimato, oppure si sono verificati degli errori di misurazione nel raccogliere i dati.
93
6.8
6.4
6.0
5.6
5.2
1.0 4.8
0.5 4.4
0.0
-0.5
-1.0
-1.5
-2.0
250 500 750 1000 1250
Infatti, ci sono dei residui molto bassi rispetto agli altri, cioè ci sono degli outliers.
Per risolvere questo problema, possiamo scartare queste osservazioni, cambiando il campione,
oppure utilizzare una regola più sistematica.
Per esempio potremmo decidere di scartare tutte le osservazioni i cui residui siano minori di –2
volte lo standard error della regressione, quindi consideriamo una restrizione nel campione di stima
imponendo la restrizione che devono essere utilizzate solo le osservazioni che avevano residui>-
2*standard error nella prima regressione.
scalar se1=eq1.@se
eq1.makeresids resids1
smpl if resids1>-2*se1
Notate l’indicazione del sample, ora abbiamo un sample ristretto ed i coefficienti comunque sono
molto simili alla prima regressione.
Test Equation:
Dependent Variable: LWAGE
Method: Least Squares
Sample: 1 1404 IF RESIDS1>-2*SE1
Included observations: 1357
95
Adjusted R-squared 0.453482 S.D. dependent var 0.293670
S.E. of regression 0.217101 Akaike info criterion -0.211761
Sum squared resid 63.62947 Schwarz criterion -0.184870
Log likelihood 150.6798 F-statistic 188.5268
Durbin-Watson stat 1.872785 Prob(F-statistic) 0.000000
140
Series: RES2
120 Sample 1 1404 IF RESIDS1>
-2*SE1
100 Observations 1357
80 Mean 3.43e-16
Median 0.000884
Maximum 0.635701
60
Minimum -0.539518
Std. Dev. 0.217277
40
Skewness -0.024856
Kurtosis 2.715269
20
Jarque-Bera 4.723677
0 Probability 0.094247
-0.4 -0.2 -0.0 0.2 0.4 0.6
Test Equation:
Dependent Variable: RESID
Method: Least Squares
Presample and interior missing value lagged residuals set to zero.
Test Equation:
Dependent Variable: RESID^2
Method: Least Squares
Sample: 1 1404 IF RESIDS1>-2*SE1
Included observations: 1357
97
Notate che abbiamo risolto il problema di eteroschedasticità, ma abbiamo creato un po’ di
autocorrelazione nei residui.
Ora utilizzando un nuovo comando: tra gli stability tests possiamo osservare la stima ricorsiva dei
coefficienti della nostra regressione,ovvero come si evolve la stima dei parametri al cambiare del
campione, per capire se i parametri cambiano all’aumentare del livello medio d’istruzione.
Possiamo usare i comandi nella barra:
98
freeze(c1) eq2.rls(c) c(1) c(2) c(3) c(4)
Ecco l’output:
5 .3 .2 4
5 .2
.2 0
5 .1
.1 6
5 .0
.1 2
4 .9
.0 8
4 .8
4 .7 .0 4
250 500 750 1 00 0 1250 250 500 750 1000 1250
.3 5 .2 4
.3 0
.2 0
.2 5
.1 6
.2 0
.1 2
.1 5
.0 8
.1 0
.0 5 .0 4
250 500 750 1 00 0 1250 250 500 750 1000 1250
Notate dal terzo riquadro che il differenziale percentuale di salario tra uomini e donne diminuisce
con l’aumentare dell’istruzione, negli altri casi invece la stima varia di poco. Infatti notiamo che se
l’istruzione è solamente elementare, il salario degli uomini è di poco più superiore del 25% del
salario delle donne, se l’istruzione è universitaria il salario degli uomini è poco più di quello delel
donne “solo” del 10%.
Notata la tabella dei coefficienti stimati di c(1) c(2) c(3) c(4) ricorsivamente:
Stiamo considerando il campione ristretto, senza considerare outliers; notate che l’ultima stima è
quella che è riportata nell’output della regressione eq1.
3) Dummy
Abbiamo detto precedentemente che la variabile educ è una variabile qualitativa che può assumere i
valori 1, 2, 3, 4, 5 a seconda del grado d’istruzione dell’individuo. Utilizzando tale variabile come
regressore abbiamo stimato che un aumento del livello d’istruzione aumenta il salario del 14%.
Se consideriamo restrittiva l’ipotesi che ogni passaggio nel livello d’istruzione porti alla stessa
variazione percentuale di salario, possiamo utilizzare della variabili dummy.
99
Al posto di considerare questa variabile, creiamo delle variabili dummy, ovvero delle variabili
binarie che assumono valore 1 oppure 0, in base al livello di istruzione.
Queste assumono valore 0 tranne nella parte del campione in cui educ assume valore 1 (nel caso di
dummy 1), valore 2 (nel caso di dummy 2), valore 3 (nel caso di dummy 3), valore 4 (nel caso di
dummy 4) e valore 5 (nel caso di dummy 5).
Ecco i comandi:
smpl @all
genr d1=0
genr d2=0
genr d3=0
genr d4=0
genr d5=0
smpl if educ=1
d1=1
smpl if educ=2
d2=1
smpl if educ=3
d3=1
smpl if educ=4
d4=1
smpl if educ=5
d5=1
Ora stimiamo la seconda regressione (considerando sempre il campione ristretto per evitare gli
outliers) usando le dummy al posto di educ.
Ricordate che in questo caso le dummy si dicono additive, perché si sommano alla costante nel
momento in cui assumono valore 1, quindi la pendenza della retta di regressione (logaritmo del
salario in funzione dell’esperienza) è uguale; avremo infatti 5 linee di regressione diverse con
diversa intercetta ma con identica pendenza (se non teniamo conto di male, altrimenti avremmo 10
rette di regressione)..
smpl if (resids1)>-2*se1
equation eq3.ls lwage c lexper male d2 d3 d4 d5
100
LEXPER 0.187468 0.007545 24.84598 0.0000
MALE 0.103011 0.012388 8.315611 0.0000
D2 0.143160 0.026130 5.478687 0.0000
D3 0.277877 0.025069 11.08465 0.0000
D4 0.437280 0.025919 16.87124 0.0000
D5 0.577308 0.026807 21.53584 0.0000
In questa nuova regressione i coefficienti stimati sono interpretabili in maniera simile rispetto alla
variabile “male”.
Ciò che è interessante da leggere è come passando da un grado scolastico 1 ad un grado 2, il salario
aumenti del 14%, dal secondo grado al terzo aumenti del 13% (0.27-0.14), dal secondo al quarto,
aumenti del 29% (0.43-0.14), dal quarto al terzo aumenti del 16% (0.43-0.27), dal quinto al secondo
aumenti del 43% (0.57-0.14) e dal quarto al quinto del 14% (0.57-0.43).
In effetti, l’approssimazione del tasso di crescita come esponente di e è valido per bassi tassi di
crescita, ma rimane il fatto che con l’aiuto delle dummy possiamo per esempio dire che il salario in
logaritmi aumenta in maniera più rilevante nel caso in cui un individuo scelga la scuola superiore
rispetto alla scuola professionale.
4) Forecasting
In questa sezione accenniamo alle previsioni, che saranno più importanti quando tratteremo i
modelli dinamici (dato che per esempio è in modelli dinamici riguardanti l’evoluzione di un
titolo azionario che apprezziamo maggiormente l’importanza delle previsioni).
Nel nostro caso in cui abbiamo un dataset cross-section di individui possiamo utilizzare le
previsioni come strumento per valutare la bontà di diversi modelli.
Per esempio possiamo confrontare due modelli più semplici dove il salario è funzione
dell’esperienza.
I due modelli verranno stimati nel campione 1-1300, e confrontando i valori previsti per le
ultime osservazioni con i valori effettivi possiamo capire quale possa essere il modello migliore.
L’equazione 4 è la regressione del logaritmo dei salari sull’esperienza sul campione 1 1300
log(wage) = β1 + β 2 exp er + ε t
smpl 1 1300
equation eq4.ls lwage c exper
101
Method: Least Squares
Sample: 1 1300
Included observations: 1300
Interpretiamo il coefficiente stimato come una semi-elasticità, cioè la variazione percentuale del
salario all’aumentare degli anni di esperienza. Se l’esperienza aumenta di 1, il salario aumenta
di 0.008*wage; l’elasticità sarà pari a 0.008*exper.
Ora sul restante campione compiamo una previsione, cioè indichiamo quale dovrebbe essere il
valore atteso del logaritmo del salario di un individuo se conosciamo gli anni di esperienza e sulla
base delle informazioni che abbiamo per i primi 1300 individui.
Possiamo usare i comandi nella barra:
102
Oppure usare i comandi:
Forecast: LWAGEF4N
Actual: LWAGE
Forecast sample: 1301 1404
Adjusted sample: 1301 1403
Included observations: 103
103
smpl 1301 1404
group g4 lwage lwagef4n-1.96*selwagef4n lwagef4n+1.96*selwagef4n
freeze(gp4)g4.line
Usando i comandi qui sopra, possiamo creare gli intervalli di confidenza intorno alla previsione.
Confrontandoli con la serie effettiva notiamo che il valore effettivo del logaritmo del salario si
trova quasi sempre all’interno dell’intervallo di confidenza basato sul modello stimato nelle
prime 1300 osservazioni. Se cosi non fosse, possiamo affermare che il modello non funziona per
le ultime osservazioni, e che quindi è meglio provare con un modello diverso, o stimare lo
stesso modello nei due sottocampioni (ci troviamo cioè davanti ad un break strutturale).
6 .8
6 .4
6 .0
5 .6
5 .2
1325 1350 1375 1400
LW AGE
L W A G E F 4 N - 1 .9 6 * S E L W A G E F 4 N
L W A G E F 4 N + 1 .9 6 * S E L W A G E F 4 N
Test Equation:
Dependent Variable: LWAGE
Method: Least Squares
Sample: 1 1403
Included observations: 1403
104
Coefficient Std. Error t-Statistic Prob.
smpl 1 1300
equation eq5.ls lwage c exper exper^2
105
In questo caso per interpretare i coefficienti dobbiamo fare attenzione alle formule matematiche. Per
calcolare la semi-elasticità:
∂ log(WAGE )
= β 2 + 2 β 3 EXPER
∂EXPER
Come prima, se prendiamo una media di wage ed exper, abbiamo un valore puntuale, altrimenti
avremo un valore che sarà diverso per ogni individuo.
Ora effettuiamo le previsioni anche per questo secondo modello con i seguenti comandi:
Forecast: LWAGEF5N
Actual: LWAGE
Forecast sample: 1301 1404
Adjusted sample: 1301 1403
Included observations: 103
106
6.8
6.4
6.0
5.6
5.2
4.8
1325 1350 1375 1400
LWAGE
LWAGEF5N-1.96*SEL WAGEF5N
LWAGEF5N+1.96*SEL WAGEF5N
Qua sotto riportiamo le formule di Root Mean Squared Error, Mean Absolute Error e Mean
Absolute Percentage Error.
Dove h è la lunghezza del campione di previsione. Le prime due statistiche ci danno un valore
assoluto, ed a parità di variabile dipendente considerata minori sono le statistiche, migliore è il
modello. Se vogliamo avere un’idea dell’importanza relativa degli errori di previsione rispetto
al valore effettivo utilizziamo il Mean Absolute Percentage Error; per esempio in questi due
modelli in media l’errore di previsione è pari a poco più del 4% del valore effettivo.
Sulla base di tali statistiche il modello di eq5 è migliore, ma comunque i valori effettivi sono in
tutti e due i casi all’interno dell’intervallo di confidenza.
107
Ramsey RESET Test:
Test Equation:
Dependent Variable: LWAGE
Method: Least Squares
Sample: 1 1403
Included observations: 1403
108
PROGRAMMA
'specificazione log-lineare: parametri sono 'principalmente semi-elasticità
freeze(male_grafico) male.hist
freeze(educ_grafico) educ.line
'trasformazione logaritmica della variabili wage ed exper
smpl @all
genr lwage=log(wage)
genr lexper=log(exper)
'grafico per confrontare i livelli ed i logaritmi
group ww lwage wage
freeze(ww_grafico) ww.line
group ee lexper exper
freeze(ee_grafico) ee.line
'regressione e test sui residui
equation eq1.ls lwage c lexper male educ
eq1.forcst wagef_eq1
'test di Ramsey-Reset
freeze(ram_reset1) eq1.reset(3)
'test di correlazione seriale
freeze(bp1) eq1.auto(2)
'test di White
freeze(white1) eq1.white(c)
109
smpl if educ=1
d1=1
smpl if educ=2
d2=1
smpl if educ=3
d3=1
smpl if educ=4
d4=1
smpl if educ=5
d5=1
'Confrontiamo due specificazioni usando soltanto la variabile exper con out-of-sample forecasts
'exper in livelli
smpl 1 1300
equation eq4.ls lwage c exper
'forecasting
smpl 1301 1404
freeze(f4) eq4.forcst(e,n) lwagef4n selwagef4n
'intervalli di confidenza
smpl 1301 1404
group g4 lwage lwagef4n-1.96*selwagef4n lwagef4n+1.96*selwagef4n
freeze(gp4) g4.line
'esempio
smpl 1 20
genr x=@trend*0.01
genr ex=exp(x)
group expo 1+x ex
freeze(exp_graf) expo.line
smpl @all
110
QUINTA ESERCITAZIONE
PRIMA PARTE
L’obiettivo di questa prima parte dell’esercitazione è quello di imparare ad analizzare delle serie
storiche, utilizzando il programma eserc_5.prg.
rndseed 10101010
wfcreate(wf=eserc_5) u 1 1000
genr et=nrnd
Generiamo inoltre dei processi AR : tali modelli spiegano yt in funzione del suo passato (cioè di
valori ritardati della stessa serie : y(t-1), y(t-2),...,)
Quando generiamo dei processi autoregressivi AR, dobbiamo scegliere le condizione iniziali; il
numero di osservazioni iniziali da fissare corrispondono al numero di ritardi del processo (ad
esempio nel caso di un processo AR(2), dobbiamo fissare 2 osservazioni iniziali). Possiamo fissare
le condizioni iniziali uguali a 0.
genr yt=0
genr xt=0
genr zt=0
genr kt=0
Ora creiamo due processi AR(1): il processo yt è stazionario in senso debole (cioè con media,
varianza ed autocovarianze che non dipendono da t) dato che il parametro alpha è pari a 0.
Invece il processo xt è non stazionario dato che alpha è pari ad 1.
In questo caso vi è un trend stocastico (pari alla sommatoria dei residui), abbiamo cioè un processo
con radice unitaria.
smpl 2 1000
genr yt=0.7*yt(-1)+et
genr xt=xt(-1)+et
111
Ora osserviamo il grafico dei 4 processi :
freeze(graph_yt) yt.line
freeze(graph_xt) xt.line
freeze(graph_zt) zt.line
freeze(graph_kt) kt.line
300 40
250 30
20
200
10
150
0
100
-10
50
-20
0 -30
-50 -40
250 500 750 1000 250 500 750 1000
KT XT
4 1200
3
1000
2
1 800
0
600
-1
-2 400
-3
200
-4
-5 0
250 500 750 1000 250 500 750 1000
YT ZT
Notate che la serie yt sembra essere correlata, ma la correlazione non è molto alta e la serie oscilla
intorno allo zero, la media del processo (proprietà del mean reverting). Infatti nei processi
autoregressivi, stazionari, media e varianza non dipendono dal tempo.
Invece il processo xt non oscilla intorno allo zero, poiché gli effetti dei singoli residui si cumulano
senza scomparire nel medio-lungo periodo come nel caso precedente; questo è un sintomo di
persistenza generata da una radice unitaria. In questo caso la varianza del processo aumenta
all’aumentare del tempo.
La serie zt mostra le caratteristiche di un trend lineare, deterministico, notate che la serie cresce con
l’aumentare del tempo. Anche la serie kt mostra le caratteristiche di un trend deterministico, anche
se è una combinazione tra un processo autoregressivo stazionario ed un trend deterministico.
Nel caso di serie storiche, è utile osservare il correlogramma delle serie in questione.
Il correlogramma mette in evidenza la partial autocorrelation e la autocorrelation function.
freeze(correl_yt) yt.correl(16)
112
freeze(correl_xt) xt.correl(16)
freeze(correl_zt) zt.correl(16)
freeze(correl_kt) kt.correl(16)
Nel caso di un modello AR(1) l’autocorrelation function teorica d’ordine k è pari alla potenza k-
esima di alpha, mentre per quanto riguarda la PACF è sempre pari a 0 a parte il primo termine che è
uguale al primo termine della ACF.
Infatti se osserviamo il correlogramma di yt vediamo che l’ACF è molto simile a quella teorica (le
potenze di 0.7, vedete equazione (16)), PACF(1) è pari a 0.69, e gli altri termini della PACF sono
non significativi.
Se avessimo avuto un processo AR(k) stazionario, avremmo avuto k termini della PACF
significativi. Un processo white noise (cioè una serie non autocorrelata) avrebbe un correlogramma
con nessun termine significativo.
Nel caso della serie xt in cui è presente un trend stocastico, l’ACF decresce lentamente, infatti esso
è semplicemente funzione di t e k (vedete equazione (18)).
La PACF ha solo il primo termine significativo.
113
Per quanto riguarda le due serie zt e kt che hanno un trend deterministico, il correlogramma è molto
simile al caso della serie non stazionaria xt. Ciò succede perché le due serie sono molto persistenti a
causa del trend deterministico. Quindi l’osservazione delle serie e del correlogramma non sono
sufficienti al fine di determinare se in una serie sia presente un trend stocastico.
Per determinare se una serie è stazionaria, esistono molti tests nella letteratura econometrica, i tests
principali possono essere fatti su Eviews. In questa esercitazione ne abbiamo citato solo due:
Augmented Dickey-Fueller (ADF) e KPSS
114
Nell’ADF l’ipotesi nulla che viene testata è la presenza di radice unitaria (cioè di un trend
stocastico); invece in KPSS, l’ipotesi nulla è la stazionarietà del processo. Entrambi i test sono
costruiti usando regressioni ausiliarie. Ecco i comandi per il test ADF e per il test KPSS,
rispettivamente.
freeze(adf_yt) yt.adf
freeze(adf_xt) xt.adf
freeze(adf_zt) zt.adf
freeze(adf_kt) kt.adf
freeze(kpss_yt) yt.uroot(kpss)
freeze(kpss_xt) xt.uroot(kpss)
freeze(kpss_zt) zt.uroot(kpss)
freeze(kpss_kt) kt.uroot(kpss)
Nel caso di questi test, è meglio implementarli usando le finestre, dato che c’è la possibilità di
scegliere diverse opzioni.
Il test ADF si basa su una rispecificazione del modello AR(k) della nostra serie di interesse,
depurata da costante ed eventuale trend deterministico.
L’AR(k) della parte stocastica del modello (cioè al netto di costante e trend deterministico) diventa
un AR(k-1) della serie in differenze prime a cui si aggiunge y(t-1).
Se stimando questo modello il parametro y(t-1) è significativamente maggiore di 0 allora vuol dire
che vi è una radice unitaria che può essere eliminata semplicemente facendo la differenza prima
della serie d’interesse. Infatti se fosse significativamente uguale o maggiore di zero ci troveremmo
davanti ad una serie con unit root o davanti ad una serie con andamento esplosivo.
Per effettuare il test ADF dobbiamo scegliere Unit Root test dalla finestra della serie::
115
Lag length indica il numero di ritardi della serie in differenze prime da inserire nella regressione; è
possibile fare in modo che Eviews scelga il numero di ritardi automaticamente tramite lo Schwarz
Info Criterion (come in questo caso), o indicare i numeri di ritardi.
Possiamo scegliere di inserire nella regressione ausiliaria che valuterà la radice unitaria un trend
deterministico e l’intercetta, l’intercetta oppure nessuna delle opzioni precedenti, e chiedere di
effettuare il test sulla serie stessa, o sulla sua differenza prima o seconda.
Per scegliere bene l’opzione possiamo osservare il grafico della serie, per esempio nel caso di xt e
yt non notiamo né intercetta, né trend lineare, quindi possiamo scegliere l’opzione none.
Implementando il test per XT vediamo che non si rifiuta l’ipotesi nulla.
t-Statistic Prob.*
116
Variable Coefficient Std. Error t-Statistic Prob.
Come vedete sopra la statistica d’interesse è la t-statistics per l’ipotesi nulla che xt(-1) sia
significativamente minore di 0. Il p-value riportato nella regressione non è affidabile, perché nel
caso di presenza di radice unitaria, la statistica t non si distribuisce come una t-student.
Potete osservare tutto ciò facendo girare il programma olsunit.prg, in cui vengono simulati 1000
AR(1) stazionari e 1000 AR(1) con radice unitaria. Il programma produce tre grafici, tra cui il
grafico disttstat che mostra come la distribuzione (stimata con metodi nonparametrici) di tale
statistica sia distorta e asimmetrica:
.4
.3
.2
.1
.0
-3 -2 -1 0 1 2 3
SER03
Da tale esempio possiamo capire perché il valore critico indicato nella tabella del test al 5% di
significatività sia pari a -2.86. Eviews riporta i valori critici per le diverse specificazioni; tali valori
critici sono stati tabulati sulla base di simulazioni simili a quelle fatte in quest’ultimo programma.
Nel caso di yt la t-statistics è molto bassa, quindi rifiutiamo l’ipotesi nulla di nonstazionarietà:
117
Null Hypothesis: YT has a unit root
Exogenous: None
Lag Length: 0 (Automatic based on SIC, MAXLAG=12)
t-Statistic Prob.*
Nel caso della serie zt, dobbiamo svolgere il test usando l’opzione trend ed intercetta:
Null Hypothesis: ZT has a unit root
Exogenous: Constant, Linear Trend
Lag Length: 0 (Automatic based on SIC, MAXLAG=12)
t-Statistic Prob.*
In questo caso rifiutiamo l’ipotesi nulla di radice unitaria, perché infatti abbiamo un trend
deterministico non stocastico, anche se il correlogramma di zt è molto simile a quello di un
processo non stazionario.
t-Statistic Prob.*
118
Test critical values: 1% level -2.567329
5% level -1.941147
10% level -1.616481
In questo caso avremmo non rifiutato l’ipotesi nulla ed avremmo detto erroneamente che nella serie
c’è una radice unitaria.
Per evitare errori simili, dobbiamo guardare il grafico della serie per capire se c’è un trend od
un’intercetta, altrimenti possiamo anche guardare se il trend o l’intercetta nella regressione ausiliare
sono significative. Rifacciamo il test con l’opzione trend ed intercetta:
Un discorso simile può essere fatto con la serie kt, che è un processo stazionario ma con un trend
deterministico. Implementiamo ADF con l’opzione trend:
119
Null Hypothesis: KT has a unit root
Exogenous: Constant, Linear Trend
Lag Length: 0 (Automatic based on SIC, MAXLAG=21)
t-Statistic Prob.*
t-Statistic Prob.*
Per quanto riguarda il test KPSS, si tratta di un test complesso che richiede anche la stima dello
spettro dei residui (vedete pagina 7 del pdf con l’help di Eviews), ed in cui l’ipotesi nulla è
l’assenza di una radice unitaria.
In questa esercitazione riportiamo solo alcuni esempi, mostrando come interpretare la statistica
riportata. Anche in questo caso possiamo scegliere se inserire la costante e/o il trend.
120
Anche in questo caso, siamo interessati a valutare l’ipotesi nulla aggiungendo nella regressione
ausiliare il trend e l’intercetta oppure solo l’intercetta.
Nel caso di xt, non era presente il trend, quindi scegliamo solo intercetta:
121
Null Hypothesis: XT is stationary
Exogenous: Constant
Bandwidth: 24 (Newey-West using Bartlett kernel)
LM-Stat.
In questo caso, l’output di Eviews non calcola il p-value, quindi dobbiamo confrontare la statistica
ottenuta con il valore critico asintotico tabulato da Eviews, scegliamo sempre come livello di
significatività il 5%. 2.61>0.463, quindi rifiutiamo l’ipotesi nulla di stazionarietà, xt non è
stazionaria ed ha una radice unitaria.
Nel caso di yt, scegliamo sempre l’opzione intercetta:
LM-Stat.
In questo caso 0.868>0.463, la statistica calcolata è superiore rispetto a quella tabulata; quindi
rifiutiamo l’ipotesi nulla, la serie yt non è stazionaria. Ciò è strano dato che siamo sicuri (dato che
l’abbiamo creata noi) che la serie sia stazionaria. Scegliamo l’opzione trend:
122
Null Hypothesis: YT is stationary
Exogenous: Constant, Linear Trend
Bandwidth: 18 (Newey-West using Bartlett kernel)
LM-Stat.
Notate che il trend è significativamente diverso da zero nella regressione ausiliaria ed ora non
rifiutiamo l’ipotesi nulla di stazionarietà, dato che 0.06<0.146.
A volte KPSS e ADF possono essere contraddittori e nel caso in cui abbiamo delle serie storiche
non generate da noi, dobbiamo stare molto attenti a valutare le diverse ipotesi.
123
Nel caso di zt, dobbiamo inserire l’opzione trend:
LM-Stat.
Così non rifiutiamo l’ipotesi nulla, la serie zt è stazionaria. Notate che nella regressione ausiliaria, il
trend è significativamente diverso da zero:
124
Null Hypothesis: ZT is stationary
Exogenous: Constant
Bandwidth: 24 (Newey-West using Bartlett kernel)
LM-Stat.
LM-Stat.
125
'stima di un modello AR stazionario con trend deterministico
equation eq04.ls kt c @trend ar(1)
'diverse stime per il modello MA
equation eq05a.ls ht c ar(1)
equation eq05b.ls ht c ar(1) ar(2)
equation eq05c.ls ht c ar(1) ar(2) ar(3)
equation eq05d.ls ht c ma(1)
Dependent Variable: YT
Method: Least Squares
Sample: 2 1000
Included observations: 999
Dependent Variable: YT
Method: Least Squares
Sample: 2 1000
Included observations: 999
Convergence achieved after 3 iterations
126
R-squared 0.477949 Mean dependent var -0.122068
Adjusted R-squared 0.477425 S.D. dependent var 1.363617
S.E. of regression 0.985749 Akaike info criterion 2.811171
Sum squared resid 968.7865 Schwarz criterion 2.820994
Log likelihood -1402.180 F-statistic 912.7755
Durbin-Watson stat 2.062614 Prob(F-statistic) 0.000000
Considerate la seguente formula, prendete la costante delle prima regressione (la media
condizionata), dividetela per 1 meno il coefficiente legato a y(-1) ed otterrete la media
incondizionata del processo.
-0.038518/(1-0.691576)= -0.124887
Stimiamo xt:
Dependent Variable: XT
Method: Least Squares
Sample: 2 1000
Included observations: 999
Convergence achieved after 5 iterations
Notate che la radice unitaria viene riconosciuta da Eviews ed il processo è indicato come non
stazionario. La media non condizionata è molto diversa rispetto alla media della serie (40 invece di
127
7) perché dividendo la stima della media condizionata per 1-1.001133 si ottiene una stima della
media non condizionata che tende ad infinito
Nel caso di zt, il trend deterministico è significativamente diverso da zero.
Dependent Variable: ZT
Method: Least Squares
Sample: 2 1000
Included observations: 999
In questo ultimo caso sia la componente di trend deterministico che quella AR sono riconosciute
significativamente diverse da zero.
Dependent Variable: KT
Method: Least Squares
Sample: 2 1000
Included observations: 999
Convergence achieved after 3 iterations
128
Inverted AR Roots .57
Dato che come abbiamo visto in precedenza, R2 non è affidabile per scoprire quale sia il modello
autoregressivo più adatto dobbiamo stimare diversi modelli e confrontarli sulla base di SIC, AIC o
le statistiche legate alla capacità previsiva di tale modelli. Consideriamo per esempio il processo ht.
Stimiamolo i modelli AR(1), AR(2) ed AR(3).
Dependent Variable: HT
Method: Least Squares
Sample (adjusted): 3 1000
Included observations: 998 after adjustments
Convergence achieved after 3 iterations
Dependent Variable: HT
Method: Least Squares
Sample (adjusted): 4 1000
Included observations: 997 after adjustments
Convergence achieved after 3 iterations
129
Adjusted R-squared 0.254282 S.D. dependent var 1.180157
S.E. of regression 1.019125 Akaike info criterion 2.878770
Sum squared resid 1032.383 Schwarz criterion 2.893528
Log likelihood -1432.067 F-statistic 170.8125
Durbin-Watson stat 1.893285 Prob(F-statistic) 0.000000
Dependent Variable: HT
Method: Least Squares
Sample (adjusted): 5 1000
Included observations: 996 after adjustments
Convergence achieved after 3 iterations
Ciò che notiamo che in tutte e tre le regressioni i coefficienti sono significativamente diversi da
zero.
Quale modello dobbiamo scegliere?
Per la scelta, non dobbiamo usare R squared, dato che esso è funzione dei coefficienti.
Dobbiamo usare due indicatori AIC e SIC, nel migliore modello essi sono minimizzati, in
questo caso l’AR(3) ha lo Schwarz Info Criterion più basso.
Il modello che noi scegliamo deve essere però capace di modelizzare l’autocorrelazione delle serie,
per cui i residui devono essere non autocorrelati. Dobbiamo cioè osservare il correlogramma dei
residui (tale correlogramma è la prima scelta tra i residual tests dell’equazione), ed accertarci che
tutti i termini di ACF e PACF siano non significativi.
Di seguito vediamo il correlogramma dei residui per i modelli autoregressivi che abbiamo stimato,
come vedere i residui rimangono autocorrelati. Il problema è che ht è un cosiddetto processo
130
Moving Average d’ordine 1 (MA(1)), che corrisponde ad un processo autoregressivo con un
numero infinito di termini.
131
Sarà sufficiente digitare il seguente comando per ottenere in questo caso un modello con residui non
autocorrelati: ls ht c ma(1)
Un altro sistema per confrontare diversi modelli è tramite le previsioni, si possono cioè confrontare
le statistiche riguardanti la bontà delle previsioni, come il RMSE dei diversi modelli.
Nel caso di serie storiche Eviews da due opzioni: previsioni dinamiche e previsioni statiche.
Per Eviews effettuare previsioni dinamiche significa non utilizzare le informazioni presenti nel
campione sul quale effettuiamo le previsioni. Ciò significa che per tali previsioni si utilizza il
modello,le osservazioni ed i parametri stimati nella prima parte del campione, e si sostituiscono le
osservazioni effettive nel periodo di previsione, con le previsioni. Effettuare previsioni statiche
significa per Eviews utilizzare le osservazioni effettive.
Per capire meglio la differenza facciamo l’esempio del modello AR(1) per la serie stazionaria yt.
Stimiamo ls yt c ar(1) sulle prime 900 osservazioni e prevediamo sul restante campione.
Dependent Variable: YT
Method: Least Squares
Sample (adjusted): 2 900
Included observations: 899 after adjustments
Convergence achieved after 3 iterations
smpl 1 900
equation eq01c.ls yt c ar(1)
Qua sopra vediamo i comandi per previsioni dinamiche e statiche (per le quali si usa fit). Di seguito
vediamo che nella finestra Forecast è stata aggiunta l’opzione di scelta Dynamic/Static.
132
3
Forecast: YTF
Actual: YT
2
Forecast sample: 901 1000
Included observations: 100
1
Root Mean Squared Error 1.279938
0 Mean Absolute Error 1.085610
Mean Abs. Percent Error 113.4935
Theil Inequality Coefficient 0.903624
-1 Bias Proportion 0.004710
Variance Proportion 0.934520
-2 Covariance Proportion 0.060770
-3
925 950 975 1000
YTF
133
5
Forecast: YTF
4 Actual: YT
3 Forecast sample: 901 1000
Included observations: 100
2
Root Mean Squared Error 0.953941
1
Mean Absolute Error 0.798041
0 Mean Abs. Percent Error 192.1410
Theil Inequality Coefficient 0.432126
-1 Bias Proportion 0.001337
Variance Proportion 0.173829
-2
Covariance Proportion 0.824834
-3
-4
925 950 975 1000
YTF
134
SECONDA PARTE
Lo scopo di questa seconda parte è quello di analizzare il problema delle regressioni spurie,
considerando serie storiche non stazionarie ed analizzare il caso di cointegrazione tra due serie
storiche.
Ambedue le serie sono non stazionarie, sono serie con radice unitaria, chiamate RANDOM WALK,
nel caso specifico con DRIFT, dato che sia in X che in Y c’è la costante.
XT YT
3200 3200
2800 2800
2400 2400
2000 2000
1600 1600
1200 1200
800 800
400 400
0 0
250 500 750 1000 250 500 750 1000
Testiamo l’ipotesi nulla di radice unitaria con il test ADF, usando per ambedue l’opzione di
costante, non rifiutiamo l’ipotesi nulla:
t-Statistic Prob.*
135
Null Hypothesis: YT has a unit root
Exogenous: Constant
Lag Length: 0 (Automatic based on SIC, MAXLAG=21)
t-Statistic Prob.*
Possiamo concludere che sia X che Y sono serie autocorrelate non stazionarie, presentano radice
unitaria e vengono chiamate integrate di ordine uno [I(1)], dato che se prendiamo la differenza
prima di X e di Y, queste ultime sono stazionarie:
genr dxt=d(xt)
genr dyt=d(yt)
DXT DYT
7 7
6 6
5 5
4 4
3 3
2 2
1 1
0 0
250 500 750 1000 250 500 750 1000
Considerando per esempio solo X, notate che DX non ha più radice unitaria, è stazionaria ed il
correlogramma è simile ad un correlogramma di un white noise:
t-Statistic Prob.*
136
Augmented Dickey-Fuller test statistic -31.37296 0.0000
Test critical values: 1% level -3.436683
5% level -2.864225
10% level -2.568251
Dependent Variable: YT
Method: Least Squares
Sample: 2 1000
Included observations: 999
137
R-squared 0.999779 Mean dependent var 1016.806
Adjusted R-squared 0.999779 S.D. dependent var 583.9298
S.E. of regression 8.676015 Akaike info criterion 7.161002
Sum squared resid 75047.42 Schwarz criterion 7.170825
Log likelihood -3574.920 F-statistic 4519760.
Durbin-Watson stat 0.018281 Prob(F-statistic) 0.000000
Osserviamo l’output della regressione. Notate che sia la costante che il coefficiente di x sono
significativamente diversi da zero. Notate la statistica t per il coefficiente di X, è circa 2126, un
numero molto grande!
Notate Rquadro, è un valore prossimo a 1!
Fino ad ora possiamo essere soddisfatti della nostra regressione, ma attenzione la statistica Durbin-
Watson è circa 0.018, molto bassa ed indica la presenza di autocorrelazione positiva (ricordate se
DW<<2, c’è autocorrelazione positiva, se DW>>2, c’è autocorrelazione negativa).
Regola: se DW<Rquadro, c’è un problema, il problema di regressione spuria, ovvero abbiamo
regredito due variabili X ed Y che non hanno nulla in comune, tranne il fatto di essere non
stazionarie. Quindi quando regredite delle variabili non stazionarie, potete avere questo problema
nelle stime.
Le caratteristiche tipiche della regressione spuria sono:
1) R quadro molto elevati, tendono ad 1;
2) DW molto bassi, convergono a zero e gli errori sono integrati a loro volta di ordine uno;
3) T statistici molto alti;
4) Coefficienti per la variabile indipendente significativi, tendono ad una variabile aleatoria
invece che a zero e sono distribuiti normalmente.
5) Se fate la regressione opposta ls xt c yt, il coefficiente di yt è l’inverso del coefficiente
stimato nella regressione per la variabile indipendente nel caso di ls yt c xt
Dependent Variable: XT
Method: Least Squares
Sample: 2 1000
Included observations: 999
138
Possiamo osservare questi problemi usando un esperimento MonteCarlo.
Esso consiste nel creare 100 volte le nostre serie non stazionarie, salvare i coefficienti di nostro
interesse (beta, t-statistic, R2, DW,…) e controllarne i valori oppure la distribuzione.
genr yt=0
genr xt=0
genr dxt=d(xt)
genr dyt=d(yt)
equation eq01.ls yt c xt
beta1(!k)=@coefs(2)
t_ratio(!k)=@tstats(2)
r2(!k)=@r2
dw(!k)=@dw
equation eq02.ls xt c yt
beta2(!k)=@coefs(2)
next
smpl 1 100
freeze(beta1_distr) beta1.hist
freeze(t_ratio_distr) t_ratio.hist
freeze(r2_distr) r2.hist
freeze(dw_1) dw.hist
show dw
genr betainv=1/beta1
139
12
Series: BETA1
Sample 1 100
10
Observations 100
8 Mean 0.666782
Median 0.668948
6 Maximum 0.696787
Minimum 0.633344
Std. Dev. 0.014235
4 Skewness -0.157771
Kurtosis 2.483608
2
Jarque-Bera 1.525951
Probability 0.466277
0
0.6375 0.6500 0.6625 0.6750 0.6875
20
Series: R2
Sample 1 100
16 Observations 100
Mean 0.999683
12 Median 0.999759
Maximum 0.999947
Minimum 0.998565
8 Std. Dev. 0.000243
Skewness -2.052990
Kurtosis 8.140148
4
Jarque-Bera 180.3341
Probability 0.000000
0
0.9990 0.9995
140
9
Series: T_RATIO
8 Sample 1 100
7 Observations 100
6 Mean 2094.478
Median 2035.458
5 Maximum 4340.018
4 Minimum 832.8751
Std. Dev. 677.6195
3 Skewness 0.594897
Kurtosis 3.392410
2
1 Jarque-Bera 6.539986
Probability 0.038007
0
1000 1500 2000 2500 3000 3500 4000
14
Series: DW
12 Sample 1 100
Observations 100
10
Mean 0.020893
8 Median 0.017986
Maximum 0.073427
Minimum 0.003051
6
Std. Dev. 0.013483
Skewness 1.426286
4
Kurtosis 5.652642
2 Jarque-Bera 63.22364
Probability 0.000000
0
0.025 0.050 0.075
141
1 .6 0
1 .5 6
1 .5 2
1 .4 8
1 .4 4
1 .4 0
10 20 30 40 50 60 70 80 90 100
B E T A IN V B E TA 2
equation eq01s.ls zt c ht
equation eq02s.ls ht c zt
Dependent Variable: ZT
Method: Least Squares
Sample: 2 1000
Included observations: 999
142
Notate che la regressione non è significativa, osserviamo R2, DW, t-statistic, beta ed il beta
della regressione opposta.
2000
-2 0 0 0
-4 0 0 0
-6 0 0 0
-8 0 0 0
-1 0 0 0 0
10 20 30 40 50 60 70 80 90 100
B E TA IN V 2 B E TA 2 S
Dependent Variable: ZT
Method: Least Squares
Sample: 2 1000
Included observations: 999
La regressione non è significativa. R2 tende a zero, la stima del coefficiente di yt tende a zero.
Non si può spiegare una variabile stazionaria con una variabile integrata. Variabili stazionarie
devo essere spiegate da variabili stazionarie.
143
Ora creiamo le seguenti serie:
smpl @all
genr vt=nrnd
genr x1t=0
genr x2t=0
smpl 2 1000
genr x1t=x1t(-1)+et
genr x2t=0.4*x1t(-1)+vt
smpl @all
40
30
20
10
-10
-20
-30
-40
250 500 750 1000
X1T X2T
Regrediamo x2t su x1t, ambedue sono variabili non stazionarie,mentre i residui sono stazionari.
Se possiamo scrivere una combinazione di due variabili o più variabili non stazionarie, che sia
stazionaria, si dice che esista una relazione di cointegrazione tra le due variabili. E’ possibile
testare se due variabili sono cointegrate verificando che i residui della regressione di una
sull’altra siano stazionare. Testiamo tramite il test di cointegrazione di Engle-Granger la
stazionarietà dei residui, dato che ora l’uso del test ADF non è più valide perche i residui si
distribuiscono secondo una nuova distribuzione e quindi non dobbiamo considerare i valori
tabulati da ADF, ma i valori riportati sul libro di testo nella tabella 7.10 a pagina 256:
Il TEST di ENGLE-GRANGER è composto da due stadi:
PRIMO STADIO
equation eq03.ls x2t c x1t
eq03.makeresids res3t
freeze(res3t_gr) res3t.line
freeze(res3t_correl) res3t.correl(16)
144
Dependent Variable: D(RES3T)
Method: Least Squares
Sample (adjusted): 3 1000
Included observations: 998 after adjustments
Al posto di testare se i residui hanno una radice unitaria con ADF, regrediamo la differenza
prima dei residui sui residui ritardati (molto simile all’approccio svolto dalla regressione
ausiliare del ADF). Consideriamo la t-statistic del coefficiente di res3t(-1) e lo confrontiamo con
i valori tabulati nella tabella 7.10, considerando un livello di significatività dello 0.01, la
statistica tabulata è pari a -3. 90; in questo caso -30.68<-3.9, quindi rifiutiamo l’ipotesi nulla di
radice unitaria.
Proviamo ad usare come variabile indipendente la differenza ritardata (nel caso in cui i residui
siano AR(2)):
145
Sum squared resid 1164.164 Schwarz criterion 3.013661
Log likelihood -1491.953 F-statistic 471.2364
Durbin-Watson stat 1.996464 Prob(F-statistic) 0.000000
Stimiamo il modello ECM, considerando il vettore di cointegrazione tra x1t ed x2t, senza i
ritardi delle differenze prime tra le due serie.
146
Possiamo interpretare le stime in questo modo: nel momento in cui ci si trova al di fuori
dell’equilibrio al tempo (t-1), si ha una variazione contraria al tempo t della serie x2t, tale da
riportare in tempi relativamente brevi le due serie in equilibrio ed il coefficiente di
aggiustamento è pari -0.96.
Se avessimo aggiunto le differenze prime dei ritardi, notiamo che non sono significative:
147
R-squared 0.525230 Mean dependent var 0.000597
Adjusted R-squared 0.524753 S.D. dependent var 1.437368
S.E. of regression 0.990895 Akaike info criterion 2.821583
Sum squared resid 978.9265 Schwarz criterion 2.831406
Log likelihood -1407.381 F-statistic 1102.963
Durbin-Watson stat 2.003359 Prob(F-statistic) 0.000000
PROGRAMMA
rndseed 10101010
wfcreate(wf=eserc_5prima) u 1 1000
genr et=nrnd
smpl 2 1000
'processo AR stazionario
genr yt=0.7*yt(-1)+et
148
freeze(correl_zt) zt.correl(16)
freeze(correl_kt) kt.correl(16)
'test adf
freeze(adf_yt) yt.adf
freeze(adf_xt) xt.adf
freeze(adf_zt) zt.adf
freeze(adf_kt) kt.adf
'test kpss
freeze(kpss_yt) yt.uroot(kpss)
freeze(kpss_xt) xt.uroot(kpss)
freeze(kpss_zt) zt.uroot(kpss)
freeze(kpss_kt) kt.uroot(kpss)
rndseed 10101010
wfcreate(wf=eserc_5seconda) u 1 1000
149
freeze(graph_yt) yt.line
freeze(graph_xt) xt.line
'regressione spuria
equation eq01a.ls yt c xt
equation eq01b.ls xt c yt
genr x1t=0
genr x2t=0
smpl 2 1000
genr x1t=x1t(-1)+et
genr x2t=0.4*x1t(-1)+vt
smpl @all
'test di granger
'primo stadio: eseguiamo la regressione e ne salviamo i residui
equation eq03.ls x2t c x1t
eq03.makeresids res3t
freeze(res3t_gr) res3t.line
freeze(res3t_correl) res3t.correl(16)
'secondo stadio: facciamo un test per la radice unitaria sui residui
equation eq04.ls d(res3t) c res3t(-1)
equation eq05.ls d(res3t) c res3t(-1) d(res3t(-1))
150