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

Transfer Learning: mostrando porque o Python está na ponta do desenvolvimento

A aprendizagem por transferência (transfer learning) é o reuso de um modelo pré-treinado em um novo problema. Portanto, sua utilização torna-se um avanço enorme para a previsão de diferentes tipos de variáveis, principalmente para aquelas ordenadas no tempo. Mostramos nesta postagem o uso do Transfer Learning com o Python para o caso de Séries Temporais.

Criando Tabelas com o Python: mostrando o poder da linguagem sobre o Excel

Nos dias atuais, pessoas que trabalham com dados estão constantemente confrontados com um dilema: criar uma tabela não tão genial no Excel ou manter em um formato ainda pior, como um dataframe, mas mantendo a flexibilidade de obtenção dos dados. Podemos resolver esse grande problema, unindo a flexibilidade e beleza ao usar a biblioteca great_tables do Python.

Análise do Censo Demográfico com o R

Como podemos analisar dados do Censo Demográfico para produzir pesquisas e implementar políticas públicas? Mostramos nesta postagem o resultado de uma breve análise dos dados preliminares do Censo Demográfico de 2022 usando o R.

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.