Skip to content

Configurando o Gunbot_pt

Criptonauta edited this page Feb 20, 2019 · 4 revisions

Configurando o Gunbot

Importante: você não precisa editar o config.js manualmente quando estiver usando o Gunthy GUI. Todas as configurações descritas nesta página podem ser alteradas a partir da GUI.

Todas as configurações do Gunbot são feitas em um único nome de arquivo “config.js”. É aqui que você configura as chaves da API do Exchange, adiciona pares e define suas estratégias. Quando o arquivo de configuração é sobrescrito enquanto o Gunbot está sendo executado, as configurações alteradas serão carregadas automaticamente. Abaixo você encontrará explicações detalhadas de todas as opções no arquivo de configuração.

Certifique-se de que nenhum parâmetro seja removido ao configurá-lo. Certifique-se de que a formatação JSON permaneça intacta. Teste para erros de sintaxe em https://jsonlint.com, sempre remova suas chaves de API antes de testar!

Conteúdo:

  1. Exchanges
  2. Pares
  3. Estratégias
  4. Bot
  5. Telegram
  6. Autoconfig
  7. GUI
  8. TradingView
  9. Ouvinte IMAP
  10. WebSockets

Exchanges

Nesta seção, você insere sua chave de API e segredo para as exchanges nas quais deseja negociar. Você não precisa remover as exchanges nas quais não deseja negociar.

Você pode usar pares de diferentes exchanges em um mesmo Gunbot, já que os ciclos das exchanges são independentes.

Se você quiser usar uma chave de API diferente para negociação do que a que você inicialmente registrou conosco, não há problema! Você pode simplesmente usar uma nova chave sem entrar em contato com o suporte. Certifique-se de manter a chave inicialmente registrada ativa.

As seguintes opções existem para configurar chaves de exchanges. Preencha apenas aqueles que você realmente precisa e registre uma licença do Gunbot.

Permissões de API são diferentes para cada exchange.

Parâmetro Valor padrão Descrição
masterkey YOURMASTERAPIKEY A chave da exchange usada para sua compra do Gunbot (ou a última chave registrada). Usado para autenticação com o servidor de licenças Gunbot. Não necessariamente usado para negociação, a chave precisa existir na exchange.
mastersecret YOURMASTERSECRETKEY O segredo que pertence à chave usada para sua compra do Gunbot e ativada pelo suporte.
key YOURAPIKEY A chave da API da Exchange que você deseja usar para negociar com o Gunbot. Precisa estar na mesma conta de exchange que o masterkey e precisa ter permissões de negociação. Você também pode inserir a chave mestra aqui novamente para negociar com essa chave.
secret YOURSECRETKEY Altere esse valor para o segredo que pertence à sua chave de API que você deseja usar para negociação.
clientId YOURCLIENTID Digite seu ID de cliente CEX. Relevante apanas para a CEX.
passphrase YOURPASSPHRASE Digite seu código de acesso da API do GDAX. Relevante apenas para a GDAX.
delay 1 Valor: numérico. representa um valor multiplicador usado na fórmula para atrasar o bot. Delay específico para a exchange. O bot atrasará o processamento de um novo par por uma quantidade aleatória de milissegundos. Fórmula: valor aleatório entre 200 e 400 ms * BOT_DELAY. Útil quando o Gunbot solicita dados mais rapidamente do que a API da Exchange permite. Como o atraso necessário depende da quantidade de pares e da velocidade que seu sistema precisa para alternar os pares, não há valores recomendados. Esta é uma configuração específica de exchamge para atrasar o processamento de pares, aplica-se quando é definida acima do parâmetro global BOT_DELAY.

VOCÊ É RESPONSÁVEL POR SUAS PRÓPRIAS CHAVES. NÃO PERCA SUA CHAVE MASTER E SEGREDO MESTRE. FAÇA SEMPRE UMA CÓPIA.

Certifique-se de que guarda com segurança uma cópia da sua chave mestra e do seu segredo. Nunca desative a autenticação de dois fatores na sua exchange quando não for estritamente necessário.

