Descargar y graficar datos del Banco Internacional de Pagos (BIS) con R

5
(1)

En la entrada de hoy les quiero compartir este nuevo paquete de R, se trata de BIS, paquete creado el mes pasado y con el cual se puede acceder a datos del Banco Internacional de Pagos o BIS, por sus siglas en inglés (Bank for International Settlements).

Instalación del paquete de R: BIS

A continuación, instalaré el paquete, el cual puede ser instalado desde Github o CRAN. Para ello basta con las siguientes líneas de código:

library(devtools)

Instalación desde Github: install_github(“expersso/BIS”)

Instalación desde CRAN: install.packages(“BIS”)

Análisis de datasets

Ahora, miramos cuáles son los datasets disponibles:

library("BIS")

datos.bis <- get_datasets()

datos.bis
## # A tibble: 17 x 2
##                                                        name
##                                                       <chr>
##  1                            Locational banking statistics
##  2                          Consolidated banking statistics
##  3                               Debt securities statistics
##  4                              Global liquidity indicators
##  5                       Credit to the non-financial sector
##  6                                       Credit-to-GDP gaps
##  7 Debt service ratios for the private non-financial sector
##  8                         Property prices: selected series
##  9                             Property prices: long series
## 10 US dollar exchange rates (monthly, quarterly and annual)
## 11                         US dollar exchange rates (daily)
## 12                Effective exchange rate indices (monthly)
## 13                  Effective exchange rate indices (daily)
## 14                  Triennial Survey statistics on turnover
## 15                                          Consumer prices
## 16                                   Policy rates (monthly)
## 17                                     Policy rates (daily)
## # ... with 1 more variables: url <chr>

Al ejecutar el código se puede ver que R nos arroja dos columnas, la primera con los nombres y la segunda con la url.

Análisis y descarga de tipos de interés

De los datasets disponibles, descargaré los tipos de interés mensuales de los bancos centrales (Policy rates (monthly), para ello, se utiliza el comando get_bis, el cual accede a la url y descarga los datos:

tipos <- get_bis(datos.bis$url[16], quiet = TRUE)

Inspeccionamos los datos y míralos las primeras observaciones:

head(tipos)
## # A tibble: 6 x 4
##   frequency    reference_area    date obs_value
##       <chr>             <chr>   <chr>     <dbl>
## 1 M:Monthly    CH:Switzerland 1946-01      1.50
## 2 M:Monthly        DK:Denmark 1946-01      3.50
## 3 M:Monthly GB:United Kingdom 1946-01      2.00
## 4 M:Monthly          IN:India 1946-01      3.00
## 5 M:Monthly          JP:Japan 1946-01      3.29
## 6 M:Monthly         SE:Sweden 1946-01      2.50

Como se puede observar, hemos descargado los tipos de interés mensuales de los bancos centrales de Suiza, Dinamarca, Reino Unido, India, Japón y Suecia desde 1946.

Si quiero trabajar únicamente con los tipos de interés del Reino Unido, creo un nuevo dataframe, denominado GB; y para mirar las 5 primeras y últimas observaciones:

GB <- tipos[tipos$reference_area == "GB:United Kingdom",]

head(GB,5)
## # A tibble: 5 x 4
##   frequency    reference_area    date obs_value
##       <chr>             <chr>   <chr>     <dbl>
## 1 M:Monthly GB:United Kingdom 1946-01         2
## 2 M:Monthly GB:United Kingdom 1946-02         2
## 3 M:Monthly GB:United Kingdom 1946-03         2
## 4 M:Monthly GB:United Kingdom 1946-04         2
## 5 M:Monthly GB:United Kingdom 1946-05         2
tail(GB,5)
## # A tibble: 5 x 4
##   frequency    reference_area    date obs_value
##       <chr>             <chr>   <chr>     <dbl>
## 1 M:Monthly GB:United Kingdom 2017-05      0.25
## 2 M:Monthly GB:United Kingdom 2017-06      0.25
## 3 M:Monthly GB:United Kingdom 2017-07      0.25
## 4 M:Monthly GB:United Kingdom 2017-08      0.25
## 5 M:Monthly GB:United Kingdom 2017-09      0.25

Ahora graficamos los tipos de política monetaria del Reino Unido y le añadiremos una línea rojo indicando la media:

library(tidyverse)
library(zoo)

 grafico <- GB %>%
  mutate(date = as.Date(as.yearmon(date)))

ggplot(grafico, aes(date) )+ 
  geom_line( aes( y = obs_value ), colour="darkblue" ) + 
  labs( title = "Tipo de Interes de Referencia")+
  labs(x="Fecha", y="Tipos de interes (%)") +
  geom_hline(yintercept = mean(GB$obs_value), color="darkred")

plot of chunk unnamed-chunk-117

Para graficar todos los tipos por país:

library(tidyverse)
library(zoo)

tipos_plot <- tipos %>%
  mutate(date = as.Date(as.yearmon(date))) %>%
  filter(grepl("^(CH|DK|GB|IN|JP|SE)", reference_area))
ggplot(tipos_plot, aes(date, obs_value, color = reference_area)) +
  geom_hline(yintercept = 0, linetype = "dashed",
             color = "grey70", size = 0.02) +
  geom_line(show.legend = FALSE) +
  facet_wrap(~reference_area) +
  theme_light() +
  theme(panel.grid = element_blank()) +
  labs(x = NULL, y = NULL,
       title = "Tipos de Interes de los Bancos Centrales (% por año)") + 
  theme (plot.title = element_text(face="bold", hjust = 0.5))

Si quieres aprender más casos prácticos de finanzas cuantitativas ve a la página donde hablo de ello y donde podrás encontrar más aplicaciones de R para finanzas.

¿Te ha parecido útil? ¡Puntúa esta entrada!

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 5 / 5. Recuento de votos: 1

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Facebook
Twitter
LinkedIn
Scroll al inicio