MCP no MetaTrader 5: a IA que Roda Backtest e Otimiza seu EA
O MCP no MetaTrader 5 é o que transforma o AI Assistant de um chat em um agente: em vez de só responder, ele executa ações dentro da plataforma. Com a build 6180, lançada no início de setembro de 2026, a IA passou a ler relatórios do Strategy Tester, lançar otimizações e ler os logs do seu Expert Advisor. Neste guia você vê o que já dá para fazer, um fluxo prático de otimização com IA e os cuidados para não cair em overfitting.
⚡ Resumo em 30 segundos
- MCP é um padrão aberto que deixa agentes de IA usarem as funções de um aplicativo.
- O MT5 tem MCP nativo desde a build 6060 (fim de jul/2026).
- Na build 6180 a IA ganhou acesso ao Strategy Tester: relatórios, otimização, configurações e logs.
- A MetaQuotes diz que agentes externos como Claude Code e OpenAI Codex também podem se conectar.
- Otimizar com IA é rápido, mas a validação contra overfitting continua sendo sua.
O que é MCP (em 1 minuto)
MCP (Model Context Protocol) é um padrão aberto para aplicativos conversarem com agentes de IA. O aplicativo oferece “ferramentas” (ler cotações, adicionar um indicador, rodar um teste) e o agente decide quais usar e em que ordem.
A diferença para um chatbot comum é essa: o agente quebra uma tarefa complexa em uma sequência de ações e usa as capacidades do aplicativo conectado para executá-las. No MT5, isso significa pedir “otimize este EA e compare os melhores resultados” e ver a IA configurar o teste, esperar e ler o relatório.
Se você ainda não ativou o assistente, comece pelo guia do AI Assistant do MT5.
O que o MCP no MetaTrader 5 já faz (build a build)
| Build | Ferramentas MCP |
|---|---|
| 6060 (jul/2026) | Acesso a dados de mercado, análise de gráficos e do ambiente de trading e execução de operações por uma interface padrão. Suporte a agentes externos compatíveis com MCP. |
| 6090 (jul/2026) | Adicionar indicadores ao gráfico e listar os indicadores disponíveis com seus parâmetros. |
| 6140 (ago/2026) | Ferramentas MCP otimizadas e nova ferramenta para parar o Strategy Tester. |
| 6180 (set/2026) | Ler relatórios do Strategy Tester, lançar otimização com critérios definidos, ler as configurações atuais do testador, ler o log do testador, adicionar indicadores com parâmetros personalizados e ler os logs do terminal e do EA. |
Fluxo prático: otimizando um EA com a IA
Vamos usar como exemplo um EA de cruzamento de médias, como o do guia do AI Assistant. A sequência de pedidos abaixo aproveita as ferramentas da build 6180:
- Confirmar a configuração antes de gastar horas de CPU:
Leia as configurações atuais do Strategy Tester e confirme: EA, símbolo, período, datas, modelagem e depósito inicial.
- Lançar a otimização com faixas e critério claros:
Lance uma otimização do EA "CruzamentoEMA" em EURUSD H1, de 01/01/2024 a 31/12/2025, variando: - EMA rápida de 10 a 30 (passo 2) - EMA lenta de 40 a 100 (passo 5) Critério: fator de recuperação.
- Ler e comparar os resultados:
Quando terminar, leia o relatório e compare os 5 melhores passes: lucro líquido, drawdown máximo, fator de lucro e número de trades.
- Procurar overfitting:
Esses 5 passes estão numa região estável de parâmetros ou são picos isolados? Aponte sinais de overfitting.
- Checar erros:
Leia o log do testador e os logs do EA e liste erros ou avisos.
⚠️ Importante
A IA lê os números do relatório, mas a decisão de confiar neles é sua. Um passe com lucro alto e poucas operações quase sempre é overfitting.
Checklist anti-overfitting (use com a IA)
- Separe um período fora da amostra: otimize em 2024–2025 e valide em 2026 sem mexer nos parâmetros.
- Faça walk-forward: otimizar e validar em janelas que andam no tempo. Tenho um passo a passo em Walk-Forward Analysis com Python.
- Exija amostra mínima: descarte passes com poucas operações (use 100+ como referência).
- Prefira platôs a picos: se EMA 18 funciona e EMA 16 e 20 são desastre, não há robustez.
- Inclua custos reais: spread, comissão e swap da sua corretora.
- Faça forward test em demo antes de qualquer conta real.
Quando testei 20 estratégias com dados reais, a maioria não sobreviveu fora da amostra. Os números estão em 70% de acerto é mito.
E o Claude Code, o Codex e outros agentes externos?
A MetaQuotes afirma que, além do assistente embutido, sistemas externos compatíveis com MCP, como OpenAI Codex e Claude Code, podem se conectar ao MT5. Até a data deste artigo, porém, as notas de versão não trazem um passo a passo oficial dessa conexão. Antes de montar algo, confira a documentação da MetaQuotes e as configurações de IA do seu terminal.
Uma alternativa que já funciona é um servidor MCP próprio em Python, usando a biblioteca oficial MetaTrader5. A comunidade MQL5 publicou um artigo sobre essa abordagem em abril de 2026. Abaixo, um exemplo mínimo, somente leitura:
# pip install mcp MetaTrader5
from mcp.server.fastmcp import FastMCP
import MetaTrader5 as mt5
mcp = FastMCP("mt5-leitura")
def conectar():
# usa o terminal MT5 já aberto e logado nesta máquina
if not mt5.initialize():
raise RuntimeError(f"Falha ao conectar: {mt5.last_error()}")
@mcp.tool()
def conta() -> dict:
"""Saldo, patrimônio, margem livre e alavancagem da conta."""
conectar()
info = mt5.account_info()
return {"saldo": info.balance, "patrimonio": info.equity,
"margem_livre": info.margin_free, "alavancagem": info.leverage}
@mcp.tool()
def candles(simbolo: str, quantidade: int = 100) -> list:
"""Últimos candles H1 do símbolo."""
conectar()
rates = mt5.copy_rates_from_pos(simbolo, mt5.TIMEFRAME_H1, 0, quantidade)
if rates is None:
return []
return [{"time": int(r["time"]), "open": float(r["open"]),
"high": float(r["high"]), "low": float(r["low"]),
"close": float(r["close"])} for r in rates]
@mcp.tool()
def posicoes() -> list:
"""Posições abertas (somente leitura)."""
conectar()
return [p._asdict() for p in (mt5.positions_get() or [])]
if __name__ == "__main__":
mcp.run() # transporte stdio
Para usar no Claude Desktop, adicione o servidor ao arquivo claude_desktop_config.json (no Windows, em %APPDATA%\Claude\):
{
"mcpServers": {
"mt5": {
"command": "C:\\Python312\\python.exe",
"args": ["C:\\mt5-mcp\\server.py"]
}
}
}
No Claude Code, o equivalente é claude mcp add mt5 -- python C:\mt5-mcp\server.py. Ajuste os caminhos para os da sua máquina.
⚠️ Limitações dessa alternativa
- A biblioteca
MetaTrader5só roda no Windows, na mesma máquina do terminal. - Ela é single-thread: chamadas simultâneas podem dar problema.
- Comece somente leitura. Se adicionar ferramentas de ordem, exija confirmação e teste em demo.
Segurança: o que eu não faria
- Não daria permissão de operar a um agente em conta real. No AI Assistant, deixe as operações proibidas ou com confirmação manual.
- Não colaria a senha da conta no chat nem em arquivos que o agente lê.
- Usaria os níveis de acesso da build 6060, se sua corretora oferecer: a senha de “Trader” permite operar, mas não sacar nem trocar senha.
- Deixaria rede e linha de comando desligadas para a IA, a menos que precise.
- Revisaria os logs do terminal e do EA depois de cada sessão com o agente.
Perguntas frequentes
O que é MCP no MetaTrader 5?
É o suporte nativo do MT5 ao Model Context Protocol, que permite a agentes de IA acessar dados de mercado, gráficos, o ambiente de trading e, desde a build 6180, o Strategy Tester.
A IA consegue otimizar meu EA sozinha?
Desde a build 6180 ela lança otimizações e lê os relatórios. Você ainda define as faixas de parâmetros e o critério, e decide se o resultado é robusto.
Preciso saber programar?
Para usar o MCP pelo AI Assistant embutido, não. Para montar um servidor MCP próprio em Python, noções básicas de Python ajudam bastante.
É seguro?
Depende das permissões. Com operações proibidas ou sob confirmação, e testes em demo, o risco fica sob controle.
Fontes: notas da build 6060 · anúncio da build 6180 · histórico de versões do MT5 · artigo MQL5 sobre servidor MCP em Python. Informações conferidas em setembro de 2026.
🚀 Para testar otimizações e agentes sem arriscar dinheiro, demo gratuita Deriv MT5 ($10.000 virtuais):
