TP3 Comercio Internacional

Implementación empírica del Teorema HOV para el caso de la Economía de Brasil (2014)

Autor/a

Juan Creide


Introducción

The basic insight of the Heckscher-Ohlin (HO) model is that traded commodities are really bundles of factors (land, labor, and capital). The exchange of commodities internationally is therefore indirect factor arbitrange, transferring the services of otherwise immobile factors of production from locations where these factors are abundand to locations where they are scarce1.

Básicamente el teorema HOV dice que el contenido factorial neto del comercio de un país puede calcularse de dos formas distintas (y ambos resultados deben dar lo mismo): un contenido predicho y un contenido medido:

El contenido predicho viene dado por la Ecuación 1:

\[ F^{predicho} = V - s \cdot V^W \tag{1}\]

donde:

  • \(F\) es un vector \(m \times 1\) donde \(m\) es el número de factores, y cuyas entradas corresponden a los contenidos factoriales netos predichos del comercio para el factor \(f\).

  • \(V\) es un vector \(m \times 1\) de las dotaciones de factores del país.

  • \(s\) es un escalar que indica la participación del país en el gasto o consumo mundial. Empíricamente es la participación del país en el PBI global.

  • \(V^W\) es un vector \(m \times 1\) que representa las dotaciones mundiales de cada factor.

Interpretación de \(F\)

Un valor \(F\) positivo indica una exportación neta predicha de los servicios de ese factor. Un valor negativo implica una importación de dicho factor.

Por su parte, el contenido medido es un cálculo a partir de datos del comercio y de la tecnología de un país. Mide la cantidad de servicios factoriales que efectivamente vienen incorporados en las exportaciones e importaciones. De forma precisa viene dado por Ecuación 2

\[ F^{medido} = B \cdot (X-M) \tag{2}\]

donde:

  • \(F\) es el contenido factorial medido del comercio para el factor \(f\).

  • \(B\) es la matriz de requerimientos, es decir, una matriz \(m \times g\) donde \(g\) es el número de industrias y donde cada entrada \(B_{f_i}\) representa la cantidad total (directa e indirecta) del factor \(f\) necesaria para producir una unidad de producto en la industria \(i\).

  • \(X\) es un vector \(g \times 1\) de las exportaciones brutas del país por industria.

  • \(M\) es un vector \(g \times 1\) de las importaciones brutas del país por industria.

  • \((X-M)\) es el comercio neto.

Contenido factorial predicho

Estimación de \(s\)

El PBI mundial de 2014, medido en dólares corrientes, fue de 79.756.517.210.011,00 dólares (79,756 billones de dólares)2. Por su parte, el de Brasil para el mismo periodo fue de 2.456.043.766.063,50 dólares (2,456 billones de dólares corrientes)3. A partir de estos datos podemos estimar \(s\) como:

\[ s = \frac{PBI\text{ de Brasil}}{PBI \text{ mundial}} \]

pbi_mundial <- 79756517210011
pbi_brasil <- 2456043766063.50
s <- pbi_brasil / pbi_mundial

\[ s \approx 3,08 \% \]

Estimación de \(V\) y \(V^W\)

Para medir las dotaciones del factor trabajo, se usará la variable emp (Número de personas empleadas)4, mientras que para medir las dotaciones de capital se va a usar la variable rnna (Stock de capital a PPA corrientes de millones de US$ de 2011), provenientes de la Penn World Table 9.15

library(readxl)
library(dplyr)
pwt <- read_excel("pwt.xlsx", 
    sheet = "Data")

head(pwt)
# A tibble: 6 × 52
  countrycode country currency_unit   year rgdpe rgdpo   pop   emp   avh    hc
  <chr>       <chr>   <chr>          <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 ABW         Aruba   Aruban Guilder  1950    NA    NA    NA    NA    NA    NA
