Skip to content

Jupyter notebook tool to generate and backtest strategies with Binance coins using it's API. | | | Ferramenta em notebook para fazer backtest de estratégias de buy and hold usando a API da Binance

License

Notifications You must be signed in to change notification settings

edu-santiago/back_test_API_Binance

Repository files navigation

Back_test_API_Binance

Read this in other languages: English

Essa ferramenta foi desenvolvida para calcular possíveis retornos em qualquer par de moedas da Binance com estratégias utilizando indicadores de análise técnica do módulo TA do Python

Requirements

  • Pandas
  • Numpy
  • Matplotlib
  • Seaborn
  • binance-connector
  • ta

Funções de preparação

A função market_data puxa os dados especificados diretamente da API da Binance e retorna um dataframe tratado com as informações dos candlesticks A load_market pega os dados da market_data e adiciona os indicadores que devem ser visualizados, já vindo EMA 9, EMA 26 e RSI 7 por padrão, buscando dados a nível diário plot_market busca os dados da load_market e plota as informações, ela também pode receber uma lista de momentos de compra e venda, output da função back_test

Função Back_test

A função back_test recebe do load_market o dataframe com preços e indicadores e o dinheiro inicial. O seu np.where é onde é decidido se é um momento de compra e venda da moeda, já vindo com uma estratégia básica de EMA crossover imbutida + RSI abaixo de 80. Retornando um dataframe com o lucro, o lucro percentual e o valor final acumulado.

Seu funcionamento é baseado na iteração por período de tempo, aplicando a estratégia tomando cada ponto de dado como um momento inicial e identificando o lucro se o investimento tivesse sido feito em cada cada disponível.

Por fim ela retorna um CSV que pode ser analisado como o usuário desejar

Dataframe final

Orders

Esse notebook retorna três dataframes

  • Um com todas as ordens de compra e venda
  • Um apenas com as bids
  • Um com apenas as asks

O propósito dessa função é ser utilizada futuramente para automatizar a criação de ordens de compra e venda tanto para cumprir o backtest anterior como market making Ela também retorna um csv com todas essas informações do livro de ordens

Lista de ordens

About

Jupyter notebook tool to generate and backtest strategies with Binance coins using it's API. | | | Ferramenta em notebook para fazer backtest de estratégias de buy and hold usando a API da Binance

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published