Pset02, variables instrumentales Universidad Nacional de Ingenieria Nacional DACIP Econometria Intermedia

Integrantes

Katherine Pozo

UNI

Edwin Bolaños

UNI

Cristhiana Chamorro

UNI

Elias Chabarria

UNI

Emerson Lopez

UNI

Instrucciones

Documento con instrucciones para estimar por variables instrumentales (2SLS / IV) el efecto de las remesas sobre el crecimiento del PIB de Nicaragua. Puede utilizar IV.R.

Fuentes de datos

  • Instrumento (Z): Tasa de desempleo en el sector construcción de FRED. Descargar en frecuencia trimestral o convertir si es mensual.

  • Remesas (R): Remesas familiares (ingresos) desde SECMCA. Preferible: remesas trimestrales en niveles nominales y/o como porcentaje del PIB.

  • PIB (Y): PIB trimestral real de Nicaragua desde SECMCA. Construir crecimiento trimestal del PIB: \(\bigtriangleup log(PIB_{t})\). Nota: dado que el SECMCA no dispone que unidad de medida esta el PIB, utilizo la base de datos del BCN

Periodo y Frecuencia: Trabajar en frecuencia trimestral con la información disponible. Si el instrumento es mensual, agregue a trimestre (\(Z_t=\) media trimestal (\(Z_m\))).

Covariables recomendadas (X)

Incluir controles que reduzcan la correlación de Zt con otros canales que afectan \(gY_t\):

  • Crecimiento del PIB US – para controlar shocks globales de demanda.

  • Tipo de cambio real (o nivel del tipo de cambio)

  • Tasa de interés internacional.

Cualquier otra que consideren relevante.

Instrucciones

Estime el efecto de las remesas utilizando OLS y IV - TSLS. Compare. ¿Cuál es preferible?

¿Qué supuestos son relevantes para preferir IV - TSLS? ¿Se cumplen? Argumente.

¿Por qué cree que se sugiere utilizar la tasa de desempleo sectorial de US y no la tasa de desempleo de todos los sectores (tasa de desempleo)?

Libreria

#Descargar libreria

if (!require("pacman")) install.packages("pacman")
Cargando paquete requerido: pacman
pacman::p_load( haven, dplyr, xtable, stargazer, MatchIt, margins, ggplot2, tidyr, estimatr, fixest, AER, texreg, broom, sandwich, Synth, plm, car, broom, readxl, lmtest)

Importar base de datos

Puede descargar la base de datos utilizada en Github(README) mas el script quarto

data_ <- read_excel("data_pset02.xlsx",
                    sheet= "Hoja1")
head(data_)
# A tibble: 6 × 7
  fecha               itcer   ipc remesa desemplo_sect_usa   pib pib_usa
  <dttm>              <dbl> <dbl>  <dbl>             <dbl> <dbl>   <dbl>
1 2006-01-01 00:00:00 100.   92.6  10.6               8.7  1642.  13599.
2 2006-04-01 00:00:00  99.4  95.4  10.3               6.37 1634.  13753.
3 2006-07-01 00:00:00 100.   96.4  10.6               5.87 1680.  13870.
4 2006-10-01 00:00:00  99.9  97.6   9.86              5.8  1792.  14040.
5 2007-01-01 00:00:00  98.8 101.    9.31              9.47 1774.  14216.
6 2007-04-01 00:00:00  97.6 104.   10.1               7.13 1801.  14402.

Transformar a tasas de crecimiento e implementar dummys

data_clean <- data_ %>%
  mutate(fecha = as.Date(fecha)) %>%
  
  mutate(
    d_remesa    = c(NA, diff(remesa)),
    d_pib       = c(NA, diff(pib)),
    d_desempleo = c(NA, diff(desemplo_sect_usa)),
    d_ipc       = c(NA, diff(ipc)),
    d_itcer     = c(NA, diff(itcer)),
    d_pib_usa   = c(NA, diff(pib_usa)), 
    
    dummy_2008  = if_else(fecha >= "2008-04-01" & fecha <= "2009-04-01", 1, 0),
    dummy_2018  = if_else(fecha >= "2018-04-01" & fecha <= "2019-01-01", 1, 0),
    dummy_covid = if_else(fecha >= "2020-01-01" & fecha <= "2021-10-01", 1, 0)
  ) %>%
  
  na.omit()

data_final <- data_clean %>% 
  select(fecha, d_itcer, d_remesa, d_ipc,
                     d_desempleo, d_pib, d_pib_usa, dummy_2008,
                     dummy_2018, dummy_covid)
head(data_final)
# A tibble: 6 × 10
  fecha      d_itcer d_remesa d_ipc d_desempleo  d_pib d_pib_usa dummy_2008
  <date>       <dbl>    <dbl> <dbl>       <dbl>  <dbl>     <dbl>      <dbl>
