MagicNumber: como projetar para vários EAs na mesma conta
Sumário
Conclusão: o MagicNumber é a "etiqueta" do EA. Não o duplique dentro de uma conta
Se você vai rodar vários EAs em uma única conta, a primeira coisa a definir é a atribuição dos MagicNumbers. O MagicNumber é o número anexado a ordens e posições para indicar "qual EA a enviou". A maioria dos EAs usa esse número para decidir quais posições são suas.
Quando o número se repete, um EA pode confundir a posição de outro com a sua e fechá-la ou alterar o stop por conta própria. Não aparece nenhum erro e, na tela, os dois EAs parecem funcionar normalmente, o que torna o problema difícil de perceber.
Comparação de corretoras recomendadas →
🎁 Baixar EA grátis📧 Curso gratuito por e-mail (8 e-mails) + pacote com 13 indicadores MT5 exclusivo para inscritos
* Privacidade rigorosamente protegida. Você pode cancelar a inscrição a qualquer momento.
Como funciona: como o EA reconhece "as próprias posições"
No MT5, o EA pode anexar um MagicNumber numérico ao enviar uma ordem. Esse valor fica registrado na posição (POSITION_MAGIC) e no histórico de negociações (DEAL_MAGIC). Em ordens manuais, normalmente o valor é 0.
Um EA típico filtra as posições da seguinte forma ao contá-las ou gerenciá-las:
- O ativo é o mesmo do seu gráfico?
- O MagicNumber é igual ao valor configurado nele?
Somente as posições que atendem às duas condições são tratadas como "suas". O ponto importante é que o próprio MT5 não impede MagicNumbers duplicados. O número é apenas uma convenção; respeitá-la depende de quem opera e de como o EA foi construído.
O que acontece quando há duplicidade
Se dois EAs rodam no mesmo ativo com o mesmo MagicNumber, podem ocorrer situações como estas:
- Bloqueio de entradas: um EA com "máximo de 1 posição" conta a posição do outro EA como sua e deixa de abrir novas entradas
- Fechamento da posição alheia: quando surge o sinal de saída, ele fecha também a posição do outro EA
- Sobrescrita de stops: o trailing stop move até o SL da posição do outro EA
- Cálculo de lote distorcido: em EAs que definem o lote conforme o número de posições abertas, a exposição fica maior do que o previsto
Nada disso aparece no backtest, porque o testador roda um EA de cada vez. Essa é uma das causas da diferença entre o resultado dos testes e a operação real.
Rastreamento de fechamentos parciais
Em EAs que usam fechamento parcial, é preciso ter cuidado também com o rastreamento dos registros. Em contas hedging, mesmo após um fechamento parcial o identificador da posição (POSITION_IDENTIFIER) não muda, e ele permanece nas negociações de saída do histórico como DEAL_POSITION_ID. Para consolidar depois o resultado de cada EA, o mais seguro é filtrar pelo MagicNumber e agrupar por esse ID da posição.
No entanto, o MagicNumber gravado na negociação de saída pode ser o de quem enviou a ordem de fechamento. Se você fechar manualmente uma parte de uma posição aberta por um EA, apenas essa operação ficará com o número 0, e uma contagem feita só pelo MagicNumber pode não bater. O campo de comentário também pode ser reescrito pela corretora ou pelo servidor, por isso não é confiável como pista de identificação.
Checklist antes de configurar
| Item a verificar | Como verificar | Risco se for ignorado |
|---|---|---|
| Os MagicNumbers de cada EA estão sem duplicidade? | Liste e anote os valores na tela de parâmetros de cada EA | Interferência em fechamentos e alterações de SL |
| Ao usar o mesmo EA em vários gráficos, os números foram separados? | Use números diferentes mesmo para ativos ou timeframes diferentes | Confusão em EAs que não olham o ativo |
| A conta é do tipo hedging? | Confira nas informações da conta | Em contas netting, posições do mesmo ativo são somadas em uma só e não podem ser separadas por número |
| O número foi alterado com o EA em operação? | Antes de mudar, confirme que não há posições abertas | Posições existentes ficam sem gerenciamento |
| Há mistura com operações manuais? | Faça as operações manuais em outra conta | Contagem distorcida e registros incompletos por fechamentos manuais |
Se você usar uma regra simples, como "uma faixa de dígitos por EA", não vai se perder ao consultar o histórico depois. A localização da tela de configuração está reunida em Como configurar o EA.
Limites e cuidados
Separar os MagicNumbers não evita tudo. Vale ser transparente quanto a isso.
- Não funciona com EAs que ignoram o MagicNumber: EAs que filtram só pelo ativo, ou que gerenciam todas as posições da conta, interferem mesmo com números diferentes. Se você misturar EAs de terceiros, não temos como saber como eles foram construídos.
- Colisão de valores padrão: muitos EAs são distribuídos com o valor padrão. É bem possível que EAs de desenvolvedores diferentes tenham, por coincidência, o mesmo valor inicial. Confira sempre o valor por conta própria.
- EAs que operam vários ativos: quando um único EA opera vários ativos, como ATLAS e TRINITY, ele passa a disputar os mesmos ativos com outros EAs. Mesmo com números diferentes, a margem é compartilhada, então continua possível que os drawdowns coincidam.
- A gestão de capital não é separada: o número separa apenas o gerenciamento das posições. O nível de margem e o stop out são definidos para a conta inteira. Se um EA tiver uma perda grande, os outros também serão afetados.
Para evitar interferências com segurança, o mais simples é separar uma conta para cada EA. Encare o projeto dos números como o preparo mínimo para quando você decidir operar tudo na mesma conta.
Resumo
- O MagicNumber é o número de identificação do EA gravado em ordens, posições e histórico, e o MT5 não impede duplicidade
- Com duplicidade, podem ocorrer bloqueio de entradas, fechamento de posições de outros EAs, sobrescrita de SL e cálculo de lote distorcido. Isso não aparece no backtest
- O rastreamento de fechamentos parciais combina MagicNumber e ID da posição. Fechamentos manuais podem desalinhar os registros
- Em contas netting, não é possível separar posições por número. Para vários EAs, use uma conta hedging
- Mesmo com números separados, a margem continua compartilhada. Para evitar interferência com segurança, separe as contas
Mais dicas de operação estão reunidas em Conhecimento sobre EAs e MT5.
Relacionados
2026-11-02
Ordens e posições no MT5: evite acidentes com netting
2026-10-29
OnTick e OnTimer no MQL5 | Como usar cada um no EA
2026-10-20
Fuso do servidor pode quebrar o filtro de horário
2026-10-19
Backtest não reproduz? 5 pontos a verificar no EA
📧 Curso gratuito por e-mail (8 e-mails) + pacote com 13 indicadores MT5 exclusivo para inscritos
* Privacidade rigorosamente protegida. Você pode cancelar a inscrição a qualquer momento.
Tem alguma dúvida sobre EAs ou Forex?
Você pode publicá-la no fórum de trading da Nattzy (cadastro gratuito). Dúvidas além deste artigo também são bem-vindas — configuração de EAs, escolha de corretora e mais.
Perguntar na Nattzy ↗