No post de hoje, iremos começar uma série de postagens sobre o funcionamento e construção do processo de coleta, análise e visualização de indicadores construídos por meio de demonstrativos contábeis utilizando a linguagem R. Ao longo das postagens, iremos inserir aos poucos todo o processo em um sistema com a finalidade de criar um Dashboard que automatizará o processo de coleta e análise por meio do Github Actions. Hoje, focaremos nos fundamentos do processo, nas fontes utilizadas e na construção do código para a coleta utilizando uma empresa como exemplo para a análise.
Para acompanhar a sequência de postagens sobre o assunto, bem como todo o nosso conteúdo, não deixe de se inscrever gratuitamente aqui no boletim AM e receber todo o nosso conteúdo no seu e-mail.
Como automatizar uma análise?
Através de um linguagem de programação é possível criar métodos que permitem automatizar processos, e o mais interessante é a possibilidade de utilização dentro de um sistema como um Dashboard.
Como criaremos esse dashboard automatizado?
Iremos construir por partes o nosso Dashboard:
- Aprender a como utilizar as fontes do dados;
- Construir um código que permita coletar os dados;
- A partir da coleta, construir análises e gráficos;
- Criar um ambiente que permita que o código criado esteja em um Dashboard;
- Inserir o Dashboard em um ambiente de automatização de coleta e análise com a ajuda do Github Actions.
O que iremos analisar?
Antes de começar a construir nosso código, iremos compreender melhor o que iremos construir. A partir da compreensão, utilizaremos um simples exemplo para que possamos dar os primeiros passos, como se fosse um protótipo do Dashboard.
Indicadores contábeis
A utilização de indicadores construídos por meio das demonstrações financeiras das empresas auxiliam no processo de decisão de investimentos. Tais indicadores são conhecidos como o fundamentos da empresa e representam parte importante da analise fundamentalista.
A partir desses indicadores é possível comparar empresas do mesmo setor e até mesmo avaliar o ativo, no caso a ação de forma a saber se ela está descontada, isto é, com um preço em vigência abaixo de seu preço "real", gerando uma oportunidade de investimentos.
Portanto, analisar esses indicadores de forma recorrente é extremamente importante para aqueles que desejam realizar investimentos em ações na bolsa de valores, entretanto, muitos possuem dificuldades em não somente buscar esses dados, mas também, desconhecem forma de automatizar o processo.
Vamos nessa aula aprender a como realizar a importação dos demonstrativos das empresas listadas na B3 de forma automatizada com o R. Também criaremos uma simples analise com os indicadores importados.
Demonstrações Financeiras Padronizadas
Antes de buscar os dados, devemos entender a sua fonte. Os demonstrativos das empresas listadas na B3 são reunidos no que é conhecido como Demonstrações Financeiras Padronizadas, um documento de encaminhamento periódico que as empresas realizam para a CVM.
As demonstrações financeiras devem ser enviadas e elaboradas de acordo com as regras contábeis das instruções da CVM.
Entre os demonstrativos enviados de acordo com a DFP, temos:
- Balanço Patrimonial Ativo (BPA)
- Balanço Patrimonial Passivo (BPP)
- Demonstração de Fluxo de Caixa - Método Direto (DFC-MD)
- Demonstração de Fluxo de Caixa - Método Indireto (DFC-MI)
- Demonstração das Mutações do Patrimônio Líquido (DMPL)
- Demonstração de Resultado Abrangente (DRA)
- Demonstração de Resultado (DRE)
- Demonstração de Valor Adicionado (DVA)
Dados da CVM - Site
As informações sobre a DFP podem ser acessadas através do site de Portal de dados da CVM, bem como o histórico de dados desde 2011.
https://dados.cvm.gov.br/dataset/cia_aberta-doc-dfp
Para acessar o histórico, basta clicar em Histórico desde 2010 (incluindo arquivos não sujeitos à política de atualização), que redirecionará para uma página contendo o download dos arquivos zipados por ano.
Certamente são arquivos que possuem um peso considerável, bem como há dentro desses arquivos zipado diversos outros arquivos que podem tornar nosso trabalho difícil.
Para facilitar a importação, podemos utilizar o pacote {GetDFPData2} criado por Marcelo S. Perlin com o intuito de tornar mais fácil a coleta dos dados da DFP.
Pacote GetDFPData2
O pacote GetDFPData2 importa os dados de acordo com as informações configuradas nos argumentos da função get_dfp_data. Vamos entender a função:
O primeiro argumento, companies_cvm_codes é o identificador da empresa que queremos importar os dados. Esse código é estabelecido pela CVM e podemos encontrar a informação tanto através do site do orgão, quanto através da função `search_company` do pacote.
Em first_year e last_year escolhemos o periodo da coleta dos dados.
Em type_docs escolhemos quais demonstrativos desejamos importar: Balanço Patrimonial - Ativos (BPA), Passivos (BPP) e Demonstração de Resultado de Exercícios (DRE). Para mais informações ver a documentação do pacote.
Em type_format escolhemos qual o tipo, se é consolidado (con) ou indiviual (ind).
Em clean_data escolhemos se desejamos utilizar a função de limpeza de dados do pacote ou que seja retornado os dados brutos.
use_memoise permite utilizar o memoise caching
E cache_folder escolhe uma pasta local para salvar os dados importados de forma a tornar o uso mais rápido (são muitos dados importados, portanto, há uma demora na obtenção).
Analisando os dados da Suzano
Vamos para a prática agora. Utilizaremos como exemplo a empresa Suzano. Passaremos pela parte de Coleta, em seguida, tratamos os dados e por fim realizamos a análise de três indicadores: LL, ROE e Margem Líquida. Portanto, necessitamos de apenas dois demonstrativos, BPP e DRE.