Gekko Trading Bot: guia completo para esta ferramenta de criptografia gratuita

Então você estava pesquisando online por alguns bots de negociação de criptomoedas e encontrou o bot de negociação Gekko.

Este é talvez um dos bots de negociação de criptomoedas de código aberto mais úteis no mercado hoje. Não há necessidade de pagar taxas de assinatura por algum software comercial fraudulento com retornos questionáveis. A criptomoeda deve ser um empreendimento de código aberto. Nossos bots de criptografia devem ser os mesmos.

O bot comercial Gekko está aberto a qualquer pessoa que queira investir um pouco de tempo para configurá-lo. Além disso, ele permite inúmeras extensões e plug-ins que você pode usar para melhorar o bot, caso precise.

Neste post, vamos levá-lo através do bot Gekko Trading. Também mostraremos como configurá-lo em um servidor em nuvem para que você possa deixá-lo analisando os mercados sem interrupção.

Embora gostemos de pensar que isso é relativamente simples, essas instruções exigem um conhecimento básico da linha de comando do Linux, bem como dos servidores VPS.

Com essa isenção de responsabilidade fora do caminho, vamos pular.

O que é o Gekko Trading Bot?

O Bot comercial gekko é um bot de negociação de criptomoeda simples e uma ferramenta de teste de volta. Foi desenvolvido por Mike Van Rossum e lançado como um software de código aberto. O bot de negociação Gekko pode conectar até 18 trocas de Bitcoins diferentes

Gekko foi desenvolvido em Node.js e todo o código do Gekko foi lançado em Github. Este repositório também é atualizado regularmente, o que é um bom sinal de que os desenvolvedores ainda estão ativos.

Gekko pode ser usado para três finalidades diferentes:

  • Backtesting: Você pode fazer backtest de qualquer estratégia que você tenha em um período de tempo no passado. Isso é útil para determinar a eficácia de uma estratégia que teria.
  • Comerciante de papel: Você pode testar a estratégia em tempo real com dados atuais, mas apenas para fazer “transações fantasmas” com dinheiro falso.
  • Bot comercial: Aqui você pode executar o bot com fundos reais em uma conta com as estratégias que você desenvolveu.

Gekko não é um bot de negociação de alta frequência ou um bot de arbitragem. Ele completa a análise técnica nos mercados de criptomoedas e realiza algumas negociações por dia. Ele permite que você crie sua própria estratégia com base em seus próprios indicadores.

Gekko Trading Bot UI


Gekko Trading Bot UI

Você pode controlar o bot por meio de uma interface de usuário em seu navegador, assim como faria em qualquer outra plataforma. Se você tiver o bot em execução no servidor em nuvem, ele analisará os mercados 24 horas por dia, 7 dias por semana.

É importante notar que, embora o bot Gekko tenha uma interface gráfica com o usuário, ele requer um pouco de codificação para configurá-lo. Também requer que você instale alguns programas e dependências para que funcione com eficiência

Obtendo Seu Servidor VPS

Antes de prosseguir, pensei que seria importante declarar que o Gekko trading Bot pode ser executado em um ambiente local no seu PC doméstico. Existem inúmeras instruções sobre como fazer isso.

No entanto, descobrimos que isso é menos eficiente do que usar um VPS que está funcionando ininterruptamente em um data center. Os servidores são mais adequados para software de negociação automatizado e não encontramos nenhuma exceção com o bot de negociação Gekko.

Portanto, você precisará adquirir um VPS. Eles podem ser comprados em uma variedade de provedores de hospedagem, mas descobrimos que os mais baratos são os VPSs que podem ser alugados em Hostwinds. Você pode obter um VPS por meros US $ 5 por mês.

Vamos comprar o servidor de nível básico. Também queremos solicitar um servidor não gerenciado, pois queremos instalar todos os pacotes nós mesmos. Quando você tiver a opção de sistema operacional, escolha construir a máquina com Ubuntu 18:04.

Estatísticas mínimas do servidor VPS necessárias

