Realizado

Robô para corretoras de Crypto (Javascript Nodejs)

Publicado em 28 de Fevereiro de 2018 dias na TI e Programação

Sobre este projeto

Aberto

Criar um robô em JavaScritp par rodar no meu computador local com Windows 10 usando Node.js
O robô será usado para extrair informações de duas corretoras que operam com Bitcoin e também realizar trades(operações de compra e venda de cryptomoedas). As corretoras são Bitfinix e Binance.
O Robô precisa ter as seguintes funcionalidades:
1)  Conseguir se conectar com a API das corretoras usando os parâmetros de autenticação “ApiKey” e “ApiSecret”.
(Pensar em como passar o parâmetro de uma maneira segura sem que eu tenha que deixar o usuário e senha gravada no código)
2)  Escolher o par de moedas que serão negociadas. Por exemplo, Bitcoin e Dólar (BTCUSD). Isso precisa ser parametrizado.
Ou seja, eu quero poder alterar o par de moedas todas às vezes que eu iniciar o robô.
3) Ler as informações que a corretora disponibiliza para cada trade (Timestamp, TradeId    Price, Amount, Type). Se além desses houver mais alguma informações disponível colocar também.

4) Baixar as informações de cada trade para o computador local e gravá-lo em um arquivo TXT
5) Fazer isso no menor intervalo de tempo possível.  Ou seja, não funciona fazer um looping para baixar os dados a cada 1 minuto. O ideal a baixar cada trade assim que ele acontecer e já salvar no TXT.

6) O processamento das duas corretoras precisa acontecer em paralelo. Apesar do Node.js não ser multi-thread é possível trabalhar com processamento paralelo usando o módulo cluster (https://imasters.com.br/desenvolvimento/node-js-processando-em-paralelo/?trace=1519021197&source=single)
7) Além de receber informações o robô também deve enviar informações para a corretora através da mesma API. As informações que serão enviadas são ordens de venda e de compra.

8) Após passar 5 minutos do momento de inicio do robô ele deve emitir uma ordem de COMPRA para cada uma das corretoras (são duas ordens de compra) com o valor do Amount=0.1 e perço de mercado (type=MARKET).
9) Após 10 minutos do início do robô ele deve emitir uma ordem agora de VENDA para cada uma das corretoras (são duas ordens de venda) pelo mesmo valor do Amount=0.1 e perço de mercado (type=MARKET)
10) Após 12 minutos de funcionamento o robô deve parar de operar e encerrar.

Abaixo estão os link com a documentação das APIs das duas corretoras. Os códigos de conexão com as APIs e realização de compras e vendas já são fornecidos pelas corretoras, então a parte que precisa de mais desenvolvimento é para salvar os dados no TXT e criar a lógica para contar o tempo antes de realizar as ordens de venda e compra.

Documentação API Bitfinix:
https://docs.bitfinex.com/docs
https://www.bitfinex.com/
Documentação API Binance:
API documentation: https://github.com/binance-exchange/binance-official-api-docs
API sample code: https://github.com/binance-exchange
API Group: https://t.me/binance_api_english

Categoria TI e Programação
Subcategoria Aplicativos desktop
Qual é o alcance do projeto? Criar um novo aplicativo
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Plataformas exigidas Windows

Prazo de Entrega: Não estabelecido

Habilidades necessárias