Primeiros Passos com o vectorbt

O que é o vectorbt?

VectorBT é uma biblioteca Python de código aberto para análise quantitativa e backtesting. O intuito da biblioteca é auxiliar na construção de trading algorítmico e na realização de backtesting de estratégias de investimento. Neste artigo realizaremos uma breve introdução da biblioteca.

O vectorbt apresenta-se como uma ótima ferramentas para traders e analistas quantitativos, que desejam criar estratégias de investimento e verificar, através do backstesting, a performance dos indicadores, regras e algoritmos utilizados.

De acordo com a definição no site da biblioteca, o vectorbt define-se como uma diferencial de outras bibliotecas por operar inteiramente em objetos pandas e NumPy, sendo acelerado pelo Numba para analisar qualquer dado com velocidade e escala, permitindo testar milhares de estratégias em questão de segundos.

Além disso, integra também o Plotly e Jupyter Widgets, entregando a possibilidade de construção de gráficos complexos e painéis semelhantes ao Tableau.

Quais os features do vectorbt?

Com o vectorbt, podemos:
  • Testar estratégias em apenas algumas linhas de código Python.
  • Desfrutar do melhor de dois mundos: o ecossistema do Python e a rapidez do C.
  • Manter total controle sobre a execução e seus dados (ao contrário de serviços baseados na web, como o TradingView).
  • Otimizar a estratégia de negociação em relação a muitos parâmetros, ativos e períodos de uma só vez.
  • Descobrir padrões ocultos nos mercados financeiros.
  • Analisar séries temporais e criar novas características para modelos de aprendizado de máquina.
  • Visualizar o desempenho da estratégia usando gráficos interativos e painéis (tanto no Jupyter quanto no navegador).
  • Obter e processar dados periodicamente, enviar notificações pelo Telegram e muito mais.

Exemplo básico

Para obter o código e o tutorial deste exercício faça parte do Clube AM e receba toda semana os códigos em R/Python, vídeos, tutoriais e suporte completo para dúvidas.

Mostramos abaixo como criar uma estratégia de trading usando o vectorbt. Com o vectorbt podemos:
  •  Coletar os dados
  •  Criar regras conforme indicadores
  •  Obter o resultado de ganhos da estratégia
  •  Criar gráficos e tabelas úteis para a avaliação da estratégia
Iniciamos com uma estratégia simples com o RSI (Relative Strength Index) a partir dos dados do preço de fechamento da ação PETR4 no período de jan/2019 até dez/2021. Os dados são utilizados em periodicidade diária.
Abaixo apresentamos o gráfico (que é interativo dentro do Notebook) do backtesting da estratégia utilizada.

Criando indicadores customizados

Neste segundo exemplo, criamos uma estratégia para o Bitcoin (em USD) na periodicidade de minutos. Definimos uma função customizada para a regra de trading, isto é, usamos o RSI e a Média Móvel Simples (MA) para definir as regras de entrada e saída. Em seguida, verificamos o backtesting da estratégia.
Abaixo apresentamos o gráfico (que é interativo dentro do Notebook) do backtesting da estratégia utilizada.

Quer aprender mais?

Clique aqui para fazer seu cadastro no Boletim AM e baixar o código que produziu este exercício, além de receber novos exercícios com exemplos reais de análise de dados envolvendo as áreas de Data Science, Econometria, Machine Learning, Macroeconomia Aplicada, Finanças Quantitativas e Políticas Públicas diretamente em seu e-mail.

Compartilhe esse artigo

Facebook
Twitter
LinkedIn
WhatsApp
Telegram
Email
Print

Comente o que achou desse artigo

Outros artigos relacionados

Como coletar dados do Eurostat usando a API com o Python?

Neste artigo mostramos como pesquisar e como coletar os dados do portal Eurostat através do sistema de API usando a linguagem Python. Este processo permite automatizar rotinas de extração de dados, eliminando trabalho manual e repetitivo de atualização de bases de dados econômicos.

Estimando a volatilidade da taxa de câmbio

O que é Volatilidade? Como podemos calcular essa métrica? Este artigo apresenta uma breve introdução à volatilidade, descreve como podemos calcular a volatilidade utilizando Modelos de Volatilidade Condicional e demonstra a aplicação prática dessa abordagem para estimar a volatilidade da taxa de câmbio BRL/USD por meio da linguagem de programação Python.

Como analisar o Núcleo de Inflação no Brasil usando Python?

O Python se destaca como uma ferramenta robusta para análise de dados, permitindo a aplicação de uma ampla gama de técnicas em dados econômico-financeiros. Neste exercício, destacamos como a linguagem oferece uma facilidade muito grande na coleta de dados dos núcleos do IPCA diretamente do site do Banco Central, na manipulação eficiente desses dados e na construção de gráficos que facilitam a compreensão dos indicadores.

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.