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

Análise exploratória para modelagem preditiva no Python

Antes de desenvolver bons modelos preditivos é necessário organizar e conhecer muito bem os dados. Neste artigo, damos algumas dicas de recursos, como gráficos, análises e estatísticas, que podem ser usados para melhorar o entendimento sobre os dados usando Python.

Como usar modelos do Sklearn para previsão? Uma introdução ao Skforecast

Prever séries temporais é uma tarefa frequente em diversas áreas, porém exige conhecimento e ferramentas específicas. Os modelos de machine learning do Sklearn são populadores, porém são difíceis de aplicar em estruturas temporais de dados. Neste sentido, introduzimos a biblioteca Skforecast, que integra os modelos do Sklearn e a previsão de séries temporais de forma simples.

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

Boletim AM

Receba diretamente em seu e-mail gratuitamente nossas promoções especiais e conteúdos exclusivos sobre Análise de Dados!

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.