Finanças Quantitativas: Como coletar dados de Criptomoedas no R

As criptomoedas tem tomado grande espaço dentro do mercado financeiro, tanto como forma de investimento, quanto em discussões sobre sua usabilidade como moeda. Apesar de todas essas questões, é um fato que as criptomoedas inovaram na forma de transacionar moedas, utilizando a tecnologia de blockchain e de criptografia. Vamos explicar neste post como podemos coletar seus preços no R.

As criptomoedas, mais conhecidas como moedas digitais, são ativos descentralizados, ou seja, não possuem o controle de nenhuma autoridade monetária. Em sua grande maioria, como não há emissão de novas moedas por algum órgão, possuem oferta limitada, sendo seu preço medido substancialmente pela demanda.

Além do advento de diferente tipos de moedas digitais, a consolidação e também a aceitação de sua tecnologia pela população mundial, sua demanda tem aumentado substancialmente na última década, elevando os preços de diversas moedas digitais. Iremos visualizar essa mudança ao longo do tempo utilizando a linguagem R.

A primeira forma de realizar a coleta dos preços diários das criptomoedas é através do pacote {quantmod}, utilizando como fonte o Yahoo Finance. Os tickers das criptomoedas podem ser encontradas dentro do site do Yahoo Finance.

Aqui utilizaremos como exemplo o Bitcoin (BTC-USD), Ethereum (ETH-USD) e Dogecoin (DOGE-USD).

library(quantmod)
library(tidyverse)


[code lang="r"]
tickers <- c("BTC-USD", "ETH-USD", "DOGE-USD")

getSymbols(Symbols = tickers, # Os tickers dos ativos a serem coletados
           src = "yahoo", # A fonte da coleta dos dados
           auto.assign = TRUE, # Permitir que faça a auto atribuição
           warnings = FALSE
           )

A função getSymbols() permite que realizemos a coleta de dados direto do Yahoo Finance. É feito também uma auto atribuição dos dados coletados a objetos com o nomes dos tickers na forma OHLCVA (Open, High, Low, Close, Volume e Adjusted).

Podemos por fim realizar a visualização dos dados coletados. O próprio pacote fornece meios simplificados para gerar os gráficos.

chartSeries(`BTC-USD`)

Podemos também mudar as cores dos gráficos.

chartSeries(`ETH-USD`,
            theme = chartTheme('white',
                               up.col='blue',
                               dn.col='red')
            )

chartSeries(`DOGE-USD`,
            theme = chartTheme('white',
                               up.col='blue',
                               dn.col='red'),
            subset = "2021") # Filtra o período de tempo

Outro pacote que vale a menção é o {coinmarketcapr}, que nos dá informações além dos preços das criptomoedas, porém, com um limite de uso e de informações que podem ser coletadas através do plano de básico da API. Portanto, não iremos fazer sua avaliação aqui, somente deixando para quem queira se aprofundar neste campo.

________________________
(*) Para entender mais sobre Mercado Financeiro e aprender como realizar a coleta, tratamento e visualização de dados financeiros, confira nosso curso de R para o Mercado Financeiro.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

A gramática dos gráficos: como deixar de criar gráficos no Excel e usar o plotnine no Python

A etapa de visualização de dados refere-se a uma parte fundamental da análise de dados, pois permite não somente compreender os dados que estamos analisando, mas como também é uma ferramenta útil para explanar os resultados encontrados. Mas qual a forma mais fácil de construir um gráfico, como podemos melhorar a produtividade nesta tarefa? É onde podemos aplicar a gramática dos gráficos e construir com a biblioteca plotnine no Python.

O que são APIs e como utilizá-las no Python?

Utilizar APIs para coletar dados online pode acelerar e automatizar significativamente o processo de análise de dados. Diversas bases de dados hoje em dia possuem APIs para livre utilização, como Banco Central, Portal de Dados Abertos, IBGE e outras. Neste artigo, explicamos intuitivamente o que são APIs, como funcionam e mostramos um exemplo em Python de utilização.

Como fazer web scraping no Python? Um tutorial para largar o Excel

Programar robôs para coletar informações online que não estão estruturadas ou disponíveis facilmente parece algo futurista, mas é uma vantagem competitiva de quem utiliza Python para analisar dados e automatizar processos. Neste artigo, apresentamos o que é a técnica web scraping, suas vantagens/desvantagens e como aplicar ela com o Python em um exemplo prático, do início ao fim.

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.