Tag

balança de pagamentos no r Archives - Análise Macro

Análise de Dados de Setor Externo no R

By | Indicadores

Introdução

Na análise de conjuntura econômica a investigação do setor externo do Brasil é uma importante forma de conferir a dinâmica do país em relação ao resto do mundo. Os indicadores produzidos pelo setor externo merecem atenção pelo fato de contribuírem com informações importantes também para a economia doméstica. De forma que seja facilitado a análise desses indicadores, no post de hoje ensinamos como realizar a coleta, tratamento e visualização com o R.

Como exemplos, utilizaremos três indicadores do setor externo que exprimem informações importantes para a macroeconomia dos país e os possíveis caminhos que o Brasil está e pode seguir: Déficit em transações correntes, reservas internacionais e investimento direto no país em relação ao PIB.

Para coletar estes indicadores, importaremos os dados direto do Banco Central, utilizando o pacote {GetBCBData}, conforme os códigos de cada série que se encontram no Sistema Gerenciador de Séries Temporais do Banco Central. Com os códigos em mãos, podemos coletar os dados com a função gbcbd_get_series e realizar o tratamento necessário para visualizar os dados.


library(GetBCBData)
library(tidyverse)
library(ggrepel)
library(scales)

## Parâmetros e códigos para coleta de dados
parametros <- dplyr::lst(
# Balanço de Pagamentos
bpm6 = c(
# Transações correntes - mensal - saldo - US$ (milhões)
"Transações correntes" = 22701,

# Reservas internacionais - Total - mensal - US$ (milhões)
"Reservas internacionais" = 3546,

# Investimento Direto no País acumulado em 12 meses em relação ao PIB - mensal - %
"Investimento Direto no País (12m - % PIB)" = 23080
)
)

 

</pre>
### Coleta de dados

# Balanço de Pagamentos (contas e indicadores)
raw_bpm6 <- GetBCBData::gbcbd_get_series(
id = parametros$bpm6,
first.date = Sys.Date() - 5 * 365,
use.memoise = FALSE
)

# Balanço de Pagamentos (contas e indicadores)
bpm6 <- raw_bpm6 %>%
dplyr::select(
"date" = ref.date,
"variable" = series.name,
value
) %>%
dplyr::as_tibble() %>%
pivot_wider(names_from = variable, values_from = value)
<pre>

 

Déficit em Transações Correntes

</pre>
# Transações Correntes

bpm6 %>%
ggplot(aes(
x = date,
y = -`Transações correntes`/ 1000))+
geom_line(size = 1, color = "#282f6b")+
geom_hline(yintercept = 0, linetype = "dashed")+
labs(x = "",
y = "US$ Bilhões",
title = "Déficit em Transações Correntes",
subtitle = "Saldo Mensal",
caption = "Fonte: analisemacro.com.br com dados do BCB.")+
ggplot2::theme(
plot.title = ggplot2::element_text(size = 14, face = "bold", hjust = 0, vjust = 2),
plot.subtitle = ggplot2::element_text(size = 12, face = "italic", hjust = 0),
plot.caption = ggplot2::element_text(size = 10, hjust = 1),
panel.background = ggplot2::element_rect(fill = "white", colour = "white"),
axis.line.x.bottom = ggplot2::element_line(colour = "black"),
axis.line.y.left = ggplot2::element_line(colour = "black"),
legend.position = "top",
legend.direction = "horizontal",
plot.margin = ggplot2::margin(5, 25, 5, 5),
panel.spacing = ggplot2::unit(2, units = "lines"),
strip.background = ggplot2::element_rect(fill = "transparent", colour = NA),
strip.text = ggplot2::element_text(face = "bold")
)
<pre>

Reservas Internacionais

</pre>
# Reservas Internacionais

bpm6 %>%
ggplot(aes(
x = date,
y = `Reservas internacionais`/ 1000))+
geom_line(size = 1, color = "#b22200")+
labs(x = "",
y = "US$ Bilhões",
title = "Reservas Internacionais",
subtitle = "Estoque mensal",
caption = "Fonte: analisemacro.com.br com dados do BCB.")+
ggplot2::theme(
plot.title = ggplot2::element_text(size = 14, face = "bold", hjust = 0, vjust = 2),
plot.subtitle = ggplot2::element_text(size = 12, face = "italic", hjust = 0),
plot.caption = ggplot2::element_text(size = 10, hjust = 1),
panel.background = ggplot2::element_rect(fill = "white", colour = "white"),
axis.line.x.bottom = ggplot2::element_line(colour = "black"),
axis.line.y.left = ggplot2::element_line(colour = "black"),
legend.position = "top",
legend.direction = "horizontal",
plot.margin = ggplot2::margin(5, 25, 5, 5),
panel.spacing = ggplot2::unit(2, units = "lines"),
strip.background = ggplot2::element_rect(fill = "transparent", colour = NA),
strip.text = ggplot2::element_text(face = "bold")
)
<pre>

Investimento Direto no país

</pre>
# Investimento Direto no país

bpm6 %>%
ggplot(aes(
x = date,
y = `Investimento Direto no País (12m - % PIB)`))+
geom_line(size = 1, color = "#eace3f")+
labs(x = "",
y = "",
title = "Investimento Direto no País",
subtitle = "Acumulado em 12 meses (% PIB)",
caption = "Fonte: analisemacro.com.br com dados do BCB.")+
ggplot2::theme(
plot.title = ggplot2::element_text(size = 14, face = "bold", hjust = 0, vjust = 2),
plot.subtitle = ggplot2::element_text(size = 12, face = "italic", hjust = 0),
plot.caption = ggplot2::element_text(size = 10, hjust = 1),
panel.background = ggplot2::element_rect(fill = "white", colour = "white"),
axis.line.x.bottom = ggplot2::element_line(colour = "black"),
axis.line.y.left = ggplot2::element_line(colour = "black"),
legend.position = "top",
legend.direction = "horizontal",
plot.margin = ggplot2::margin(5, 25, 5, 5),
panel.spacing = ggplot2::unit(2, units = "lines"),
strip.background = ggplot2::element_rect(fill = "transparent", colour = NA),
strip.text = ggplot2::element_text(face = "bold")
)

 

Quer aprender a criar códigos para análises de conjuntura?

Confira nosso curso de Análise de Conjuntura no R, no qual ensinamos a realizar uma análise completa da conjuntura do país realizando a coleta, tratamento e visualização de forma totalmente reprodutível.

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais
e conteúdos exclusivos sobre Análise de Dados!

Assinar Gratuitamente