2 ABW         Aruba   Aruban Guilder  1951    NA    NA    NA    NA    NA    NA
3 ABW         Aruba   Aruban Guilder  1952    NA    NA    NA    NA    NA    NA
4 ABW         Aruba   Aruban Guilder  1953    NA    NA    NA    NA    NA    NA
5 ABW         Aruba   Aruban Guilder  1954    NA    NA    NA    NA    NA    NA
6 ABW         Aruba   Aruban Guilder  1955    NA    NA    NA    NA    NA    NA
# ℹ 42 more variables: ccon <dbl>, cda <dbl>, cgdpe <dbl>, cgdpo <dbl>,
#   cn <dbl>, ck <dbl>, ctfp <dbl>, cwtfp <dbl>, rgdpna <dbl>, rconna <dbl>,
#   rdana <dbl>, rnna <dbl>, rkna <dbl>, rtfpna <dbl>, rwtfpna <dbl>,
#   labsh <dbl>, irr <dbl>, delta <dbl>, xr <dbl>, pl_con <dbl>, pl_da <dbl>,
#   pl_gdpo <dbl>, i_cig <chr>, i_xm <chr>, i_xr <chr>, i_outlier <chr>,
#   i_irr <chr>, cor_exp <dbl>, statcap <dbl>, csh_c <dbl>, csh_i <dbl>,
#   csh_g <dbl>, csh_x <dbl>, csh_m <dbl>, csh_r <dbl>, pl_c <dbl>, …
#Estimación de V^W (Mundial)
dotacion_L_mundial <- pwt |>
  filter(year == 2014) |>
  select("emp") |>
  summarise(dotacion_L_mundial = sum(emp, na.rm= TRUE))

dotacion_K_mundial <- pwt |>
  filter(year == 2014) |> select("cn") |> 
  summarise(dotacion_K_mundial = sum(cn, na.rm = TRUE))

# Un dólar de 2011 equivalía a 1,052 dólares de 2014,
# por su parte, un dólar de 2014 equivalía a 2,3544 reales
dotacion_K_mundial <- 1.052 * 2.3544 * dotacion_K_mundial


VW <- c(dotacion_L_mundial, dotacion_K_mundial)
VW <- as.numeric(VW)


#Estimación de V (Brasil)

dotacion_L_brasil <- pwt |>
  filter(year == 2014 & country == "Brazil") |>
  summarise(dotacion_L_brasil = sum(emp, na.rm= TRUE))

dotacion_K_brasil <- pwt |>
  filter(year == 2014 & country == "Brazil") |>
  select("cn") |> summarise(dotacion_K_brasil = sum(cn, na.rm = TRUE))

dotacion_K_brasil <- 1.052 * 2.3544 * dotacion_K_brasil


V <- c(dotacion_L_brasil, dotacion_K_brasil)
V <- as.numeric(V)

\(F\) predicho

round(V - s * VW, digits = 3)
[1]       6.739 2393850.032
Contenido factorial predicho

Se obtuvo:

  1. Un contenido factorial del trabajo predicho de 6,739 (en millones)

  2. Un contenido factorial predicho del capital de 2.393.850

Regla de los signos

El signo del contenido factorial neto predicho viene dado por la comparación entre la dotación doméstica y la participación del país en la dotación mundial:

\[ \text{sign}(F_f) = \text{sign} (V_f - s V_f^W) \]

Como ambos factores tienen signo positivo, la economía brasileña aparece como “más que proporcional” en esos factores respecto a su participación en demanda mundial

Contenido factorial medido

Estimación de \(B\)

La matriz \(B\) se calcula dividiendo la cantidad de cada factor utilizado en una industria por la producción total de esa misma industria. De forma más precisa, se pueden calcular los requerimientos directos de la siguiente manera:

\[ B_{f,i} = \frac{\text{Cantidad del factor } f \text{ usada en la industria } j}{\text{Producción bruta de la industria } j} \]

Como fuente se utilizará la tabla SEA de la base de datos WIOD (World Input-Output Database)6. Específicamente, se usarán las siguientes variables:

  • Para cuantificar la cantidad de factor trabajo se va a utilizar la variable EMPE (Number of employees), medida en miles.

  • Para cuantificar la cantidad de factor capital se usará la variable K (Nominal capital stock), medida en millones de moneda nacional.

  • Y para la producción (el denominador) se utilizará la variable GO (Gross output by industry at current basic prices), también en millones de moneda nacional.

Se van a mapear los productos en los siguientes sectores:

  1. Animales y productos de origen animal.
  2. Combustibles
  3. Madera y sus manufacturas
  4. Manufacturas diversas / Misceláneos
  5. Maquinaria y material eléctrico
  6. Material de transporte
  7. Metales y sus manufacturas
  8. Piedra y vidrio
  9. Plásticos y caucho
  10. Productos alimenticios
  11. Productos de origen vegetal
  12. Productos minerales
  13. Productos químicos
  14. Textiles y prendas de vestir
library(dplyr)
library(readxl)
SEA <- read_excel("Socio_Economic_Accounts.xlsx", 
    sheet = "DATA")


