COPOM Watch: Análise Textual Automatizada com o Shiny

Dia de decisão da taxa de juros Selic é dia de muita expectativa. Além do valor numérico dos juros, o comunicado textual da decisão do COPOM pode apresentar conteúdo informacional relevante para estratégias de investimentos. Como diria o provérbio, “o diabo mora nos detalhes” e as entrelinhas dos comunicados da autoridade monetária costumam revelar sinalizações mais importantes do que a decisão de juros em si.

Neste espaço já exploramos a análise de sentimentos, a modelagem de tópicos e a previsão com dados textuais no contexto de comunicação de Bancos Centrais. Apesar de serem aplicações interessantes de text mining, geralmente requerem procedimentos que podem ser onerosos ou complexos em excesso.

Hoje apresentaremos uma solução simples de análise textual dos comunicados do COPOM. A ideia é construir um aplicativo Shiny que permita comparar diferenças entre dois textos, destacando as mudanças. Como os comunicados são padronizados, com essa ferramenta é possível rapidamente avaliar mudanças de posicionamento e condução da política monetária.

Acesse o aplicativo Shiny: https://analisemacro.shinyapps.io/copomwatch_py/

O que é Shiny?

Shiny é uma ferramenta para desenvolvimento de dashboards e aplicativos web interativos, como o exemplo acima, implementada em R e Python. Com ele é possível analisar dados de maneira interativa sem precisar escrever uma linha de HTML, CSS ou JavaScript.

Em termos simples, o Shiny é composto por dois componentes:

  • Interface do usuário: é a parte visual que está aos olhos do usuário, ou seja, layout, botões, campos, gráficos, tabelas, cores e outros.
  • Lógica do servidor: é a parte de código que é executada para a dashboard ser interativa, ou seja, é o código executado quando o usuário clica em um botão e um gráfico se atualiza, por exemplo.

A união destes dois componentes forma uma dashboard ou aplicativo web interativo. Para saber mais sobre Shiny e conferir mais exemplos, dê uma olhada no curso de Produção de Dashboards da Análise Macro.

App Shiny de Análise Textual do COPOM

Agora vamos entender como construir o aplicativo Shiny do exemplo acima para analisar os comunicados do COPOM.

Para organizar o código deste projeto estamos utilizando a seguinte estrutura de arquivos:

.
├── app.py
├── comunicado256.txt
└── comunicado257.txt

Onde o primeiro arquivo armazena os códigos em Shiny e os demais arquivos de texto armazenam os últimos comunicados do COPOM para exemplificar a aplicação.

Interface do Usuário

Começamos definindo o primeiro componente do aplicativo Shiny: a interface visual.

Utilizamos o tipo de página “navbar” para criar um layout de páginas de navegação e definimos na interface dois painéis: o painel da barra lateral com campos de entrada textual e o painel principal com visualização textual (resultado da comparação).

Lógica do Servidor

Prosseguimos definindo o segundo componente do aplicativo Shiny: o código de servidor.

Aqui definimos um retorno textual da aplicação para ser exibido no painel principal. Esse código é executado toda vez que os campos de entrada textual mudarem. A função txt_highlighter() faz todo o trabalho de comparar os dois textos e gerar a visualização com destaques.

Resultado final

Unindo a interface visual com a lógica do servidor chegamos na aplicação Shiny, que pode ser visualizada localmente com o comando abaixo.

Por fim, podemos usar o serviço Shinyapps.io para fazer o deploy da aplicação para a nuvem, gerando um link de compartilhamento que facilita o uso da aplicação por usuários externos: https://analisemacro.shinyapps.io/copomwatch_py/Para entender mais sobre deploy confira o curso de Produção de Dashboards da Análise Macro.

Conclusão

Tomar decisões rápidas com novas informações no mercado, especialmente em dia de COPOM, pode ser decisivo para estratégias bem sucedidas. Nesse artigo mostramos como analisar o texto da decisão de juros básico da economia, a Selic, usando a ferramenta Shiny.

Quer aprender mais?

  •  Cadastre-se gratuitamente aqui no Boletim AM e receba toda terça-feira pela manhã nossa newsletter com um compilado dos nossos exercícios com exemplos reais de análise de dados envolvendo as áreas de Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas;
  •  Quer ter acesso aos códigos, vídeos e scripts de R/Python desse exercício? Vire membro do Clube AM aqui e tenha acesso à nossa Comunidade de Análise de Dados;
  •  Quer aprender a programar em R ou Python com Cursos Aplicados e diretos ao ponto em Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas? Veja nossos Cursos aqui.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Criando operações SQL com IA Generativa no R com querychat

No universo da análise de dados, a velocidade para obter respostas é um diferencial competitivo. Frequentemente, uma simples pergunta de negócio — “Qual foi nosso produto mais vendido no último trimestre na região Nordeste?” — inicia um processo que envolve abrir o RStudio, escrever código dplyr ou SQL, executar e, finalmente, obter a resposta. E se pudéssemos simplesmente perguntar isso aos nossos dados em português, diretamente no nosso dashboard Shiny?

Dashboard Financeiro com IA e Shiny Python: Análise de Dados Abertos da CVM

Este artigo apresenta um tutorial completo sobre como construir uma ferramenta de análise financeira de ponta. Utilizando Shiny for Python, demonstramos a automação da coleta de dados das Demonstrações Financeiras Padronizadas (DFP) da CVM e o tratamento dessas informações com Pandas. O ponto alto do projeto é a integração da IA Generativa do Google Gemini, que atua como um assistente de análise, interpretando os dados filtrados pelo usuário e fornecendo insights contábeis e financeiros em tempo real. O resultado é um dashboard dinâmico que democratiza a análise de dados complexos e acelera a tomada de decisão.

Econometria, ML ou IA para previsão da PMS?

Prever a Pesquisa Mensal de Serviços (PMS/IBGE) é um desafio por natureza: trata-se de uma série mensal, sujeita a volatilidade e choques que vão de fatores sazonais a mudanças estruturais no setor. Para enfrentar esse problema, realizamos um exercício de comparação entre três abordagens de modelagem: econometria tradicional (ARIMA), machine learning (XGBoost) e inteligência artificial (TimeGPT).

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.