Estatísticas mínimas do servidor VPS necessárias

Depois de pagar pelo servidor, a implantação deve ocorrer nos próximos 30 minutos. Você receberá um e-mail com as credenciais de login do servidor e sua senha “root”. Você também receberá o endereço IP do seu servidor.

Agora que você tem um servidor, você deseja obter um nome de domínio para que possa acessar facilmente a interface do usuário do Gekko através de uma conexão segura SSL.

Configurando o Domínio

Você pode obter facilmente um domínio de um registrador como namecheap por menos de $ 2. Você só terá que renovar o domínio em 1 ano se ainda quiser usá-lo.

Depois de adquirir o domínio, você precisará alterar os servidores de nomes para o endereço IP fornecido. Tudo o que você precisa fazer é adicionar um registro A e apontá-lo para o servidor que hospedará o Gekko. Esta é uma mudança simples que é feita na seção do servidor de nomes de seu domínio. Abaixo está uma captura de tela da configuração do servidor de nomes em meu domínio.

Configurações de nome de domínio do Gekko Bot

Configurações de nome de domínio na seção do servidor de nomes

Normalmente, as alterações nos registros do domínio A não devem levar mais de uma hora para serem propagadas. Agora que seu domínio está configurado, você pode começar a configurar o servidor para executar o bot comercial Gekko.

Configurando o Servidor

Para executar o Gekko em seu VPS, você precisará obter um certificado SSL, bem como enviá-lo por meio de um servidor web. Estas instruções passo a passo mostrarão exatamente como fazer.

Para fazer qualquer alteração em seu VPS, você precisará acessá-lo por meio de SSH. Se você está tentando configurar o Gekko de uma máquina Mac, você pode acessá-lo através do seu terminal. Se você estiver usando o Windows, terá que baixar um cliente SSH, como Massa.

No e-mail que foi enviado por seu provedor de hospedagem, você terá o IP do servidor, bem como suas credenciais de login. Depois de fazer login em seu servidor, você pode começar a definir as configurações. Antes de começar, você pode querer atualizar seus repositórios. Tudo que você precisa digitar é

$ apt-get update

Primeiramente, você precisará de um servidor web através do qual a interface do usuário Gekko será servida. Decidimos usar o servidor Linux Nginx. Isso pode ou não estar pré-instalado em seu VPS (dependendo de como foi enviado). Para instalar rapidamente os repositórios nginx, você digita o seguinte comando:

$ apt-get install nginx

Siga as instruções e aceite as alterações. Assim que o servidor estiver instalado, você pode iniciá-lo e verificar se o domínio está propagado corretamente e se o servidor está totalmente funcional. Inicie o servidor com o seguinte comando:

$ service nginx start

Agora você pode visitar seudominio.com e ver se a tela de boas-vindas do nginx é exibida. Se for esse o caso, podemos passar para a configuração do servidor. Pare o processo de antemão com o seguinte comando:

$ service nginx stop

Agora você terá que navegar até o arquivo de configuração nginx e fazer algumas alterações. Para editar nosso arquivo de configuração, você precisará usar um editor de texto. Vamos usar o nano. Digite o seguinte comando:

$ nano / etc / nginx / sites-enabled / default

Agora você verá o arquivo de configuração que pode editar no Nano. Você vai editar a primeira seção com o seguinte:

escute 80;

escute [::]: 80;

return 301 https: // $ server_name $ request_uri;

Então você vai querer renomear seu servidor. Role para baixo no arquivo até a linha que diz server_name e insira seu domínio conforme abaixo

server_name yourdomain.com;

Por último, você desejará configurar o servidor como um proxy reverso seguro. Navegue até a parte inferior do arquivo e insira as seguintes linhas:

websocket upstream {

servidor localhost: 3000;

}

