3 votos

Elasticidad de sustitución por regresión: Resultados sesgados (simulación)

Tengo el siguiente problema de simulación:

Los consumidores, cuya utilidad conozco, van a comprar dos bienes. Sin embargo, los precios difieren cada vez que visitan una tienda. Por lo tanto, estos consumidores siempre compran de acuerdo con sus restricciones presupuestarias y funciones de utilidad actuales. Esto me da datos sobre las cantidades compradas y los precios correspondientes .

Pocos supuestos:

  • La utilidad viene dada por la CES.
  • La utilidad por consumidor es estable a lo largo del tiempo.
  • Ni complementos perfectos ni sustitutos perfectos.
  • Los coeficientes de elasticidad de sustitución difieren según los consumidores.

Lo que quiero averiguar a partir de estos datos es la coeficiente de elasticidad de sustitución . He intentado simular para 1000 iteraciones, regresión en consecuencia, pero los resultados son erróneos / sesgada.

Mi enfoque:

El problema es el siguiente:

$$ \max_{\boldsymbol{x}} U_{i}(\boldsymbol{x}) = \left( \alpha_1 x_1^{\rho_{i}} + \alpha_2 x_2^{\rho_{i}} \right)^{\frac{1}{\rho_{i}}} \qquad s.t. \qquad P_1 x_1 + P_2 x_2 \leq M $$

Donde esperamos que el $\rho_i$ diferir para cada consumidor.

Sé cómo calcular la elasticidad de sustitución:

$$\sigma_{ij} = \frac{\frac{\partial (x_j/x_i)}{x_j/x_i}}{\frac{\partial MRS_{ij}}{MRS_{ij}}}$$

Dónde $MRS_{ij} = MU_i/MU_j$ .

Entonces, conozco la principal condición de optimización del Lagrangiano:

$$\frac{MU_i}{MU_j} = \frac{P_i}{P_j}$$

Por lo tanto, puedo enchufar esto en la elasticidad de sustitución, obteniendo:

$$ \sigma_{ij} = \frac{\frac{\partial (x_j/x_i)}{x_j/x_i}}{\frac{\partial P_i/P_j}{P_i/P_j}} $$

Esto se puede reescribir en términos logarítmicos y de regresión como:

$$\ln \left( \frac{x_j}{x_i} \right) = \sigma_{ij} \ln \left( \frac{P_i}{P_j} \right) + \epsilon$$

Conozco la solución analítica para este problema de optimización (véase el código más abajo), por lo que puedo calcular la cantidad óptima comprada para cada consumidor. Simulo los precios, suponiendo que ambos consumidores van a la tienda cada día (durante el día, los precios son los mismos). A continuación, los consumidores realizan su elección... Observo estas elecciones y aplico la ecuación de regresión anterior. Sin embargo, los resultados son extraños...

Esperaba que el $\hat{\sigma_{i,j}}$ estar cerca de $1/(1-mean(\rho))$ Sin embargo, en realidad, cuanto mayor sea la diferencia entre $\rho_1$ y $\rho_2$ mayor y más positivo es el sesgo. Es esencial añadir que da resultados precisos, cuando ambos parámetros $\rho_1 = \rho_2$ .

Ahora la pregunta es: ¿Por qué están sesgados esos resultados? ¿Por qué el sesgo es positivo cuanto mayor es la diferencia entre ambas elasticidades reales? ¿Por qué no obtengo un valor medio de la elasticidad de sustitución? ¿Y cómo estimarla correctamente?

El código en R utilizado para la simulación:

CES_2x_analythic = function(a1, a2, rho, P1, P2, M) {
  sc_factor = ((a2/a1)*(P1/P2))^(1/(rho-1))

  x1 = M/(P1+P2*(1/sc_factor))
  x2 = M/(P1*sc_factor + P2)

  return(c(x1, x2))
}

multicust_2goods = function(a1 = 1, a2 = 2, rho,
                            M = 100, n_iter = 1000) {

  n_cust = length(rho)

  P1 = runif(n_iter, 1, 4)
  P1 = P1[rep(1:n_iter, rep(n_cust, n_iter))]

  P2 = runif(n_iter, 1, 4)
  P2 = P2[rep(1:n_iter, rep(n_cust, n_iter))]

  rho = rho[rep(1:n_cust, n_iter)]
  mean_rho = mean(rho)
  mean_eos = 1/(1-mean_rho)
  print(mean_eos)

  vys = matrix(NA, nrow = n_iter*n_cust, ncol = 2)
  vys_teor = matrix(NA, nrow = n_iter*n_cust, ncol = 2)

  for (i in 1:n_iter) {

    vys[i,] = CES_2x_analythic(a1 = a1, a2 = a2, rho = rho[i],
                               P1 = P1[i], P2 = P2[i], M = M)

    vys_teor[i,] = CES_2x_analythic(a1 = a1, a2 = a2, rho = mean_rho,
                               P1 = P1[i], P2 = P2[i], M = M)

  }

  ln_goods = log(vys[,2]/vys[,1])
  ln_prices = log(P1/P2)

  OLS = lm(ln_goods ~ ln_prices -1)

  ln_g = log(vys_teor[,2]/vys_teor[,1])
  ln_p = log(P1/P2)

  OLS_teor = lm(ln_g ~ ln_p -1)

  return(rbind(coef(OLS), coef(OLS_teor)) )

}

multicust_2goods(rho = c(-0.5,+0.5), n_iter = 1000)

¡Muchas gracias!

1voto

John Puntos 51

Respondo a mi pregunta porque he encontrado la solución.

La cosa es: He partido de una premisa equivocada y, por tanto, he llegado a una conclusión errónea. Debido a esto editaré un poco la pregunta después de un tiempo.

El problema es esencialmente el de "Promedio sobre argumentos de funciones no lineales" . Declaré que esperaba que el resultado fuera cercano al $1/(1- mean(\boldsymbol\rho))$ . Sin embargo, esta expectativa es errónea y he aquí por qué:

La función de la elasticidad de sustitución $\sigma_{i,j}$ en función de $\rho$ es la siguiente:

$$\sigma_{i,j} = \frac{1}{1-\rho} $$

Lo que podría mostrarse en el siguiente gráfico:

Elasticity of substitution on rho

Si tenemos coeficientes $\rho_1$ y $\rho_2$ podemos trazarlos en un gráfico (puntos negros), mientras que sabemos qué elasticidad de sustitución correspondería a cada uno de ellos (línea verde y puntos negros sobre ella). Luego, podemos hacer una media de ambos puntos... PERO, aquí podemos ver, que elasticidad de sustitución correspondiente a la media de $\rho$ parámetros (punto violeta) estaría siempre por debajo de el valor de elasticidad media de sustitución (punto naranja).

Esto también explica por qué el (pseudo)parcialidad Pensé ver en simulación ¡siempre sería positivo!

Cuando utilizo el enfoque correcto, podemos ver que en realidad no hay ningún sesgo...

histogram for Elasticity of substitution

Entonces, ¿qué debe hacer el $\hat{\sigma_{i,j}}$ sea igual a esto:

$$\hat{\sigma_{i,j}} = mean \left( \frac{1}{1-\rho_i} \right) $$

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X