1 2006-04-01  -0.948   -0.259 2.84      -2.33    -8.18      154.          0
2 2006-07-01   1.02     0.319 0.990     -0.5     46.0       117.          0
3 2006-10-01  -0.497   -0.766 1.24      -0.0700 112.        169.          0
4 2007-01-01  -1.12    -0.559 3.32       3.67   -18.1       176.          0
5 2007-04-01  -1.16     0.752 3.06      -2.34    26.5       186.          0
6 2007-07-01  -0.375    0.216 2.40      -1.46    45.9       162.          0
# ℹ 2 more variables: dummy_2018 <dbl>, dummy_covid <dbl>

Modelos OLS y IV - TSLS

#controles
controles <- "d_pib_usa + d_itcer + d_ipc + dummy_2008 + dummy_2018 + dummy_covid"

#modelo OLS (Minimos Cuadrados Ordinarios)
f_ols <- as.formula(paste("d_pib ~ d_remesa +", controles))
model_ols <- lm(f_ols, data = data_final)

#modelo IV (Variables Instrumentales / 2SLS)
#instrumentamos 'd_remesa' usando 'd_desempleo'
#sintaxis ivreg: Y ~ Endogena + Controles | Instrumento + Controles
f_iv <- as.formula(paste("d_pib ~ d_remesa +", controles, 
                         "| d_desempleo +", controles))

model_iv <- ivreg(f_iv, data = data_final)

Resultados

=================================================================
summary(model_ols)

Call:
lm(formula = f_ols, data = data_final)

Residuals:
     Min       1Q   Median       3Q      Max 
-240.643  -81.159   -8.735   75.300  288.211 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)   37.55564   33.18002   1.132   0.2616    
d_remesa      -3.72479    6.27683  -0.593   0.5548    
d_pib_usa      0.19745    0.04718   4.185 8.26e-05 ***
d_itcer      -14.61096   22.35457  -0.654   0.5155    
d_ipc         -8.15822   11.56635  -0.705   0.4830    
dummy_2008   -15.60544   57.05873  -0.273   0.7853    
dummy_2018  -138.69231   62.40999  -2.222   0.0295 *  
dummy_covid  -18.59234   45.23614  -0.411   0.6823    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 117.5 on 69 degrees of freedom
Multiple R-squared:  0.2967,    Adjusted R-squared:  0.2254 
F-statistic: 4.159 on 7 and 69 DF,  p-value: 0.0007186
#test de Breusch-Godfrey (Autocorrelación)
# H0: no hay autocorrelación (Lo que queremos)
# H1: hay autocorrelación 
bgtest(model_ols)

    Breusch-Godfrey test for serial correlation of order up to 1

data:  model_ols
LM test = 4.563, df = 1, p-value = 0.03267
#test de Breusch-Pagan (Heterocedasticidad)
#H0: homocedasticidad 
#H1: heterocedasticidad 
bptest(model_ols)

    studentized Breusch-Pagan test

data:  model_ols
BP = 9.1942, df = 7, p-value = 0.239
coeftest(model_ols, vcov = vcovHAC(model_ols))

t test of coefficients:

               Estimate  Std. Error t value  Pr(>|t|)    
(Intercept)   37.555640   27.531593  1.3641    0.1770    
d_remesa      -3.724785    3.552928 -1.0484    0.2981    
d_pib_usa      0.197454    0.027373  7.2133 5.454e-10 ***
d_itcer      -14.610959   15.814967 -0.9239    0.3588    
d_ipc         -8.158216   10.222528 -0.7981    0.4276    
dummy_2008   -15.605440   36.727476 -0.4249    0.6722    
dummy_2018  -138.692307   66.288788 -2.0922    0.0401 *  
dummy_covid  -18.592342   38.710924 -0.4803    0.6325    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
=================================================================
summary(model_iv, diagnostics = TRUE)

Call:
ivreg(formula = f_iv, data = data_final)

Residuals:
    Min      1Q  Median      3Q     Max 
-324.43 -124.65  -14.77   95.63 1185.45 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)
(Intercept)  154.4286   460.5342   0.335    0.738
d_remesa      70.8505   291.7351   0.243    0.809
d_pib_usa      0.3232     0.4982   0.649    0.519
d_itcer      -79.1258   255.2010  -0.310    0.757
d_ipc        -56.4246   189.7592  -0.297    0.767
dummy_2008   -43.4239   147.4526  -0.294    0.769
dummy_2018  -165.2151   150.3777  -1.099    0.276
dummy_covid  -31.3457    93.3711  -0.336    0.738

Diagnostic tests:
                 df1 df2 statistic p-value
Weak instruments   1  69     0.097   0.756
Wu-Hausman         1  68     0.197   0.659
Sargan             0  NA        NA      NA