# Se crea una nueva columna llamada "sector" en base
# a las reglas de mapeo:

SEA <- SEA |> mutate(
  sector = case_when(
          description == "Crop and animal production, hunting and related service activities" ~ "Productos de origen vegetal",
      description == "Forestry and logging" ~ "Madera y sus manufacturas",
      description == "Fishing and aquaculture" ~ "Animales y productos de origen animal",
      description == "Mining and quarrying" ~ "Productos minerales",
      description == "Manufacture of food products, beverages and tobacco products" ~ "Productos alimenticios",
      description == "Manufacture of textiles, wearing apparel and leather products" ~ "Textiles y prendas de vestir / Textiles y confecciones",
      description == "Manufacture of wood and of products of wood and cork, except furniture; manufacture of articles of straw and plaiting materials" ~ "Madera y sus manufacturas",
      description == "Manufacture of paper and paper products" ~ "Manufacturas diversas / Misceláneos",
      description == "Manufacture of coke and refined petroleum products" ~ "Combustibles",
      description == "Manufacture of chemicals and chemical products" ~ "Productos químicos",
      description == "Manufacture of basic pharmaceutical products and pharmaceutical preparations" ~ "Productos químicos",
      description == "Manufacture of rubber and plastic products" ~ "Plásticos y caucho",
      description == "Manufacture of other non-metallic mineral products" ~ "Piedra y vidrio",
      description == "Manufacture of basic metals" ~ "Metales y sus manufacturas",
      description == "Manufacture of fabricated metal products, except machinery and equipment" ~ "Metales y sus manufacturas",
      description == "Manufacture of computer, electronic and optical products" ~ "Maquinaria y material eléctrico",
      description == "Manufacture of electrical equipment" ~ "Maquinaria y material eléctrico",
      description == "Manufacture of machinery and equipment n.e.c." ~ "Maquinaria y material eléctrico",
      description == "Manufacture of motor vehicles, trailers and semi-trailers" ~ "Material de transporte",
      description == "Manufacture of other transport equipment" ~ "Material de transporte",
      description == "Manufacture of furniture; other manufacturing" ~ "Manufacturas diversas / Misceláneos",
  )
)


# Se filtran los datos de la variable EMPE de Brasil para el año 2014
# que se guarda en la variable L:
SEA |> filter(country == "BRA" & variable == "EMPE" & !is.na(sector)) |> select(c("2014", "sector")) |> group_by(sector) |> summarise(total = sum(`2014`, na.rm = TRUE)) |> select(total) -> L

# Se hace lo mismo para la variable K:
SEA |> filter(country == "BRA" & variable == "K" & !is.na(sector)) |> select(c("2014", "sector")) |> group_by(sector) |> summarise(total = sum(`2014`, na.rm = TRUE)) |> select(total) -> K

# Idem variable GO:
SEA |> filter(country == "BRA" & variable == "GO" & !is.na(sector)) |> select(c("2014", "sector")) |> group_by(sector) |> summarise(total = sum(`2014`, na.rm = TRUE)) |> select(total) -> produccion

requerimientos_trabajo <- L/produccion
requerimientos_capital <- K/produccion

B <- data.frame("L" = requerimientos_trabajo, "K" = requerimientos_capital)
colnames(B) <- c("L", "K") #nombres de las columnas
B <- t(B) #se traspone para que la dimensión sea adecuada

t(B)
                L         K
 [1,] 0.020266087 1.7958298
 [2,] 0.000128089 0.7372482
 [3,] 0.017503249 2.8912879
 [4,] 0.007554850 1.7394091
 [5,] 0.003154704 0.4333234
 [6,] 0.002373086 1.0161185
 [7,] 0.004085144 1.1561022
 [8,] 0.007635325 0.6939543
 [9,] 0.004749287 0.9208197
[10,] 0.003609810 0.8374546
[11,] 0.022094943 1.5971669
[12,] 0.001031360 5.1656792
[13,] 0.001644009 1.0008436
[14,] 0.017438736 0.9114926
Nota

Como script no se visualiza adecuadamente en el PDF, se provee el código en formato HTML en el siguiente enlace: https://rpubs.com/juan-creide/HOV

Estimación de \(X-M\)

Para que el vector de comercio neto sea consistente con la matriz de requerimientos estimada en el inciso anterior, hay que tener en cuenta el valor del tipo de cambio en el año 2014. En promedio, durante dicho año, un dólar estadounidense equivalía a 2,3544 reales brasileños7.