servidor {

escute 443 ssl;

escute [::]: 443 ssl;

root / var / www / html;

ssl_certificate /etc/nginx/ssl/nginx.crt;

ssl_certificate_key /etc/nginx/ssl/nginx.key;

localização / {

proxy_buffers 8 32k;

proxy_buffer_size 64k;

proxy_pass http: // websocket;

proxy_set_header X-Real-IP $ remote_addr;

proxy_set_header Host $ http_host;

proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for;

proxy_set_header X-NginX-Proxy true;

proxy_http_version 1.1;

proxy_set_header Atualizar $ http_upgrade;

Conexão proxy_set_header "melhoria";

proxy_read_timeout 86400s;

proxy_send_timeout 86400s;

auth_basic "Conteúdo Restrito";

auth_basic_user_file /etc/nginx/.htpasswd;

}

}

Agora você pode fechar o seu editor Nano. Você faz isso digitando “CTRL X” e então “Y”Para salvar sobre o arquivo que já está lá.

O servidor deve ser configurado adequadamente. Voltaremos mais uma vez assim que terminarmos de obter nossos certificados SSL.

Obtendo seus certificados SSL

Acessar o Gekko com segurança por meio de uma conexão https é muito importante. Isso é especialmente verdadeiro se você optar por inserir quaisquer chaves de API de troca para negociação automatizada. Portanto, para estabelecer uma conexão segura, você terá que obter um certificado SSL.

Em primeiro lugar, você deseja fazer o download do openssl para assinar seus certificados. Digite o seguinte comando:

$ sudo apt-get install openssl

Isso instalará o kit de ferramentas SSL de código aberto. Assim que estiver instalado no VPS, você pode prosseguir e criar uma nova chave SSL.

$ sudo mkdir / etc / nginx / ssl

$ sudo openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt

Nesse processo, eles farão várias perguntas, como e-mail, nome da empresa e endereço. Você não precisa preencher esses campos e pode simplesmente pressionar Enter para pular as perguntas.

Agora você deseja obter um certificado assinado gratuito do Let’s Encrypt para o domínio. Você precisará de um cliente instalado em seu servidor que possa obter esses certificados assinados. Certbot é o programa recomendado e você pode instalá-lo com o seguinte comando.

$ sudo apt-get install certbot

Aceite a solicitação de instalação e espere o produto terminar de baixar e instalar. Então você vai querer executar o seguinte comando com “seudominio.com” substituído pelo seu domínio real

$ certbot certonly –standalone -d seudominio.com

Conclua as etapas e concorde com os termos do letsencrypt. Se houver algum erro na obtenção do seu certificado, pode ser que o servidor nginx ainda esteja ativo. Certifique-se de que foi desligado conforme as instruções após a alteração da configuração.

A etapa final neste estágio da instalação é modificar seu arquivo de configuração nginx para que ele saiba onde o certificado e sua chave estão paralisados. Também queremos adicionar uma instrução de controle de cabeçalho. Abra o arquivo novamente com o mesmo comando:

$ nano / etc / nginx / sites-enabled / default

Depois de aberto, navegue até as instruções de configuração SSL do servidor e você verá as duas linhas a seguir:

ssl_certificate /etc/nginx/ssl/nginx.crt;

ssl_certificate_key /etc/nginx/ssl/nginx.key;

Substitua-o pelo seguinte (lembre-se de alterar “seudominio” para o seu domínio real):

ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;

ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;

add_header Strict-Transport-Security "max-age = 31536000";

Agora seu servidor foi configurado apropriadamente como um proxy reverso seguro. A etapa final é criar uma senha que garanta que você seja a única pessoa capaz de acessar o seu bot de negociação gekko. Digite o seguinte comando na janela de comando com “nome de usuário” substituído pelo nome de usuário desejado.

$ printf "nome de usuário: `openssl passwd -apr1` \ n" >> /etc/nginx/.htpasswd

Pressione Enter e insira uma senha escolhida quando solicitado. Agora você pode ligar o seu servidor novamente para se certificar de que o ambiente está configurado corretamente para executar o bot Gekko.

$ service nginx start

Se você quiser verificar se a configuração foi bem-sucedida, você pode visitar seu domínio em seudominio.com. Recomendamos o uso do navegador Chrome, pois havia problemas em navegadores como o Firefox.

