Poupança, Investimento e Balanço de Pagamentos

No Comentário de Conjuntura da semana passada, eu falei sobre a baixa taxa de poupança brasileira e a relação disso com o juro de equilíbrio da economia. Hoje, quero continuar no tema da poupança, mas relacionando a mesma à taxa de investimento e ao balanço de pagamentos. Relações importantes que ensino no nosso Curso de Teoria Macroeconômica. Para começar, devemos carregar alguns pacotes do R.


library(tidyverse)
library(sidrar)
library(scales)
library(png)
library(grid)
library(zoo)
library(rbcb)
library(gridExtra)

Na sequência, eu pego os dados de poupança, Formação Bruta de Capital Fixo (FBCF) e PIB do SIDRA/IBGE.


## Pegar dados de Poupança vs. Investimento
tab1 = get_sidra(api='/t/2072/n1/all/v/933,940/p/all')
pib = tab1$Valor[tab1$`Variável (Código)`==933]
poupanca = tab1$Valor[tab1$`Variável (Código)`==940]
fbcf = get_sidra(api='/t/1846/n1/all/v/all/p/all/c11255/93406/d/v585%200')$Valor

A seguir, coloco as séries no mesmo tibble, já acumuladas em 4 trimestres e normalizadas pelo PIB.


dates_1 = seq(as.Date('1996-01-01'), as.Date('2019-09-01'), by='3 month')
dates_2 = seq(as.Date('2000-01-01'), as.Date('2019-09-01'), by='3 month')

df1 = tibble(dates=dates_1, fbcf=fbcf)
df2 = tibble(dates=dates_2, pib=pib, poupanca=poupanca)

data = inner_join(df1, df2, by='dates') %>%
mutate(tx_poupanca = (poupanca+lag(poupanca,1)+lag(poupanca,2)+
lag(poupanca,3))/(pib+lag(pib,1)+lag(pib,2)+lag(pib,3))*100) %>%
mutate(tx_investimento = (fbcf+lag(fbcf,1)+lag(fbcf,2)+
lag(fbcf,3))/(pib+lag(pib,1)+lag(pib,2)+lag(pib,3))*100) %>%
transform(dates = as.yearqtr(dates))

O gráfico a seguir ilustra o comportamento da taxa de poupança e da taxa de investimento (em bases trimestres) ao longo do tempo.

Como se vê, há um gap entre poupança e investimento. Aquela é menor do esta. Macroeconomicamente, essa diferença é fechada através de um déficit na conta corrente do balanço de pagamentos que é igual à poupança externa positiva. O saldo das transações correntes pode ser baixado através do sistema de séries temporais do Banco Central como abaixo.


stct = get_series(23081, start_date='2000-01-01')

Também pegamos, pelo lado da conta financeira do balanço de pagamentos, o investimento estrangeiro direto no país e o investimento em carteira.


iedt = get_series(23265, start_date='2000-01-01')
ict = get_series(23285, start_date='2000-01-01')

A seguir tratamos e juntamos os dados, de modo a torná-los comparáveis com o gráfico que fizemos acima.


data2 = inner_join(stct, iedt, by='date') %>%
inner_join(ict, by='date') %>%
mutate(tx_stc = -(stct$`23081`+lag(stct$`23081`,1)+lag(stct$`23081`,2)+
lag(stct$`23081`,3))/(pib+lag(pib,1)+lag(pib,2)+lag(pib,3))*100) %>%
mutate(tx_ied = (iedt$`23265`+lag(iedt$`23265`,1)+lag(iedt$`23265`,2)+
lag(iedt$`23265`,3))/(pib+lag(pib,1)+lag(pib,2)+lag(pib,3))*100) %>%
mutate(tx_ic = (ict$`23285`+lag(ict$`23285`,1)+lag(ict$`23285`,2)+
lag(ict$`23285`,3))/(pib+lag(pib,1)+lag(pib,2)+lag(pib,3))*100) %>%
transform(date = as.yearqtr(date)) %>%
as_tibble()

Na sequência, plotamos um gráfico como abaixo.

O Brasil é historicamente um usuário de poupança externa. Na série antiga do balanço de pagamentos do Banco Central, apenas em 12 anos tivemos saldo em conta corrente positiva. Isso significa que esse déficit em conta corrente deve ser financiado. A conta financeira do balanço de pagamento é a responsável por esse financiamento.

Grosso modo, podemos financiar o déficit em conta corrente com investimento direto ou com investimento em carteira. Aquele, teoricamente, é alocado no aumento da capacidade produtiva do país, enquanto esse seria apenas alocado em ativos financeiros, como ações e títulos públicos. Como é possível ver no gráfico, o país mantém um IED acima do déficit em conta corrente, o que é suficiente, portanto, para financiá-lo integralmente. Não obstante a queda de juros e a fuga recente dos estrangeiros do mercado de capitais, há ainda também saldo positivo no investimento em carteira.

Isso posto, aquela diferença entre poupança e investimento domésticas está sendo financiada, basicamente, via IED, o que é salutar para a economia brasileira. Aumentar o fluxo de IED ao longo do tempo, obviamente, vai depender da continuação da agenda de reformas, melhorando, por exemplo, o marco regulatório da infraestrutura.

O déficit em conta corrente, portanto, pode continuar existindo, desde que o país não o financie com hot money, o capital volátil que vem aqui apenas para arbitrar juros, por exemplo. Para isso, é preciso que o país dê continuidade à melhoria do ambiente de negócios. Por todos os lados que se olha, você verá a necessidade da agenda de reformas. Parece que só bicho grilo, político populista e economista heterodoxo não conseguem enxergar isso... 🙂

___________


(*) O script completo do Comentário estará disponível logo mais no Clube do Código.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

O que é e como funcionam Sistemas Multi-Agentes

Sistemas multi-agentes (MAS) representam uma nova forma de estruturar aplicações de inteligência artificial, especialmente úteis para lidar com problemas complexos e distribuídos. Em vez de depender de um único agente generalista, esses sistemas são compostos por múltiplos agentes especializados que colaboram, competem ou se coordenam para executar tarefas específicas. Neste post, explicamos o que são os MAS, seus principais componentes (como LLMs, ferramentas e processos) e as arquiteturas mais comuns.

O que é um Vector Database e como criar um com LangChain

Nesta postagem, mostramos como construir um pipeline simples de RAG (Retrieval-Augmented Generation) usando o LangChain, o modelo Gemini 2.0 Flash e o Vector Database Chroma. Utilizamos como exemplo o Relatório de Inflação de junho de 2025 do Banco Central do Brasil. O fluxo envolve o download e leitura do PDF, divisão do texto com RecursiveCharacterTextSplitter, geração de embeddings com Gemini, armazenamento vetorial com Chroma e busca semântica para responder perguntas com base no conteúdo do relatório. É uma aplicação prática e didática para economistas que desejam integrar IA ao seu fluxo de análise.

Automatizando a Construção de Códigos em Python com LangGraph

Neste post, mostramos como construir um agente de código em Python utilizando LangGraph, LangChain e Gemini. A proposta é construir um protótipo para automatizar o ciclo completo de geração, execução e correção de código com o uso de LLMs, organizando o processo em um grafo de estados.

Boletim AM

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

Boletim AM

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

como podemos ajudar?

Preencha os seus dados abaixo e fale conosco no WhatsApp

Boletim AM

Preencha o formulário abaixo para receber nossos boletins semanais diretamente em seu e-mail.