Los datos de importaciones y exportaciones provienen de WITS (World Integrated Trade Solution)8

# Tipo de Cambio promedio en 2014
tipo_de_cambio <- 2.3544

# Vector de Exportaciones (en miles de US$)
X <- c(
  17451669.80, # 1. Animales y productos de origen animal
  25200772.27, # 2. Combustibles
  9555337.06,  # 3. Madera y sus manufacturas
  2595541.66,  # 4. Manufacturas diversas / Misceláneos
  16486465.56, # 5. Maquinaria y material eléctrico
  14060978.10, # 6. Material de transporte
  14841219.55, # 7. Metales y sus manufacturas
  4814304.87,  # 8. Piedra y vidrio
  5290766.02,  # 9. Plásticos y caucho
  26010251.24, # 10. Productos alimenticios
  37179571.53, # 11. Productos de origen vegetal
  29185784.38, # 12. Productos minerales
  11423446.55, # 13. Productos químicos
  2532681.67   # 14. Textiles y prendas de vestir
)

# Vector de Importaciones (en miles de US$)
M <- c(
  2663369.89,  # 1. Animales y productos de origen animal
  48375564.15, # 2. Combustibles
  2474894.43,  # 3. Madera y sus manufacturas
  9904272.43,  # 4. Manufacturas diversas / Misceláneos
  61097988.89, # 5. Maquinaria y material eléctrico
  24658705.15, # 6. Material de transporte
  14276057.80, # 7. Metales y sus manufacturas
  2536654.40,  # 8. Piedra y vidrio
  13608204.80, # 9. Plásticos y caucho
  3307466.16,  # 10. Productos alimenticios
  6892458.29,  # 11. Productos de origen vegetal
  2485541.03,  # 12. Productos minerales
  39527415.22, # 13. Productos químicos
  7424281.69   # 14. Textiles y prendas de vestir
)

# Comercio Neto en millones de moneda nacional
X <- tipo_de_cambio * X /1000
M <- tipo_de_cambio * M /1000
(X-M)
 [1]   34817.573  -54562.730   16670.194  -17207.676 -105033.371  -24951.289
 [7]    1330.617    5362.500  -19582.578   53451.437   71307.979   62863.053
[13]  -66167.984  -11516.783

\(F\) medido

B %*% (X-M)
        [,1]
L   1946.935
K 363591.053
Contenido factorial medido

Se obtuvo:

  1. Un contenido factorial del trabajo medido de 1.946.935
  2. Un contenido factorial medido del capital de 363.591

Interpretación y conclusiones

Test de signos del modelo HOV para Brasil (2014)

Factor \(F^{medido}\) (signo) \(V-sV^W\) (signo) ¿Coincide?
Trabajo (L) + (1.946.935) + (6.739.000)
Capital (K) + (363.591) + (2.393.850)

El test de signos se cumple para ambos factores: Brasil aparece como exportador neto de servicios de trabajo y capital, en línea con la predicción de HOV.

Los cocientes muestran la magnitud de la discrepancia:

\[ \frac{F_K^{predicho}}{F_K^{medido}} \approx 6,58 \]

y para el factor trabajo:

\[ \frac{F_L^{predicho}}{F_L^{medido}} \approx 3,46 \]En el trabajo se encontró que la dirección del contenido factorial neto coincide entre la predicción teórica y la medida empírica: tanto el \(F^{predicho}\) como el \(f^{medido}\) resultan positivos para capital y trabajo, por lo que Brasil aparece como exportador neto de servicios de ambos factores, lo que confirma la regla de los signos del teorema HOV. Sin embargo, las magnitudes difieren considerablemente.

Ahora bien, estos resultados se insertan en la literatura empírica sobre el modelo HOV. Como señalan Trefler (1995)9 en su artículo sobre el “missing trade” y Davis & Weinstein (2001)10 en su análisis del comercio global de factores, el modelo tiende a predecir correctamente la dirección del comercio factorial (test de signos), pero falla en magnitud. Justamente lo observado en este trabajo: las direcciones coinciden, pero las cantidades difieren en más de un orden de magnitud. La literatura atribuye estas discrepancias a problemas de medición (definición de capital y trabajo, proxies utilizados), ausencia de bienes no comerciables, fricciones comerciales y la falta de incorporación de encadenamientos interindustriales (cuando no se utiliza la matriz de Leontief).

