Skip to content

LeonardoVieira1630/D.T.A.B

Repository files navigation

🔥 D.T.A.B 🔥

 

GitHub language count Author Author GitHub language count

Descrição   |    Tecnologias   |    Objetivos   |    Instalação   |    Resultados   


🤖 Descrição

D.T.A.B (Day Trade Asynchronous Bot) é um software desenvolvido em Python para ser capaz de fazer operações de compra e venda de criptomoedas. Alem disso, ele tem autonomia de decisão nas transações pois é capaz de jugar o melhor momento de faze-las.

Para montar a lógica do robô e torna-lo realmente eficiente, levamos em consideração os conceitos apresentados em:

  • The Axioms of Zurich – Max Gunther.

  • Technical Analysis of the Financial Markets: A Comprehensive Guide to Trading Methods and Applications - John J. Murphy.

 

🚀 Tecnologias

Esse projeto foi desenvolvido com:

  • JavaScript

  • Python

Para o perfeito funcionamento do código é necessários os frameworks e bibliotecas a seguir:

  • python-binance
  • TA-Lib
  • numpy
  • websocket
  • backtrader
  • Flask

 

👻 Objetivos

O D.T.A.B foi construído como projeto final da disciplina de Projeto de Eletrônica 1 do curso de Engenharia eletrônica da Universidade federal de Santa Catarina.

A finalidade do projeto era fazer um software totalmente autônomo que gerencie e faça investimento. Para o funcionamento dele, tivemos que estudar e aprender vários tópicos importantes como:

  • Funcionamento e uso da Raspberry pi 3.

  • Comunicação entre diferentes APIs.

  • Conceitos e técnicas de mercado financeiro e criptomoedas.

  • Desenvolvimento Web com HTML, CSS e JavaScript.

  • Desenvolvimento Back-end em Python.

 

💻 Instalação

Para usar o Bot, voce deve clonar esse repositório. Vá até seu terminal e use:

 git clone https://github.com/Ffquenome/D.T.A.B.git

Depois disso, faça o download das dependências usadas ja mencionadas anteriormente.

Agora, você deve criar um arquivo .env com as seguintes informações:

API_URL = 'https://api.binance.com/api'
API_KEY = XXXX
SECRET_KEY = XXXX

Por ultimo, é necessário criar uma conta na Binance e pegar seu API_KEY e sua SECRET_KEY. Assim que você tiver essas informações preencha no arquivo .env que criou. Com esses dados, o bot usára sua conta para fazer as transações para você.

Para fazer a conta recomendo seguir esses passos:

https://www.binance.com/pt-BR/support/faq/360002502072

Et voilà mon ami!! Tudo pronto.

 

☕ ☑️ Resultados:

Com o intuito de validar o funcionamento do Bot e avaliar a seu funcionamento e resultados, usamos o framework Backtrader. Com ele, podemos desenvolver nossa estratégia e testa-la em um determinado periodo de tempo.

Optamos por utilizar uma estratégia basica de compra e venda com o auxilio do indicador financeiro RSI (Indice de força relativa). Ele mede a aceleração do movimento dos preços de determinado ativo e dá suas indicações à medida que o movimento diminui a velocidade, dentro da ideia de que é preciso desacelerar para poder mudar de direção.

Dessa forma, o RSI nos ajuda a identificar se o mercado esta em alta ou baixa e, com base nisso, compramos e vendemos.

A seguir mostraremos alguns dos resultados que obtivemos simulando a estratégia do RSI em diferente periodos de tempo:

  • Simulando no periodo de Jan 01 2020 - Jul 12 2020 para o BTCUSDT usando candles de 1 dia:

plot

  • Simulando no periodo de Set 07 2021 - Set 13 2021 para o BTCUSDT usando candles de 15 minutos:

plot

Na primeira simulação tivemos um ganho de quase 40% no periodo analisado. Ja na segunda, perdemos quase 40%. Com base nisso, é evidente que para a estratégia ser suficientemente boa para operar no mundo real, devemos fazer uso de mais outros indicadores e não somente o RSI.

About

Day Trade asynchronous Bot

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published