Residual standard error: 205.1 on 69 degrees of freedom
Multiple R-Squared: -1.142, Adjusted R-squared: -1.359 
Wald test: 1.357 on 7 and 69 DF,  p-value: 0.2374 
coeftest(model_iv, vcov = vcovHAC(model_iv))

t test of coefficients:

              Estimate Std. Error t value Pr(>|t|)
(Intercept)  154.42861  346.13606  0.4462   0.6569
d_remesa      70.85049  193.72423  0.3657   0.7157
d_pib_usa      0.32315    0.37728  0.8565   0.3947
d_itcer      -79.12585  191.46398 -0.4133   0.6807
d_ipc        -56.42456  139.13133 -0.4055   0.6863
dummy_2008   -43.42394  116.53642 -0.3726   0.7106
dummy_2018  -165.21509  116.60747 -1.4168   0.1610
dummy_covid  -31.34566   65.23460 -0.4805   0.6324
=================================================================

Grafico comparativo

#comparacion DOG :'V
#extraer los datos de los modelos 
tidy_ols <- tidy(model_ols, conf.int = TRUE) %>% mutate(Modelo = "OLS")
tidy_iv  <- tidy(model_iv, conf.int = TRUE)  %>% mutate(Modelo = "IV (2SLS)")

#unir y filtrar
resultados <- bind_rows(tidy_ols, tidy_iv) %>%
  filter(term != "(Intercept)")

#grafico
ggplot(resultados, aes(x = estimate, y = term, color = Modelo)) +
  geom_point(position = position_dodge(width = 0.5), size = 3) +
  geom_errorbar(aes(xmin = conf.low, xmax = conf.high), 
                 position = position_dodge(width = 0.5), 
                 width = 0.2) + 
  geom_vline(xintercept = 0, linetype = "dashed", color = "gray50") +
  labs(title = "Comparación de Coeficientes: OLS vs IV",
       subtitle = "Nótese la inmensa incertidumbre (barra larga) en el modelo IV",
       x = "Estimación del Efecto",
       y = "Variables") +
  theme_minimal() +
  theme(legend.position = "bottom")

Comparacion entre OLS vs IV

En el modelo IV se observa ningun resultado significativo con alto errores (insertidumbre), weak instrumen obtuvo un resultado f = 0.097 que es menor a 10 instrumento muy debil, mide la endogeneidad donde H0: OLS es consistente que indica que el OLS es preferido, el caso de sargan dado que solo tenemos un instrumento no se puede calcular. En cambio el OLS tiene valores significativos (las preubas de homocedasticidad y autocorrelacion indican presencia de estas por lo que se corrigio con errores robustos) causales en la variacion del PIB de estados unidos, es decir por cada unidad que crece el PIB de EE.UU, el PIB de Nicaragua aumenta entre 0.16 y 0.22 millones de dolares ,la crisis del 2018 tuvo un impacto significativo de 7 a 205 millones de dolares.

Que supuestos son relevantes para preferir IV-TSLS? Se cumplen? Argumente.

Para saber si era correcto usar el método IV–TSLS en el modelo, se revisan dos cosas importantes: si el instrumento realmente sirve para explicar la variable endógena, y si de verdad existe endogeneidad que haga que OLS sea un método incorrecto. Al revisar los resultados, se puede ver claramente que estas condiciones no se cumplen.

Primero, la prueba de instrumentos débiles mostró que el instrumento prácticamente no tiene relación con la variable que se supone debe explicar. El estadístico F fue de 0.097, lo cual es extremadamente bajo y confirma que el instrumento no es útil. Cuando un instrumento es tan débil, el método TSLS deja de ser confiable e incluso puede producir resultados peores que los de OLS. Por eso, este primer supuesto ya falla.

Segundo, se revisó si existía endogeneidad mediante la prueba de Wu–Hausman. Esta prueba indicó que OLS sí es consistente, ya que la p es 0.659. Eso significa que no hay evidencia de que la variable sospechosa esté relacionada con el error del modelo. En otras palabras, aunque el instrumento fuera fuerte (que no lo es), no habría razón para usar IV–TSLS porque el modelo no presenta endogeneidad.

Además, como el modelo está exactamente identificado, no se puede hacer la prueba de Sargan para verificar la exogeneidad del instrumento. Sin embargo, esto no afecta la conclusión, porque el instrumento ya falló en lo más básico: no es relevante y no mejora el modelo.

¿Por qué cree que se sugiere utilizar la tasa de desempleo sectorial de US y no la tasa de desempleo de todos los sectores (tasa de desempleo)?

Uso el desempleo del sector construcción privada en EE.UU. como instrumento porque este sector emplea a una gran parte de los migrantes que envían remesas a Nicaragua. Esto hace que el instrumento sea relevante (afecta las remesas), y a la vez exógeno, ya que la economía nicaragüense no se ve afectada directamente por las condiciones laborales en ese sector específico de EE.UU., sino solo a través de las remesas.