British Airways Delayed and Cancelled Flights

If your BA flight gets delayed or cancelled, depending on the conditions you may be entitled to compensation of up to 600€ (or £530)

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




Coletando e visualizando dados do mercado financeiro utilizando Python

Para essa análise, foram escolhidas as ações de 5 empresas e o índice BOVA 11

Ilustração por SeizSafe.

O mercado financeiro é um grande campo de atuação da Ciência de Dados, sendo possível ser realizada a previsão do preço de ações, clusterização de empresas similares, análise de sentimentos de textos, entre outros trabalhos utilizando algoritmos supervisionados e não supervisionados. Área em que tenho um grande interesse enquanto estudante de Data Science, nesse post ensinarei como coletar os dados das ações utilizando Python e Jupyter Notebook.

Nessa primeira etapa, importaremos as bibliotecas python bastante utilizadas na análise de dados. O pandas, para a manipulação; numpy, para cálculos matemáticos; matplotlib, seaborn e plotly para a visualização; e, por fim, o datareader, para trazer os dados das ações da web.

Nosso objetivo agora é coletar os dados das ações de algumas empresas. Para isso, utilizaremos o datareader, já importado anteriormente, e também o Yahoo! Finanças como nossa fonte web.

Precisamos definir então ações de quais empresas desejamos importar, colocando seus nomes em uma lista. Esses nomes podem ser encontrados no Yahoo! Finanças, se atentando pois uma mesma empresa pode ter suas ações comercializadas em mercados de vários países, e aqui analisaremos a bolsa de valores brasileira, a B3. Nesse ponto, optei pelas ações da Gol, CVC, WEGE, Magalu, TOTV e o índice da BOVA11.

Definidas as ações que queremos coletar, criamos um dataframe vazio e um laço de repetição for que vai percorrer cada uma das ações dessa lista, coletá-las do Yahoo! Finanças e armazená-las no dataframe.

Repare que dentro da função do datareader, passamos o nome da ação, a fonte, a data de início e, fora dos parênteses, frisamos se tratar de dados do fechamento diário da bolsa. Vamos visualizar como ficou nosso dataset.

Para facilitar a utilização desses dados, podemos renomear as colunas, fazendo com que fiquem mais intuitivo para quem está lendo.

Com os dados coletados, uma forma mais interessante de visualizá-los é utilizando gráficos. Para os dados de ações, é possível fazer vários tipos de análises, mas aqui focaremos nas séries temporais para visualizar como as ações se comportam ao longo do tempo.

Para isso, é necessário transformar a coluna “Date” para o tipo data. Após a conversão, plotaremos um gráfico de linhas utilizando o próprio plot do pandas.

Com o gráfico plotado, o que visualizamos é a flutuação do preço das ações das empresas, estando claro que as ações da BOVA e da WEGE são as que possuem um maior valor.

Mas para um investidor, o mais interessante não é visualizar qual ação é a mais cara, e sim qual traz mais retorno. Para isso, fazemos uma normalização dos dados, dividindo cada um dos valores pelo valor inicial, e assim vemos o crescimento delas ao longo do tempo.

Ao plotarmos novamente o gráfico, agora com os dados em uma mesma escala poderemos visualizar o crescimento no período.

Se compararmos os dois gráficos antes e depois da normalização, chegaremos à conclusão de que as ações da BOVA e WEGE são as mais caras, mas as ações do MGLU são disparadas as que proporcionaram maior retorno para o investidor no período analisado.

Embora sejam eficientes para uma análise rápida, os gráficos utilizados até aqui são estáticos, o que impede que ao passar o mouse, o usuário descubra qual o valor da ação que ele apresenta. Uma biblioteca que proporciona uma visualização de dados em gráficos dinâmicos, é o plotly, muito utilizado em dados financeiros.

Como já importamos a biblioteca do plotly na primeira etapa da nossa análise, basta chamá-lo passando os parâmetros que podem ser encontrados na documentação da biblioteca.

Agora ao passar o mouse, é possível descobrir o valor ao qual aquela ação se refere. No canto superior direito do gráfico existem outras opções a serem exploradas, como zoom e comparação paralela de valores.

Muito legal, né?

Add a comment

Related posts:

Creating Templates with Mustache

Mustache is nothing but a web template system. It is a “logic-less template engine” for creating dynamic content. Logic-less because it doesn’t support conditional statements like “if-else” and…

10 Proven Benefits Of Marketing Automation On Business

What oxygen is to living organisms, is what customers are to any business. Considering the present day scenario, we use technology for almost every action we take. The advent of technology has taken…