Você deve ser solicitado a fornecer suas credenciais de login. Se inserido corretamente, deve levá-lo a uma página de erro do Gateway 502 com uma conexão SSL segura (cadeado SSL verde no navegador).

Isso significa que a configuração foi feita corretamente e você está pronto para baixar e configurar o bot comercial Gekko.

Instalando Nodejs & NPM

O bot Gekko é codificado em nodejs, a implementação do lado do servidor de JavaScript. Isso significa que você precisará baixar e instalar o nodejs em seu servidor. Ubuntu 18:04 contém uma versão do nó em seus repositórios padrão. Para instalá-lo, basta digitar:

$ sudo apt install nodejs

Também queremos instalar o Node Package Manager (NPM). Isso é usado para baixar algumas das dependências do bot Gekko. Execute o seguinte comando:

$ sudo apt install npm

Dependendo da versão do Linux que você está executando, pode ser necessário atualizar a versão padrão do Node.js que é baixada. Para Ubuntu 18:04, a versão padrão instalada dos repositórios é v8.10.0. Ele está um pouco desatualizado e não será capaz de executar o Gekko Bot, pois requer no mínimo a v8.11.2. Você pode verificar qual versão você instalou.

$ nodejs -v

Se for inferior a v8.11.2, você terá que atualizá-lo. Para atualizar o nó, vamos ter que usar um PPA. Digite o seguinte comando.

$ cd ~

$ curl -sL https://deb.nodesource.com/setup_8.x -o nodesource_setup.sh

Em seguida, você terá que executar o script de shell que acabou de baixar. Digite o seguinte comando:

$ sudo bash nodesource_setup.sh

Após o término da execução do script, você pode instalar a versão mais recente do Node.

$ sudo apt install nodejs

Deve ser v8.11.3 no momento da escrita. Isso agora é suficiente para executar o Gekko. Agora que temos a versão correta do Node instalada, podemos baixar o Gekko Bot.

Instalando o Gekko Bot

A última coisa que você precisa instalar é a própria máquina média. Você precisará baixar todos os arquivos Gekko do github do projeto, bem como as dependências necessárias para executá-lo. Navegue de volta para sua pasta raiz e digite o seguinte.

$ git clone git: //github.com/askmike/gekko.git -b stable

$ cd gekko

Agora você baixou todos os arquivos da página github do Gekko e pode começar a baixar todas as dependências exigidas pelo Gekko. Faça isso com o seguinte código npm:

$ npm install – apenas = produção

Você também precisará baixar as dependências para a funcionalidade do corretor Gekko. Você precisará navegar até a pasta Exchange e, em seguida, baixá-los.

troca de $ cd

$ npm install – apenas = produção

Agora o seu robô comercial Gekko está pronto para ser executado. Você só precisa editar o arquivo UIconfig para servir a interface do usuário em um ambiente sem interface com a porta 443. O arquivo específico pode ser encontrado em gekko / web / vue / dist / UIconfig.js. Navegue até o arquivo e abra-o com seu editor de texto nano. Substitua o CONFIG com o seguinte:

const CONFIG = {

sem cabeça: verdadeiro,

api: {

host: ‘127.0.0.1’,

porta: 3000,

},

ui: {

ssl: true,

host: ‘gekko.example.com’,

porta: 443,

path: ‘/’ // mude isto se você estiver servindo de algo como `example.com / gekko`

},

adaptador: ‘sqlite’

}

Como sempre, não se esqueça de substituir “seudominio.com” acima pelo domínio que você comprou. Feche o editor e salve suas alterações.

Executando Seu Gekko Trading Bot

Agora que o Gekko foi instalado e você o configurou para ser executado em seu servidor em um ambiente sem interface, você pode iniciá-lo. Navegue até sua pasta Gekko e digite o seguinte comando:

$ node gekko –ui

Isso deve iniciar o Gekko e informar que ele está sendo executado em seu domínio. Você deve obter a seguinte saída.

Saída Gekko durante a execução

