Basic & Econometrics - Misspecified model - pitfalls

1 minute read

import pandas as pd
import numpy as np
import statsmodels.api as sm

$y_t = \beta y_{t-1}+u_t$

$u_t = \rho u_{t-1}+v_t$

Suppose we want to estimate $\beta$ by running an OLS regression of $y_t$ on $y_{t-1}$

T = 100
y = np.zeros([T,1])
u = np.zeros([T,1])
beta = .7
rho = .5
u[0] = np.random.normal()
y[0] = u[0]
for t in range(1,T):
    u[t] = rho*u[t-1]+np.random.normal()
    y[t] = beta*y[t-1]+u[t]
np.random.normal()
-0.09498498374286703
model = sm.OLS(y[1:],y[:-1])
model = sm.OLS(y[2:],np.concatenate([y[:-2],y[1:-1]],axis = 1))
res = model.fit()
res.summary()
OLS Regression Results
Dep. Variable: y R-squared (uncentered): 0.764
Model: OLS Adj. R-squared (uncentered): 0.759
Method: Least Squares F-statistic: 155.4
Date: Mon, 25 Jan 2021 Prob (F-statistic): 7.95e-31
Time: 10:13:18 Log-Likelihood: -140.81
No. Observations: 98 AIC: 285.6
Df Residuals: 96 BIC: 290.8
Df Model: 2
Covariance Type: nonrobust
coef std err t P>|t| [0.025 0.975]
x1 -0.2794 0.099 -2.825 0.006 -0.476 -0.083
x2 1.1097 0.099 11.257 0.000 0.914 1.305
Omnibus: 0.819 Durbin-Watson: 2.050
Prob(Omnibus): 0.664 Jarque-Bera (JB): 0.866
Skew: 0.074 Prob(JB): 0.649
Kurtosis: 2.564 Cond. No. 3.67



Notes:
[1] R² is computed without centering (uncentered) since the model does not contain a constant.
[2] Standard Errors assume that the covariance matrix of the errors is correctly specified.

rho = beta-0.2794
-rho*beta = -(beta-0.2794)*beta = 1.1097
0.2794-beta^2 = 1.