Para criar um robô de trading do zero, você precisa de cinco coisas: regras objetivas, uma plataforma para programá-las, um backtest honesto com custos, um período em conta demo e um plano de risco que o robô siga sem exceção. A programação é a parte mais fácil; a difícil é provar que a regra funciona fora do histórico em que foi criada.
Em resumo: comece escrevendo a estratégia em português, com números exatos. Programe em Pine Script (mais fácil), MQL5 (MetaTrader 5) ou Python (cripto via API). Teste com taxas, spread e slippage, valide em dados que não usou para ajustar, rode em demo e só depois opere com valores pequenos. Nenhum robô garante lucro.
Passo 1: o que o robô vai fazer, exatamente?
Robô não entende “comprar quando parecer barato”. Ele precisa de respostas para estas perguntas:
| Pergunta | Exemplo de resposta objetiva |
|---|---|
| Qual ativo e tempo gráfico? | BTC/USDT, candles de 4 horas |
| Quando entra? | Média exponencial de 9 cruza acima da de 21 no fechamento do candle |
| Quando sai com lucro? | Cruzamento contrário ou alvo de 2 vezes o risco |
| Quando sai com perda? | Stop 1,5 ATR abaixo da entrada |
| Quanto arrisca? | 1% do capital por operação |
| Quando não opera? | Se já houver posição aberta ou perda do dia maior que 3% |
Se alguma linha ficar em branco, o robô não está pronto para ser programado. As ideias de entrada costumam vir de indicadores como médias móveis, IFR e Bandas de Bollinger, ou de suporte e resistência. O guia de estratégias de robôs compara tendência, reversão, grid e DCA.
Passo 2: qual plataforma escolher?
Pine Script (TradingView)
- Curva de aprendizado curta
- Backtest direto no gráfico
- Execução real depende de alertas e integrações
- Bom para validar ideias rápido
MQL5 (MetaTrader 5)
- Robô roda no terminal e envia ordens à corretora
- Testador com ticks reais e otimização
- Linguagem parecida com C++
- Padrão em forex, ouro e CFDs
Python
- Liberdade total e muitas bibliotecas
- Conecta a corretoras cripto via API (ccxt)
- Você monta backtest, execução e servidor
- Exige mais disciplina de engenharia
Um caminho comum é prototipar no TradingView e, se a ideia sobreviver aos testes, reescrever em MQL5 ou Python para executar. Cada linguagem tem tutorial próprio aqui: Pine Script, MQL5 Expert Advisor e Python para trading.
Dá para começar sem programar?
Sim. O Assistente MQL5 monta um Expert Advisor combinando módulos de sinal, gestão de capital e trailing stop, e já entrega o código compilável. Em cripto, corretoras oferecem bots de grid e DCA prontos; a BingX é um exemplo, com tutorial no nosso guia de grid bot da BingX. São bons para aprender, mas a lógica fica limitada ao que a ferramenta oferece.
Passo 3: programe a primeira versão
Abaixo, a regra da tabela (sem o stop por ATR, para ficar curta) em Pine Script v6. Repare que custos e tamanho de posição já entram na declaração da estratégia:
//@version=6
strategy("Robô cruzamento EMA", overlay = true, initial_capital = 1000,
default_qty_type = strategy.percent_of_equity, default_qty_value = 10,
commission_type = strategy.commission.percent, commission_value = 0.1, slippage = 2)
emaRapida = ta.ema(close, input.int(9, "EMA rápida"))
emaLenta = ta.ema(close, input.int(21, "EMA lenta"))
plot(emaRapida, "EMA rápida", color.teal)
plot(emaLenta, "EMA lenta", color.orange)
compra = ta.crossover(emaRapida, emaLenta)
venda = ta.crossunder(emaRapida, emaLenta)
if compra
strategy.entry("Long", strategy.long)
if venda
strategy.close("Long")
Na v6, o parâmetro when das funções de ordem foi removido; a condição vai num if, como acima, segundo o guia de migração do TradingView. Por padrão, o simulador executa a ordem a mercado no próximo tick disponível, ou seja, na abertura do candle seguinte ao sinal, conforme a documentação de estratégias. Isso evita o erro clássico de “comprar no fechamento que você só conheceu depois”.
Gráfico de candles no MetaTrader 5, plataforma em que robôs escritos em MQL5 enviam ordens direto à corretora. Crédito: Enivid, licença CC BY-SA 4.0, via Wikimedia Commons.
Passo 4: backtest com custos e dados fora da amostra
O backtest responde se a regra teria funcionado no passado. Três regras de ouro:
- Inclua todos os custos. Taxa da corretora, spread e slippage (diferença entre o preço esperado e o executado). Se o robô ganha 0,25% bruto por operação e paga 0,30% de custos, ele perde.
- Separe in-sample e out-of-sample. Ajuste parâmetros em, por exemplo, 2019 a 2023 e teste uma única vez em 2024 a 2026. Se o resultado desabar, é sinal de overfitting.
- Faça walk-forward. Otimize numa janela, teste na seguinte, avance. O testador do MetaTrader 5 tem a opção “Forward”, que reserva 1/2, 1/3 ou 1/4 do período para esse teste, e permite simular atraso de execução, segundo a ajuda oficial do testador.
Passo 5: conta demo e execução real
Mesmo um backtest bom esconde problemas que só aparecem ao vivo: ordem rejeitada por lote mínimo, desconexão, horário de rolagem com spread alto, diferença entre preço do gráfico e preço da corretora. Por isso:
- Rode em demo por algumas semanas e compare cada operação com o que o backtest faria.
- Use um servidor (VPS) se o robô precisar ficar ligado 24 horas, como em cripto.
- Registre tudo em log: sinal, preço pedido, preço executado, motivo da saída.
- Tenha um “botão de desligar”: limite de perda diária e número máximo de ordens.
Se o robô operar cripto por API, proteja as chaves: permissão só de leitura e negociação, nunca de saque, e lista de IPs autorizados. O passo a passo está em API de corretora cripto.
Passo 6: tamanho de posição e controle de risco
Roteiro de risco do robô
- Risco por operaçãoDefina um percentual fixo, como 0,5% a 1% do capital.
- Lote pelo stopCalcule a quantidade a partir da distância do stop, não por palpite.
- Limite diárioDesligue o robô se a perda do dia passar de um teto, como 3%.
- Drawdown máximoSe a queda do capital passar do pior caso do backtest, pare e reavalie.
Exemplo: com US$ 1.000 e risco de 1%, a perda máxima por operação é US$ 10. Se o stop fica 2% abaixo da entrada, a posição é de US$ 500 (10 ÷ 0,02). A lógica completa, com tabelas de drawdown, está em gestão de risco no trading. Fuja de lógicas de martingale, que dobram a posição após perdas: elas parecem funcionar até a sequência ruim que zera a conta.
Para ver um robô sendo montado na prática com Python conectado ao MetaTrader 5, o vídeo abaixo mostra o processo do início ao fim.
Checklist antes de ligar o robô com dinheiro real
- Regras escritas, sem ambiguidade.
- Backtest com custos e vários anos, incluindo alta, queda e lateralização.
- Resultado out-of-sample coerente com o in-sample.
- Semanas de demo com execução parecida com a simulada.
- Tamanho de posição por risco, stop sempre ativo, limite diário.
- Chaves de API sem permissão de saque.
- Capital que você pode perder, sem alavancagem excessiva.
Criar o robô é um projeto de engenharia e de estatística ao mesmo tempo. Quem trata o código como a parte principal costuma descobrir, ao vivo, que o teste era otimista demais. Para entender o contexto geral, veja também o que é trading algorítmico.
Conteúdo informativo, não é recomendação de investimento.
Perguntas frequentes
Como criar um robô de trading?
Escreva regras objetivas de entrada, saída e tamanho de posição, programe em uma plataforma (Pine Script, MQL5 ou Python), faça backtest com custos, valide em dados fora da amostra, rode em conta demo e só então opere com pouco dinheiro.
Qual a melhor linguagem para criar robô trader?
Depende do mercado. Pine Script é a mais fácil para prototipar no TradingView. MQL5 executa ordens direto no MetaTrader 5 (forex e CFDs). Python é a mais flexível para cripto via API e para pesquisa com dados.
Dá para criar robô de trading sem programar?
Sim, com limitações. O Assistente MQL5 gera Expert Advisors a partir de módulos prontos, e corretoras cripto oferecem bots de grid e DCA configuráveis. Para estratégias próprias, programar dá mais controle.
Quanto tempo de teste é preciso antes de usar dinheiro real?
Não há prazo mágico. Um roteiro prudente é backtest com vários anos e diferentes regimes de mercado, validação out-of-sample e algumas semanas em conta demo comparando o resultado com o esperado.
Referências
Este conteúdo é informativo e não é recomendação de investimento. Encontrou um erro? Escreva para contato@boletimbitcoin.com.