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

Criando operações SQL com IA Generativa no R com querychat

No universo da análise de dados, a velocidade para obter respostas é um diferencial competitivo. Frequentemente, uma simples pergunta de negócio — “Qual foi nosso produto mais vendido no último trimestre na região Nordeste?” — inicia um processo que envolve abrir o RStudio, escrever código dplyr ou SQL, executar e, finalmente, obter a resposta. E se pudéssemos simplesmente perguntar isso aos nossos dados em português, diretamente no nosso dashboard Shiny?

Dashboard Financeiro com IA e Shiny Python: Análise de Dados Abertos da CVM

Este artigo apresenta um tutorial completo sobre como construir uma ferramenta de análise financeira de ponta. Utilizando Shiny for Python, demonstramos a automação da coleta de dados das Demonstrações Financeiras Padronizadas (DFP) da CVM e o tratamento dessas informações com Pandas. O ponto alto do projeto é a integração da IA Generativa do Google Gemini, que atua como um assistente de análise, interpretando os dados filtrados pelo usuário e fornecendo insights contábeis e financeiros em tempo real. O resultado é um dashboard dinâmico que democratiza a análise de dados complexos e acelera a tomada de decisão.

Econometria, ML ou IA para previsão da PMS?

Prever a Pesquisa Mensal de Serviços (PMS/IBGE) é um desafio por natureza: trata-se de uma série mensal, sujeita a volatilidade e choques que vão de fatores sazonais a mudanças estruturais no setor. Para enfrentar esse problema, realizamos um exercício de comparação entre três abordagens de modelagem: econometria tradicional (ARIMA), machine learning (XGBoost) e inteligência artificial (TimeGPT).

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.