Pares

Nas seções de pares você pode configurar quais pares usar, em qual exchange e qual estratégia deve ser usada, substituições opcionais são possíveis. Você precisa remover todos os pares de exemplo no arquivo config.js que você não está planejando usar. Os pares precisam ser escritos em CAPS.

A moeda base definida é aquela que você deseja acumular. Você usa a moeda base para comprar outro ativo e o revende para obter lucro na moeda base. Gunbot sempre venderá todos os ativos quando vender, e comprará de acordo com o seu limite de negociação.

Gunbot normaliza a notação de pares, então todos os pares para todas as trocas seguem a mesma lógica:

BASECOIN-QUOTECOIN

Todos os pares com BTC como moeda base são escritos como:

BTC-ETH, BTC-OK, BTC-XLM

Todos os pares com USDT como moeda base são escritos como:

USDT-BTC, USDT-ETH, USDT-XMR

Para algumas moedas no Bitfinex, o nome de exibição da API é obrigatório. Esses são:

IOTA = IOT

DASH = DSH

QTUM = QTM

DATA = DAT

QASH = QSH

Tome cuidado quando quiser negociar pares que cruzem. Você precisará definir KEEP_QUOTE para cada par para garantir que não deixará nenhum par sem financiamento.

O problema é que você só tem uma carteira para cada moeda em sua conta de troca. Isso resulta em uma batalha de fundos se você executar pares que se cruzam. Por exemplo, BTC-ETH e ETH-XMR são cruzados. Se KEEP_QUOTE não estiver definido corretamente, o BTC-ETH venderá toda a sua ETH e deixará a ETH-XMR sem financiamento.

Overrides (Substituições)

As configurações feitas em uma estratégia são globais e se aplicam a todos os pares configurados para usar essa estratégia. Caso você queira que pares específicos usem valores diferentes para alguns parâmetros, você pode substituir isso em um par.

Por exemplo: Configurar um par para usar bb como estratégia e substituir o valor MIN_VOLUME_TO_SELL definido na estratégia bb seria semelhante a isto em config.js:

"BTC-DASH": { "strategy": "bb", "enabled": true, "override": {"MIN_VOLUME_TO_SELL": 0.01}}

Ao definir "ativado" como falso, o Gunbot não fará o ciclo de um par até que seja ativado novamente.

Se você quiser substituir as configurações de pares usando a GUI, você pode fazer isso na página de configuração de edição, como mostrado abaixo:

Configurações de estratégia

As configurações disponíveis para a configuração de estratégias são diferentes para cada estratégia. Descrições detalhadas de todos os parâmetros podem ser encontradas nas páginas que descrevem estratégias individuais.

Configurações de bot

Essas configurações definem o comportamento principal do Gunbot.

Recomenda-se usar os valores padrão, a menos que você saiba o que está fazendo.