Saída quando o Gekko está funcionando corretamente

Agora você pode verificar se Gekko está funcionando adequadamente. Navegue até seu domínio e digite a senha. Você notará o servidor respondendo às suas solicitações na linha de comando. Digite seu nome de usuário e senha e lance a besta.

Gekko Bot UI

Gekko Bot UI no navegador

Gekko deve ser totalmente funcional e você deve ser capaz de usá-lo exatamente como foi planejado. No entanto, há uma etapa final que precisa ser concluída se você deseja executar o Gekko 24 horas por dia, 7 dias por semana, mesmo depois de encerrar sua sessão SSH.

Vamos parar o script Gekko digitando “CTRL-C” e vamos instalar a “tela”.

Executando script Gekko remoto perpetuamente

Você deve ter notado que, se sair da sessão SSH, o script Gekko também será encerrado. Isso ocorre porque o aplicativo Gekko está vinculado à sua sessão SSH. Para executá-lo mesmo ao sair, você terá que usar uma ferramenta de emulação de terminal. Há um número de maneiras para fazer isso, mas acho que a maneira mais eficaz é usar o tela ferramenta. Isso vem instalado com o Linux.

Se a tela não estiver instalada em sua máquina, você pode fazer isso com o comando de instalação padrão.

tela de instalação $ sudo apt-get

Depois de concluído, tudo o que você precisa fazer é iniciar a sessão de tela com este comando:

$ tela

Agora você tem uma sessão de tela que foi iniciada. É nesta sessão de tela que você pode iniciar o processo Gekko. Pressione Enter e insira o mesmo comando que você já usou para iniciar o Gekko, a saber:

$ node gekko –ui

Agora você pode sair desta sessão de tela específica digitando “CTRL-A” seguido pela “D”. Você deve obter uma saída como a seguinte:

[separado de 23904.pts-0.hwsrv-295577]

Agora você pode se desconectar com segurança do terminal SSH e o script Gekko ainda está em execução. Você pode verificar isso visitando o domínio uma última vez. Isso significa que até que você pare o processo ou a menos que o servidor reinicie, o Gekko continuará funcionando.

É muito simples reconectar à sessão que você está executando, digitando o seguinte comando:

$ screen -r

Aqui, você pode observar o que Gekko está fazendo ou pode interromper o processo. O último pode ser feito no caso de haver alguma mudança que você deseja realizar e não pôde fazer enquanto ele estava em execução. Você sempre pode iniciar o script novamente abrindo a mesma tela. Você pode ler mais sobre todos os comandos de tela aqui.

Usando o Gekko Bot

Agora que o Gekko foi instalado em seu servidor e está funcionando 24 horas por dia, 7 dias por semana, você pode acessá-lo de qualquer lugar e criar suas estratégias usando as ferramentas. Embora este tutorial não o conduza por todas as ferramentas e funcionalidades, daremos uma visão geral básica de como o bot comercial Gekko opera.

Conforme mencionado, a Gekko faz uso de análises técnicas para fazer seu backtesting e colocação de negócios. Ele usará uma gama de indicadores de análise técnica padrão que você define para executar os pedidos. Abaixo está uma lista dos indicadores padrão.

  • EMA: Média Móvel Exponencial
  • PPO: Oscilador de preço percentual
  • CCI: Índice de canal de commodities
  • DEMA: Média móvel exponencial dupla
  • LRC: Canal de Regressão Linear
  • MACD: Divergência de convergência de média móvel
  • RSI: Índice de Força Relativa
  • TSI: Índice de Força Verdadeira
  • TSI: Oscilador final

Estes são os sinais padrão que você pode usar para fazer suas negociações. Você também pode usar outras bibliotecas de análise técnica de software livre para estender ainda mais suas opções ao escrever suas próprias estratégias. Você pode fazer uso do Indicadores Talib assim como o Biblioteca de tulipas.

Antes de realmente começar a usar o bot Gekko para fazer negócios de maneira automatizada, você vai querer testar as estratégias por meio de backtesting. Para fazer isso, você precisará importar dados.