En consecuencia, el caso brasileño refuerza la evidencia previa: el HOV es robusto cualitativamente, pero limitado cuantitativamente. Con todo, la muestra brinda evidencia a favor de la dirección del teorema, pero para evaluar la magnitud sería necesario homogeneizar unidades, incorporar efectos indirectos y usar proxies más adecuados para los servicios de capital y trabajo.

Anexo 1: Tabla de Industria de Productos a Sectores

Industria Sector Mapeado
Crop and animal production, hunting and related service activities Productos de origen vegetal
Forestry and logging Madera y sus manufacturas
Manufacture of wood and of products of wood and cork… Madera y sus manufacturas
Fishing and aquaculture Animales y productos de origen animal
Mining and quarrying Productos minerales
Manufacture of food products, beverages and tobacco products Productos alimenticios
Manufacture of textiles, wearing apparel and leather products Textiles y prendas de vestir / Textiles y confecciones
Manufacture of paper and paper products Manufacturas diversas / Misceláneos
Manufacture of furniture; other manufacturing Manufacturas diversas / Misceláneos
Manufacture of coke and refined petroleum products Combustibles
Manufacture of chemicals and chemical products Productos químicos
Manufacture of basic pharmaceutical products… Productos químicos
Manufacture of rubber and plastic products Plásticos y caucho
Manufacture of other non-metallic mineral products Piedra y vidrio
Manufacture of basic metals Metales y sus manufacturas
Manufacture of fabricated metal products… Metales y sus manufacturas
Manufacture of computer, electronic and optical products Maquinaria y material eléctrico
Manufacture of electrical equipment Maquinaria y material eléctrico
Manufacture of machinery and equipment n.e.c. Maquinaria y material eléctrico
Manufacture of motor vehicles, trailers and semi-trailers Material de transporte
Manufacture of other transport equipment Material de transporte

Anexo 2: Reproducibilidad

El presente trabajo puede ser reproducido íntegramente a partir de los siguientes insumos:

Datos

  • Penn World Table 9.1 (dotaciones de factores, variables emp y rnna).

  • WITS (datos de comercio de Brasil, 2014).

  • WIOD – Socio-Economic Accounts (requerimientos factoriales y output por industria).

Código

Scripts en R en forma de chunks de código a lo largo del informe, sumando un total de 6 chunks, los cuales incluyen:

  1. Una estimación de \(s\), \(V\), y \(V^W\).
  2. La construcción de la matriz \(B\).
  3. Cálculo del comercio neto \((X-M)\).
  4. Estimación de \(F^{predicho}\) y del \(F^{medido}\).
Nota

Todo el código fue probado en R versión 4.5.1, con los paquetes dplyr y readxl. La reproducibilidad está asegurada si se usan las mismas fuentes y agregaciones de sectores.

Notas

  1. Leamer, E. (1995). THE HECKSCHER-OHLIN MODEL IN THEORY AND PRACTICE. https://ies.princeton.edu/pdf/S77.pdf↩︎

  2. https://wits.worldbank.org/CountryProfile/en/Country/WLD/StartYear/2012/EndYear/2016/Indicator/NY-GDP-MKTP-CD↩︎

  3. https://wits.worldbank.org/CountryProfile/en/Country/BRA/StartYear/2012/EndYear/2016/Indicator/NY-GDP-MKTP-CD↩︎

  4. Una medida más precisa sería el número de personas empleadas \(\times\) promedio de horas anuales trabajadas (emp \(\times\) avh). Sin embargo, esta última variable presenta muchos datos faltantes, por lo que se usará sólo la primera.↩︎

  5. https://www.rug.nl/ggdc/productivity/pwt/pwt-releases/pwt9.1↩︎

  6. Universidad de Groninga. (6 de julio de 2020). WIOD 2016 Release. University of Groningen. https://www.rug.nl/ggdc/valuechain/wiod/wiod-2016-release↩︎

  7. https://www.exchange-rates.org/es/historial/usd-brl-2014↩︎

  8. https://wits.worldbank.org/CountryProfile/en/Country/BRA/Year/2014/TradeFlow/EXPIMP/Partner/WLD/Product/All-Groups↩︎

  9. Trefler, D. (2002). The Case of the Missing Trade and Other Mysteries: Reply. American Economic Review, 92(1), 405–410. https://doi.org/10.1257/000282802760015829↩︎

  10. Davis, D. R., & Weinstein, D. E. (2001). An Account of Global Factor Trade. American Economic Review, 91(5), 1423–1453. https://doi.org/10.1257/aer.91.5.1423↩︎