Parâmetro Valor padrão Descrição
MULTIPLE_BASE false Valor: true ou false. Use essa opção para trocar de par com cross-over entre quote e base (por exemplo, BTC-ETH e ETH-ADA). Quando ativado, o Gunbot não venderá todas as unidades de cotação disponíveis durante a venda, em vez disso, ele só venderá os fundos investidos. Também afeta o complemento TradingView.
debug false Valor: true ou false. Usado para mostrar mensagens de depuração no bot, quando definido como true. Só use isso se você realmente precisar depurar alguma coisa.
BOT_DELAY 1 Valor: numérico - representa tempo em segundos. Bot atrasará o processamento de um novo par por um determinado período de segundos. Útil quando o Gunbot solicita dados mais rapidamente do que a API do Exchange permite. Como o atraso necessário depende da quantidade de pares e da velocidade que seu sistema precisa para alternar os pares, não há valores recomendados. Esta é a configuração global para o atraso do bot, quando é definido mais alto que o atraso específico da troca na seção de troca, BOT_DELAY se aplica.
BOT_CCLEAN 2 Valor: numérico - representa tempo em horas. Esse parâmetro força o cache do Gunbot a ser limpo, reiniciando o bot a cada x horas. Essa configuração não é acionada TRADES_TIMEOUT. Apenas configure isso para um valor baixo quando seu bot realmente tiver problemas de não negociar após um longo período de uso.
CANCEL_ORDERS_ENABLED true Valor: true ou false. Quando definido como true, o bot removerá pedidos não cumpridos quando o preço tiver se afastado do preço de compra ou venda para pedidos não cumpridos. Defina isso como falso se você trocar manualmente em pares que você também roda com o Gunbot.
CANCEL_ORDERS_CYCLE_CAP 1 Valor: numérico - representa um número de ciclos. Define o número de ciclos a aguardar antes que o bot possa cancelar ordens abertas.
RESERVE_PILE_UP false Valor: true ou false. Quando definido como verdadeiro, os ganhos de negociação serão adicionados automaticamente à FUNDS_RESERVE.
interval_ticker_update 25000 Valor: numérico - representa o tempo em milissegundos. Esse parâmetro define em quantos milissegundos novos preços estão sendo extraídos da exchange para cada par (valor padrão de 25000 = 25 segundos). O valor padrão deve quase sempre ser bom o suficiente, apenas mude isso se você souber o que está fazendo. Defina isso para um valor menor se você quiser que o Gunbot recupere os preços mais rapidamente, por exemplo, enquanto você estiver interessado em seguir tendências mais curtas. Esse valor está relacionado a period_storage_ticker, já que define com que frequência novos preços estão sendo adicionados à matriz.
period_storage_ticker 2000 Valor: numérico - representa um número. Esse parâmetro define quantos dos preços recebidos da exchange estão sendo mantidos na matriz para calcular outros indicadores. É fundamental que você não defina esse valor como muito baixo, caso contrário, você não terá valores suficientes para funções como o trend watcher ou o cálculo de EMA local. Um novo preço é adicionado a este array toda vez que os tickers são atualizados, ou toda vez que um novo ciclo começa mais rápido que o tempo definido em interval_ticker_update - o último acontece somente se você executar poucos pares no seu bot.
timeout_buy 60000 Valor: numérico - representa o tempo em milissegundos. Este é um tempo limite interno que impede que o bot volte a comprar dentro do valor definido de milissegundos após a colocação de uma ordem de compra.
timeout_sell 60000 Valor: numérico - representa o tempo em milissegundos. Este é um tempo limite interno que impede que o bot volte a vender dentro do valor definido de milissegundos após a colocação de uma ordem de venda
VERBOSE true Valor: true ou false. Configurar isso para true levará a informações mais detalhadas sendo mostradas no console.
WATCH_MODE false Valor: true ou false. Quando definido como true, o Gunbot processará os pares configurados, mas não colocará ordens reais de compra ou venda. Bom para o teste.
json_output ./json Valor: string, representa um caminho. O caminho para salvar os arquivos json dos pares.
withdraw_address Defina um endereço de carteira BTC válido para ativar a retirada automática sempre que o limite for atingido.
withdraw_threshold 0.5 Valor: numérico - representa uma quantidade de BTC. Defina a quantidade de BTC a ser acumulada RESERVE_PILE_UP antes de uma retirada automática ser executada.
BEST_CURRENCIES false Valor: true ou false. Permitir sugestões de bons pares para negociar. Sugestões mostram nos seus registros do Gunbot e podem ser configuradas por MINIMUM_VOLUME_GOOD_CURRENCY e MINIMUM_VARIATION_SUGGEST_TRADE.
MINIMUM_VOLUME_GOOD_CURRENCY 200 Valor: numérico - representa o volume de 24 horas na moeda base. Define o limite do volume de negociação para sugestões de pares.
MINIMUM_VARIATION_SUGGEST_TRADE 1 Valor: numérico - representa uma quantidade de BTC. Define a variação mínima de 24 horas para sugestões de pares. A volatilidade é calculada pela distância do preço atual aos preços mais baixos e mais altos.

