Desenvolver um Expert Advisor (EA) e enviá‑lo ao MQL5 Market parece simples na teoria, mas na prática o caminho está cheio de armadilhas que podem transformar horas de codificação em um processo de revisão interminável. O objetivo aqui é mostrar, passo a passo, como superar essas barreiras: garantir que o código compile em todas as versões da plataforma, atender às exigências de documentação e ainda deixar o EA pronto para ser vendido ou distribuído sem surpresas desagradáveis.
Requisitos de publicação: o que o mercado realmente pede
- Compatibilidade. Seu EA deve rodar sem erros nas versões 600‑e‑mais recentes do MetaTrader 5. Teste em Strategy Tester usando o modo “Every tick based on real ticks”.
- Licença. Defina claramente se o produto será vendido, alugado ou oferecido como “freemium”. O MQL5 Market rejeita licenças ambíguas.
- Meta‑tags. Preencha título, descrição e palavras‑chave com foco em termos de busca reais (“grid trading”, “breakout scalper”).
O ponto crítico da otimização
Um EA otimizado demais pode ser penalizado por overfitting. A dica contra‑intuitiva: limite o número de parâmetros de entrada a 7‑10 e use a técnica “walk‑forward”.
| Etapa | Ação | Resultado esperado |
|---|---|---|
| 1 | Definir intervalo de teste (últimos 12 meses) | Base histórica robusta |
| 2 | Aplicar “Genetic Algorithm” | Parâmetros que generalizam |
| 3 | Walk‑forward 3‑meses | Validação externa |
Documentação: a ponte entre o código e o usuário
O MQL5 Market não aceita “readme.txt”. Você precisa criar um arquivo .html ou usar o editor interno. Inclua:
- Visão geral de 150‑200 palavras.
- Lista de parâmetros com descrição curta e faixa recomendada.
- Exemplo de uso real (ex.: “aplicado ao EURUSD 1‑H, o EA gera 3,2 % de lucro mensal”).
- Seção de “Limitações” – explique quando o EA pode falhar (volatilidade extrema, spreads acima de 3 pips).
Exemplos práticos para evitar erros comuns
Ao compilar, alguns desenvolvedores esquecem de definir #property strict. Isso gera avisos que o Market interpreta como “código não confiável”.
Teste rápido: abra o EA em um gráfico vazio, pressione F7 e observe se há warnings. Se houver, corrija antes de enviar.
Outro tropeço frequente é a dependência de indicadores personalizados que não foram incluídos no pacote. Sempre compacte .mqh e .ex5 junto.
FAQ resumido
- Posso publicar um EA que ainda está em beta? Não. O Market exige estabilidade mínima de 95 % de execução sem crash.
- Qual a taxa de aprovação? Aproximadamente 70 % na primeira tentativa, se seguir as diretrizes acima.
- Como lidar com feedback negativo? Atualize o EA dentro de 30 dias, inclua changelog detalhado e responda ao comprador.
Com esses passos, a diferença entre “subir o arquivo e esperar” e “lançar um produto pronto para o mercado” diminui drasticamente. Se precisar de um checklist pronto para download, veja nosso modelo de publicação. O próximo passo é abrir o MetaEditor, aplicar as correções listadas e submeter o EA. Boa sorte.
Primeiros passos após a compra
- Faça o download do .mq5 e do .ex5 diretamente da sua conta MQL5.
- Descompacte em
C:\Users\SeuUsuário\AppData\Roaming\MetaQuotes\Terminal\GUID\MQL5\Experts. - Abra o MetaEditor e verifique se o código compila sem erros (F7).
- Ative o Expert no gráfico: Navigator → Experts → Arraste → Solte.
Configuração inicial e módulos prioritários
| Módulo | Objetivo | Configuração padrão |
|---|---|---|
| Input Manager | Centraliza parâmetros de risco e lote | Risk=2 %; MaxSpread=2 pips |
| Signal Filter | Bloqueia sinais fora de horário de alta liquidez | Start=08:00; End=20:00 |
| Trade Engine | Executa ordens com controle de slippage | Slippage=3 pips |
Rotina recomendada de teste
- Abra o Strategy Tester (Ctrl+R).
- Selecione o par, período e Model “Every tick”.
- Defina From = 01/01/2022, To = 31/12/2022.
- Marque “Optimization” e escolha “Genetic Algorithm”.
- Execute e analise o Report focando em Profit Factor > 1.5 e Max Drawdown < 20 %.
Checklist operacional antes da publicação
- ✅ Código compila em MT5 sem warnings.
- ✅ Todas as variáveis de entrada têm descrição clara.
- ✅ O Expert possui stop‑loss e take‑profit configuráveis.
- ✅ O log gera mensagens de depuração somente em modo
DEBUG. - ✅ A licença de uso está definida (Free, Paid, Subscription).
- ✅ O pacote inclui README.pdf, Changelog.txt e screenshots de performance.
Erros comuns e como evitá‑los
- Hard‑coded symbols: substitua por
Symbol()para garantir compatibilidade. - Uso de Sleep() em loops: gera “freeze” no cliente; prefira
EventSetTimer(). - Memória não liberada: chame
ArrayFree()ao final de cada ciclo de cálculo. - Dependência de arquivos externos: inclua tudo no pacote .mq5 ou use
FileIsExist()com fallback.
Fluxograma simplificado de publicação
1. Teste unitário → 2. Otimização → 3. Revisão de documentação → 4. Criação de pacote .zip → 5. Upload no MQL5 Market → 6. Aprovação da equipe → 7. Lançamento.
Ao seguir este fluxo, o tempo médio entre a finalização do código e a aprovação oficial costuma ficar entre 48 h e 72 h. Caso a revisão aponte falhas, corrija imediatamente e reenvie; a maioria das recusas são por incomplete documentation ou excessive drawdown.
Para aprofundar a estratégia de precificação e maximizar royalties, consulte o guia oficial de monetização do MQL5 Market.
Perfil ideal e limitações práticas
Quem cria EAs para vender no MQL5 Market precisa ser mais que um programador; é preciso entender o mercado, a competição e a burocracia da publicação. Este bloco destina‑se a quem já tem ao menos um robô funcional e busca transformar código bruto em produto pronto para compra.
Quem deve usar
- Desenvolvedores com EAs operacionais e histórico de trades verificável.
- Freelancers que pretendem criar fontes de renda passiva via royalties.
- Quants que dominam otimização mas ainda não dominam a documentação exigida pelo Market.
Quem não terá bom aproveitamento
- Iniciantes que ainda não passaram pelo teste de back‑testing em múltiplos pares.
- Programadores que não conseguem escrever um manual de usuário mínimo.
- Quem pretende lançar versões “beta” sem garantia de estabilidade – o Market rejeita códigos que reclamam de falhas frequentes.
Limitações contextuais
O Market impõe limites rígidos de tamanho de arquivo (2 MB), de dependências (sem DLLs externas) e de compliance (sem técnicas proibidas como “grid” puro). Além disso, a política de revisão pode demorar de 48 h a 5 dias úteis, e cada mudança requer nova submissão.
FAQ contextual
- Posso usar indicadores próprios? Sim, desde que estejam incluídos no pacote e licenciados sob a mesma condição.
- Preciso de certificado SSL? Não, a plataforma cuida da transmissão segura.
- Quanto é o royalty? 10 % do preço de venda para a primeira 100 mil compras, reduzindo para 5 % depois.
Checklist rápido antes da submissão
| Item | Condição |
|---|---|
| Back‑test em 3 pares | ✅ |
| Relatório de otimização | ✅ |
| Manual do usuário (mínimo 2 páginas) | ✅ |
| Arquivos dentro do limite de 2 MB | ✅ |
| Teste de compatibilidade com MetaTrader 5 v5.0+ | ✅ |
Parecer editorial equilibrado
O produto serve como um checklist estratégico: traz tudo que falta na maioria dos tutoriais soltos – exigência de documentação, ajustes de otimização e preparação para a revisão. Não é um curso completo de MQL5; quem busca “passar a perna” no Market vai se frustrar. A expectativa realista é que, cumprindo o checklist, o desenvolvedor aumente suas chances de aprovação em cerca de 70 %.
Mini cenários reais
Cenário A: João, quants freelancer, tem um EA com 95 % de acurácia em EURUSD. Ele completa o checklist, inclui um PDF de 3 páginas e submete. Aprovação em 3 dias, primeiro mês de vendas gera 0,8 % de royalties. Cenário B: Maria, recém‑formada, tenta publicar sem teste em múltiplos ativos. O Market devolve com “insufficient testing”. Ela perde duas semanas refazendo back‑tests.
Próximos passos
Depois da aprovação, monitore avaliações e atualize o EA a cada 3‑4 meses para manter a compatibilidade. Use o canal de suporte do Market para esclarecer dúvidas técnicas; o tempo de resposta costuma ser within 24 h.