Importando Dados Gekko

Importação de dados locais no Gekko

Você pode extrair dados de 7 trocas diferentes e testar suas estratégias no backtest. Isso inclui Kraken, Binance, Bitfinex e Poloniex. Se elas funcionarem para você, você pode começar a testar essas estratégias no módulo de negociação de papel ao vivo. Isso pode ser iniciado na guia “Live Gekko”. Aqui, você pode definir os parâmetros que funcionaram para seu backtesting e implementá-lo.

Isso permitirá que você determine se sua estratégia pode realmente funcionar em um ambiente real. Você também pode ajustar sua estratégia com base no que observa nos resultados do mercado de papel.

Se você achar que a negociação de papel está funcionando bem para você, então você pode implementar as mesmas estratégias no modo de negociação ao vivo com o “tradebot”Funcionalidade em“ Live Gekkos ”. Antes de fazer isso, você deve ter certeza de que inseriu suas chaves de API e tem acesso de gravação a essas chaves de API.

Extensões, plug-ins e software personalizado

Embora a funcionalidade padrão do Gekko seja suficiente para a maioria das pessoas, há várias maneiras de aprimorá-la com as inúmeras extensões que podem ser incorporadas.

Embora isso seja sem dúvida emocionante, é importante notar que isso requer codificação personalizada para os arquivos Gekko, o que o torna bastante técnico. Você só deve fazer isso se tiver um bom entendimento de nodejs.

Se você se vir fazendo isso, poderá realmente desbloquear o poder do bot Gekko. Por exemplo, você pode estender a funcionalidade do Exchange adicionando novas trocas. Supondo que o Exchange tenha uma API, você pode conectá-lo ao Gekko e usar as estratégias para negociar uma variedade de pares diferentes.

Você também pode adicionar um plugin que existe no gekko / plugins pasta. Já existem alguns que podem ser benéficos para sua negociação. Você pode ver uma lista desses plugins abaixo. Você deve ler a documentação se quiser instruções para ativar os plugins.

Plugins disponíveis para Gekko

Plugins Gekko disponíveis. Fonte: Documentação Gekko

Por último, dado que Gekko pode lançar um processo que expõe uma API, há uma gama de opções para construir em cima do Gekko. Muitas pessoas já fizeram exatamente isso. Por exemplo, existe este plugin que enviará todas as suas negociações para planilhas do Google para fácil rastreamento.

Há também estratégias de negociação mais avançadas que usam algoritmos genéticos & evolução bayesiana. Chamado Japonicus, este plugin é codificado em Python que mostra a extensibilidade do software Gekko subjacente.

Conclusão

Quando se trata de software automatizado gratuito, o bot comercial Gekko sem dúvida criou um nome para si mesmo. É ótimo ver que os desenvolvedores no espaço da criptomoeda estão se mantendo fiéis à iniciativa de código aberto.

Embora o bot comercial Gekko possa ser visto como “simples” pela maioria dos desenvolvedores de algoritmos, é essa simplicidade que é um grande bloco de construção para funcionalidades mais avançadas. Também é uma ótima maneira para os novos criadores de bot começarem a trabalhar no campo.

É, no entanto, importante notar que o bot Gekko não é uma fórmula mágica que vai fazer você ganhar dinheiro. Você precisa entender que negociar um ativo tão volátil, como criptomoeda, pode ser arriscado até mesmo para os bots mais avançados.

Gekko é uma ótima ferramenta que você pode usar para elaborar uma estratégia que exiba retornos positivos da maneira mais apropriada. No entanto, isso não é garantido e você deve sempre praticar a gestão de risco adequada.

Com isso dito, o bot Gekko é uma grande iniciativa e o desenvolvedor merece nossa gratidão coletiva. Mostre a ele que você quer dizer isso adicionando ao seu tipjar BTC: 13r1jyivitShUiv9FJvjLH7Nh1ZZptumwW

Imagem em destaque via Fotolia & Gekko Bot

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me