Configurações de Telegram (parte da seção de bot)

Quando você quiser que o Gunbot envie notificações do Telegram para cada negociação feita, é aqui que você configura isso.

Etapas necessárias:

  1. Fale com @botfather e salve o token de bot mostrado. Crie um novo bot com o comando /newbot e escolha um nome e nome de usuário para o seu bot.
  2. Fale com @myidbot para ver seu ID de telegram, salve-o.
  3. Ative notificações de telegram para o Gunbot e insira o token e o ID que você acabou de anotar.
  4. Inicie um bate-papo com o nome de usuário que você escolheu para o seu bot e aperte o botão Iniciar.
Parâmetro Valor padrão Descrição
TELEGRAM_ENABLED true Valor: true ou false. Habilite isso para que o Gunbot envie notificações através do Telegram de todas as transações feitas.
TELEGRAM_NICK Gunbot Valor: string. Cada notificação de negociação começa com o apelido definido aqui. Use isso para verificar facilmente de qual instância do bot as notificações foram enviadas.
TOKEN put_your_TOKEN_here Valor: string. O token do seu bot no Telegram.
chat_id put_your_TELEGRAM_ID_here Valor: string. O Telegram ID do seu bot.
TG_PL_ONLY false Valor: true ou false. Opcional. Se habilitado, serão enviadas notificações somente para ordens de venda.
TG_ORDER_TIMEOUT 0 Valor: numérico. Representa tempo em segundos. Quando acima de 0, você receberá uma notificação no Telegram para confirmar ou negar cada ordem que o Gunbot queira efetuar. Caso não haja resposta do usuário, a ordem é processada após o tempo configurado.
TG_TEST false Valor: true ou false. Habilite para ver se o bot do Telegram está operando corretamente. Uma mensagem será enviada a cada ciclo. Desligue a função após a verificação estar concluída.

Autoconfig settings (part of bot section)

Descrições detalhadas de configurações para Autoconfig estão disponíveis em uma página dedicada.

Configurações da GUI

Configurações relacionadas à GUI do Gunbot.

Parâmetro Valor padrão Descrição
enabled true Marque como false para desabilitar a GUI
start false Quando posto como false, o Gunbot inicia a GUI sem iniciar os pares até que o usuário pressione o botão "Start Core".
port 3000 O número da porta usada na GUI.
https false Defina isto como true para executar a GUI somente via https. Isso requer que você gere um par de chaves e salve-as na sua pasta do Gunbot.
key localhost.key Define o nome do arquivo da sua chave privada usada para executar a GUI via https.
cert localhost.cert Define o nome do certificado usado para executar a GUI via https.

Configurações do Tradingview (parte da seção do bot)

Estes são relevantes somente se você comprou o plugin Tradingview, apenas deixe-o nos valores padrão se você não estiver planejando usar o plugin.

