Utilizando Plotly para visualizar ações da bolsa de valores
Utilizando Plotly para visualizar ações da bolsa de valores
Já se perguntou como os grandes sites criam os gráficos interativos de ações?
Já se perguntou como os grandes sites criam os gráficos interativos de ações?
Plotly para visualização de gráfico de área
Plotly para visualização de gráfico de área
Plotly é um dos pacotes mais usados para visualização interativa de dados. Conseguimos produzir visuais profissionais com pouco código. Incluem categorias como gráficos básicos, estatísticos, Machine Learning e de finanças.
Plotly é um dos pacotes mais usados para visualização interativa de dados. Conseguimos produzir visuais profissionais com pouco código. Incluem categorias como gráficos básicos, estatísticos, Machine Learning e de finanças.
Nesse exemplo, vamos mostrar a construção de um gráfico de área para acompanharmos cotações de empresas listadas na bolsa de valores.
Nesse exemplo, vamos mostrar a construção de um gráfico de área para acompanharmos cotações de empresas listadas na bolsa de valores.
Para quem estiver utilizando o Google Colab, faça o upgrade do Plotly e em seguida restart o ambiente de execução para evitar o bug que deixa o conteúdo do gráfico em branco.
Para quem estiver utilizando o Google Colab, faça o upgrade do Plotly e em seguida restart o ambiente de execução para evitar o bug que deixa o conteúdo do gráfico em branco.
Depois importamos alguns pacotes que serão utilizados nesse artigo e em outros sobre visualização de ações.
Depois importamos alguns pacotes que serão utilizados nesse artigo e em outros sobre visualização de ações.
Incluímos o pandas para processamento dos dados, o DataReader para carregar os dados de ações, Datetime para trabalhar com datas e por último o plotly e suas dependências.
Incluímos o pandas para processamento dos dados, o DataReader para carregar os dados de ações, Datetime para trabalhar com datas e por último o plotly e suas dependências.
No trecho acima definimos a data de inicio na variável start e a data final (end) como a data de hoje. Escolhi 4 ações que gosto de acompanhar, o web.DataReader é capaz de consultar dados de diversas fontes, escolhermos o Yahoo para cotações.
No trecho acima definimos a data de inicio na variável start e a data final (end) como a data de hoje. Escolhi 4 ações que gosto de acompanhar, o web.DataReader é capaz de consultar dados de diversas fontes, escolhermos o Yahoo para cotações.
Com o código abaixo geramos nosso primeiro gráfico de área com as cotações:
Com o código abaixo geramos nosso primeiro gráfico de área com as cotações:
Através da variável stocks_close.FB passamos diretamente os dados das ações do Facebook.
Para as ações da WEGE, precisaríamos utilizar stocks_close['WEGE3.SA']
Ao observar o gráfico, percebemos que os dados coletados estão com algum problema.
Ao observar o gráfico, percebemos que os dados coletados estão com algum problema.
Explorando os dados, identificamos que algumas datas não ocorreram pregões, geralmente em feriados e a API do Yahoo está enviando NaN (Not a Number) para o dataframe:
Eliminaremos essas linhas com Not a Number através da função dropna, para não alterar o dataframe original, realizamos uma cópai dos dados com o método copy( );
Eliminaremos essas linhas com Not a Number através da função dropna, para não alterar o dataframe original, realizamos uma cópai dos dados com o método copy( );
Na verdade, é normal necessitarmos realizar alguma operação nos dados coletados, dificilmente conseguimos utiliza-los sem nenhum tipo de processamento ou ajuste.
Na verdade, é normal necessitarmos realizar alguma operação nos dados coletados, dificilmente conseguimos utiliza-los sem nenhum tipo de processamento ou ajuste.
Por último, realizamos algumas customizações no gráfico para permitir a realização de zoom e outras filtragens:
Por último, realizamos algumas customizações no gráfico para permitir a realização de zoom e outras filtragens:
O novo gráfico ganha alguns recursos, ao clicar nos botões do lado superior esquerdo você consegue delimitar o intervalo de visualização das cotações:
O novo gráfico ganha alguns recursos, ao clicar nos botões do lado superior esquerdo você consegue delimitar o intervalo de visualização das cotações:
O código do nosso gráfico está disponível no github, em https://github.com/aprendadatascience/projects/blob/master/plotly_financial_area_chart.ipynb
O código do nosso gráfico está disponível no github, em https://github.com/aprendadatascience/projects/blob/master/plotly_financial_area_chart.ipynb
Tente acessá-lo e testá-lo com cotações de outras empresas. As do Brasil precisam de ".SA" após o código da Bovespa.
Tente acessá-lo e testá-lo com cotações de outras empresas. As do Brasil precisam de ".SA" após o código da Bovespa.
Obrigado!
Obrigado!