Olá senhor, meu nome é Watson.
É um enorme prazer te conhecer!
Sou o melhor ajudante pessoal
para trades
que você já conheceu.
Veja o que sou capaz de fazer!

Quem me criou?

Meu nome é Miguel Medeiros, tenho 32 anos, sou carioca, mas moro em Curitiba faz mais de 10 anos! Sou desenvolvedor e um grande entusiasta de cryptomoedas!

Recentemente criei um canal do youtube para passar um pouco do conhecimento que eu tenho sobre Bitcoin. Mas não espere análises gráficas nem indicações de compra e venda. Meu foco é a parte técnica do protocolo, com uma visão de desenvolvedor sobre essa tecnologia incrível!

Por que existo?

Inicialmente a ideia de criar o Mr. Watson era somente uma forma de estudar as APIs de trade que eu tinha disponível, mas depois de ver o que ele era capaz me senti obrigado a deixá-lo aberto para a comunidade de desenvolvedores. Com a colaboração de outros desenvolvedores o projeto iria muito mais longe do que conseguiria fazer sozinho.

Mas além de aprimorar meu skill como desenvolvedor o Mr. Watson resolve alguns problemas que eu via na principal exchange do Brasil - FoxBit. Pois sentia a necessidade de mais informações no painel de compra e venda, além de ter muitos problemas com o login.

Então, ao invés de reclamar, resolvi estudar a API da Blinktrade - plataforma que a Foxbit utiliza como base para seus serviços - e lá descobri que conseguiria juntar todas essas informações em uma única tela. Criando um dashboard mais robusto!

A partir dai foi só arregaçar as mangas e criar o Mr. Watson! Depois de toda a comunicação com a exchange pronta, resolvi integrar com o Telegram para possibilitar enviar comandos e receber alertas mesmo longe do meu computador.

Novas ideias surgiram depois disso, mas resolvi disponibilizar o código para ter um feedback de outros desenvolvedores sobre o que já tinha feito. Espero que curtam o Mr. Watson! E que me ajudem a transformá-lo no melhor ajudante para trades que vocês já conheceram!

O que sou capaz de fazer?

Veja as funcionalidades dividas nas categorias abaixo:

Funcionalidades gerais:

  • Ver balanço;
  • Ver ticker;
  • Ver últimas ordens efetuadas;
  • Ver gráfico do Trading View;
  • Efetuar compra e venda de Bitcoin;
  • Ver lista de últimas ordens de compra e venda;
  • Cancelar ordens de compra e venda;
  • Ver lista de suas ordens abertas e efetuadas;
  • Ver histórico de todas as operações na exchange;
  • Ver saldo de suas carteiras Bitcoin.

Funcionalidades no Telegram:

  • Ver balanço;
  • Ver ticker;
  • Efetuar compra e venda de Bitcoin;
  • Cancelar ordens de compra e venda;
  • Alerta de alta e baixa nas últimas 24 hras.

Exchanges integradas:

APIs integradas:

Dashboard do Mr. Watson Mensagens do Telegram

Como instalar?

Para facilitar vamos seguir um passo a passo:


Passo 1: Instalar o NodeJS

O único requisito para o Mr. Watson é o NodeJS, você precisa ter ele instalado na sua máquina.
A instalação muda de acordo com seu sistema operacional, mas basta seguir os passos do site do próprio NodeJS.
Faça o download do site oficial do NodeJS:


Passo 2: Download do Mr. Watson

Você pode clonar o repositório no GitHub:

git clone https://github.com/MiguelMedeiros/mr-watson.git .

Ou faça o download e extraia os arquivos para uma pasta de sua escolha:


Passo 3: Instalar dependências

Você deve abrir o terminal na pasta onde extraiu os arquivos do passo 1.
Esse passo pode demorar alguns minutos.

npm install


Passo 4: Iniciar o back-end

Você deve abrir o terminal na pasta onde extraiu os arquivos do passo 1.
E rodar o comando abaixo para iniciar o Mr. Watson:

npm start


Passo 5: Iniciar o front-end

Você deve abrir o navegador de sua preferência e entrar no endereço:

http://localhost:5000


Passo Alternativo: Iniciar o front-end e o back-end com 1 clique

Se você utiliza Windows, criei um arquivo .bat para abrir o Mr. Watson em 1 clique!
Você deve seguir os passos 1 e 2 antes de rodar o .bat.

O arquivo está localizado na raiz da pasta que você instalou no passo 1.
Ele vai abrir automaticamente o back-end e o front-end. Basta executar o arquivo:

mr-watson.bat

Como configurar?

Vamos para um passo a passo novamente!


Passo 1: Criar chaves da Exchange

  • Faça o Login na sua conta da FoxBit e vá até o link "API" no rodapé do site;
  • Em seguida clique no botão "+ Nova API Key";
  • Selecione todos as opções menos as de depósito e saque;
  • Clique no botão "Create";
  • Guarde as informações de "key", "password" e "secret" para o passo 3.


Passo 2: Criar chaves do Telegram (opcional)

Para gerar as chaves privadas e saber o "chatid" do seu bot, siga os passos do site oficial do Telegram:
Link com informações oficiais para criar seu bot no Telegram.

Vou passar uma ordem de geração para você entender melhor como funciona:

  • Adicione o @botfather no seu telegram.
  • Conversando com ele você terá acesso as informações de como criar seu bot e gerar o "token".
  • Depois do bot criado você vai precisar chamar o seu bot para um chat no telegram e escrever qualquer mensagem para ele.
  • Após os dois passos anteriores você deve abrir o seu navegador e digitar o seguinte endereço:
    https://api.telegram.org/bot<SeuToken>/getUpdates

O "chatid" irá aparecer para você quando acessar essa página.
Guarde essas informações para o próximo passo!


Passo 3: Arquivo de configuração

O arquivo de configuração que você precisará editar fica na pasta raíz do Mr. Watson.
Basta você abrir o arquivo:

config.json

Complete todos os campos com as informações dos passos anteriores.

Caso você tenha alguma carteira bitcoin, edite a variável "wallets"

"wallets": [
      "coloque uma chave pública da sua carteira aqui",
      "coloque outra chave pública da sua carteira aqui"
]

Se você tiver mais de uma carteira coloque uma vírgula para adicionar novas carteiras.

Pra onde queremos ir?

O Mr. Watson acabou de nascer, mas as ideias não param de surgir!
Então fiz uma lista com novas funcionalidades que pretendo implementar em breve com a ajuda de vocês:

  • Code Review constante, afinal bugs sempre acontecem;
  • Melhorias de Usabilidade no Layout;
  • Novos comandos/alertas no Telegram;
  • Ordens com Stop Loss;
  • Ordens com Stop Gain;
  • Retirada de Bitcoins;
  • Depósito de Bitcoins;
  • Sistema com login para multiplos usuários no mesmo PC;
  • Integração com multiplas exchanges;
  • Possibilidade de arbitragem entre exchages;
  • Criação de um marketplace de plugins.

Se você tiver outras ideias entre em contato comigo!

Contribua com o projeto!

Há duas formas de você ajudar com o projeto:

Posso instalar pra você?

Caso você precise de ajuda para instalar o Mr. Watson na sua máquina, entre em contato pelo formulário abaixo para agendarmos uma instalação via Skype. O valor para essa consultoria é de R$ 200,00, infelizmente não posso fazer esse acompanhamento de graça!

Caso você não tenha esse valor, tente seguir o passo a passo da instalação e configuração ou peça ajuda para algum desenvolvedor conhecido!