Parâmetro Valor padrão Descrição
TV_GAIN 0.6 Valor: numérico - representa uma porcentagem. Defina um ganho mínimo em% que as negociações iniciadas pela Tradingview devem cumprir. Quando as ordens de venda estão sendo colocadas pela Tradingview que teriam um ganho menor do que esse valor, a Gunbot não fará o pedido. Use isso para evitar a venda com perda.
TV_TRADING_LIMIT_BUY 0.001 Valor: numérico - representa um valor na moeda base. Este valor define o limite de negociação para cada pedido de compra feito através do Tradingview. O valor padrão de 0.001 colocaria ordens máximas de 0.001 BTC quando usado em um par BTC_x.
TV_TRADING_LIMIT_BUY_PYRAMID 0.001 Valor: numérico - representa um valor na moeda base. Este valor define o limite de negociação para cada ordem de compra de pirâmide feita através do Tradingview. O valor padrão de 0.001 colocaria ordens máximas de 0.001 BTC quando usado em um par BTC_x.
TV_PYRAMID true Valor: true ou false. Definir esse valor como true ativa a venda em pirâmide, o valor para cada ordem de venda em pirâmide é definido por TV_TRADING_LIMIT_SELL. Piramidar é colocar o seu lucro gerado no trade no montante total a ser usado, aumentando, assim, o TRADING_LIMIT naquele par.
PYRAMID_BUY true Valor: true ou false. Definir esse valor como true permite a compra em pirâmide, o valor para cada ordem de compra da pirâmide é definido por TV_TRADING_LIMIT_BUY_PYRAMID.
TV_TRADING_LIMIT_SELL 0.001 Valor: numérico - representa um valor na moeda base. Este valor define o limite de negociação para ordens de venda feitas através do Tradingview. O valor padrão de 0.001 colocaria ordens máximas de 0.001 BTC quando usado em um par BTC_x.
TV_PROTECTION true Valor: true ou false. Quando definido como true, o Gunbot verificará se existe um lucro global antes de vender, conforme especificado em TV_GAIN. Quando definido como false, o Gunbot executará todo o TradingView sem interferir em sua estratégia personalizada.
TV_STOPLOSS_PERCENTAGE 60 Valor: numérico - representa uma porcentagem. Porcentagem abaixo do preço médio de compra pelo qual um sinal de venda deve substituir TV_PROTECTION e vendê-lo de uma forma stop-loss.
TV_TRADING_LIMIT_CAP 0.9 Valores: numérico - representa um valor na moeda base. A quantidade máxima de moeda base a ser investida em um par.
RETRY_TV_ORDER false Valor: true ou false. Ative isso quando tiver problemas ao receber vários alertas. O Gunbot repete os pedidos de processamento por 15 minutos até que o pedido expire.
TV_TRADING_LIMIT_ALLIN false Valor: true ou false. Quando definido como verdadeiro, cada pedido de compra usará todo o saldo da moeda base disponível.
TV_MVTS 0.001 Valor: numérico - representa o valor total de uma participação de moedas na moeda base. Define um limite para ordens de venda. Se você possui menos do que o valor definido, as ordens de venda não serão colocadas e o bot entrará no modo de compra novamente.
TV_GB false Valor: true ou false. Habilite para permitir o uso de estratégias do Gunbot juntamente com o TradingView add-on. Dessa forma, a compra e venda com estratégias do Gunbot ou com alertas do TV podem ser combinadas.

Configurações do ouvinte Imap (para o plugin Tradingview)

Estes são relevantes somente se você comprou o plugin Tradingview, apenas deixe-o nos valores padrão se você não estiver planejando usar o plugin.

Parâmetro Valor padrão Descrição
enabled false Defina isso como true para ativar o plug-in do Tradingview. Você precisa adquirir uma licença para isso.
authorized_froms [" [email protected] "] Defina o endereço de email do remetente do Tradingview que você deseja usar.
user YOUR_EMAIL_HERE Defina seu próprio endereço de e-mail aqui. Este endereço escuta mails da Tradingview.
password YOUR_PASSWORD_HERE Insira a senha do seu próprio endereço de e-mail.
host imap.gmail.com O endereço do servidor IMAP ao qual o plug-in precisa se conectar.
port 993 O número da porta do servidor IMAP.
tls true Define se a criptografia TLS é usada para a conexão IMAP.
rejectUnauthorized false

Configurações de WebSockets (ws)

Essas configurações são usadas para configurar o número da porta e o nome do host para WebSockets.

Recomenda-se usar os valores padrão, a menos que você saiba o que está fazendo.

Parâmetro Valor padrão Descrição
port 5001 Você pode alterar a porta para WebSockets aqui.
clientport 3000 Você pode alterar a porta do cliente para interfaces da web de terceiros aqui.
hostname 127.0.0.1 O endereço IP ou nome do host a ser usado para WebSockets. Padrões para o seu localhost. Um IP externo também pode ser definido.
Clone this wiki locally