Crie Relatórios Financeiros de Empresas Listadas na B3
Rapina é um programa que cria relatórios financeiros de empresas listadas na B3, processando arquivos de demonstrações financeiras trimestrais (ITR) e anuais (DFP) do site da CVM e armazenando-os em um banco de dados local (sqlite). As informações são extraídas do balanço patrimonial, fluxo de caixa, DRE (demonstração de resultado) e DVA (demonstração de valor adicionado).
O programa coleta arquivos desde 2010. Como estes arquivos contém os dados do ano corrente e do ano anterior, foi possível também a extração de dados de 2009.
Com base nestes dados, são gerados relatórios das demonstrações financeiras por empresa.
Baixe o executável da página de release e renomeie o executável para rapinav2.exe (no caso do Windows) ou rapinav2 (para o Linux ou macOS).
Antes de se criar um relatório pela primeira vez, é necessário baixar os dados do site da CVM. Para isso, execute o seguinte comando no terminal:
rapinav2 atualizar <--all | --ano <ano>>
Exemplos:
rapinav2 atualizar --all
: baixar e atualizar dados de todos os anos.rapinav2 atualizar --ano 2023
: baixar e atualizar um ano específico.
Para criar uma planilha com os dados financeiros trimestrais de um empresa, execute o seguinte comando:
rapinav2 relatorio [-d <DIRETORIO>] [--crescente|-c]
As empresas serão listadas em ordem alfabética. Basta navegar com as setas, ou use a tecla / para procurar uma empresa.
Exemplos:
rapinav2 relatorio
: cria o relatório no diretório corrente.rapinav2 relatorio -d ./relats
: cria o relatório no diretóriorelats
.rapinav2 relatorio -d ./relats -c
: cria o relatório no diretóriorelats
, com os trimestres listados na ordem crescente.
Os relatório será gravado com o nome da empresa. Exemplos:
3R_PETROLEUM_ÓLEO_E_GÁS_S.A.xlsx
AES_BRASIL_ENERGIA_S.A.xlsx
CIA_SANEAMENTO_DO_PARANA_-_SANEPAR.xlsx
FLEURY_S.A.xlsx
LOCALIZA_RENT_A_CAR_S.A.xlsx
LOJAS_RENNER_S.A.xlsx
RAIA_DROGASIL_S.A.xlsx
Para criar os relatório em uma interface web, execute o comando servidor
:
$ ./rapinav2 servidor
[>] Iniciando servidor em :8080
E acesse a página através do endereço http://localhost:8080, onde é possível criar relatórios das empresas selecionadas e atualizar os dados (do ano corrente e do ano anterior).
Personalize os parâmetros criando o arquivo rapina.yaml
no mesmo diretório do executável (rapinav2
ou rapinav2.exe
) usando os seguintes parâmetros:
Parâmetro | Descrição |
---|---|
dataSrc |
Arquivo onde serão gravados os dados coletados Default: ./.dados |
tempDir |
Diretório onde os arquivos temporários serão armazernados Default: ./.dados |
reportDir |
Diretório onde os relatórios serão salvos Default: ./ |
Exemplo:
dataSrc: "/home/user1/dados/rapinav2.db"
tempDir: "/home/user1/dados"
reportDir: "/home/user1/relatorios"
Para compilar o código fonte, siga estas instruções:
- Instale o Go: https://go.dev/doc/install
- Instale o Git: https://git-scm.com/book/pt-br/v2/Come%C3%A7ando-Instalando-o-Git
- Abra o terminal (ou CMD no Windows) e execute os seguintes comandos:
git clone github.com/dude333/rapinav2
cd rapinav2
go build -o rapinav2 cmd/*
O arquivo rapinav2
, ou rapinav2.exe
no Windows, será criado.
- Relação tickers x CNPJ:
https://sistemaswebb3-listados.b3.com.br/isinPage https://sistemaswebb3-listados.b3.com.br/isinProxy/IsinCall/GetTextDownload/ => obj.geralPt.id => btoa(JSON.stringify(obj.geralPt.id)) https://sistemaswebb3-listados.b3.com.br/isinProxy/IsinCall/GetFileDownload/{id}
Os relatórios tem finalidade apenas informativa e podem conter informações incorretas.