Se você já tentou programar um Expert Advisor (EA) que opere apenas quando o mercado está mais ativo, sabe que o timing pode ser a diferença entre lucro e prejuízo. Traders avançados costumam sincronizar suas estratégias com as sessões de Londres, Nova York ou Tóquio, mas poucos dominam a implementação prática do filtro de horário dentro do código MQL4/5. Essa lacuna gera dúvidas recorrentes: como inserir o time filter sem sobrecarregar o script? Qual a margem de erro ao usar a hora do servidor versus a hora local? E, principalmente, quando o ajuste de fuso horário pode desfazer todo o back‑test?
Como inserir o filtro de horário no EA
- Passo 1 – Defina a sessão: crie constantes que representem o início e o fim (ex.:
SessionStart=0200,SessionEnd=1200). - Passo 2 – Converta para o fuso do servidor: use
TimeToStruct()e ajuste comTimeGMTOffset(). Ignorar esse passo costuma gerar trades fora da janela desejada. - Passo 3 – Condicional no
OnTick():if (Hour()>=SessionStart && Hour(). A checagem simples evita chamadas desnecessárias.
Um ponto contra‑intuitivo: limitar o EA a apenas duas sessões pode melhorar o Sharpe, mas também reduz o número de oportunidades, elevando o risco de “over‑fitting”. Testes em dados históricos mostram que a variação de um único horário (por exemplo, mover o início de Londres de 08:00 para 07:30) pode mudar o retorno anual em até 12 %.
Limitações e onde o filtro falha
- Servidores que mudam de horário de verão sem aviso.
- Corretoras que operam em fusos diferentes do EUR/USD padrão.
- Back‑tests que não consideram gaps de liquidez nas transições de sessão.
Antes de aplicar o filtro, valide a consistência da hora do servidor e, se necessário, ajuste dinamicamente usando TimeCurrent() + TimeZoneShift(). Para quem busca um guia passo‑a‑passo com exemplos práticos, o curso Como Criar Expert Advisors Baseados em Horários de Sessão oferece scripts testados e planilhas de otimização.
Definição avançada por analogia
Imagine o mercado forex como um relógio mundial. Cada ponteiro representa uma sessão de negociação (Nova‑York, Londres, Tóquio). Um Expert Advisor (EA) que entende essa analogia age como um cronógrafo: dispara ou pausa as estratégias exatamente quando o ponteiro da sessão desejada alcança sua posição.
Funcionamento interno do Time Filter
O Time Filter é um módulo de código que consulta o TimeCurrent() do MetaTrader e verifica o intervalo configurado pelo usuário:
| Passo | Descrição |
|---|---|
| 1 | Captura a hora GMT do servidor. |
| 2 | Converte para o fuso da sessão (ex.: GMT‑5 para Nova‑York). |
| 3 | Compara contra StartHour e EndHour definidos no EA. |
| 4 | Retorna true se dentro do intervalo; caso contrário, bloqueia a execução de ordens. |
Essa lógica pode ser encapsulada em uma função IsSessionActive(), reutilizável em múltiplos EAs.
Origem e contexto de mercado
O uso de filtros por horário surgiu nos anos 2000, quando traders perceberam que a volatilidade varia drasticamente entre sessões. Londres, por exemplo, apresenta picos de liquidez que favorecem estratégias de breakout, enquanto Tóquio tende a gerar movimentos mais suaves, ideais para scalping.
Com a popularização das plataformas de negociação automática, desenvolvedores começaram a modularizar essa lógica, permitindo que qualquer estratégia fosse “agendada” sem reescrever código.
Benefícios percebidos e limitações reais
- Precisão temporal: evita “ruído” fora do horário alvo, reduzindo trades falsos.
- Gestão de risco aprimorada: concentra o risco nos períodos de maior probabilidade de acerto.
- Flexibilidade: um único EA pode alternar entre sessões diferentes ao mudar parâmetros.
Entretanto, há limitações que não devem ser ignoradas:
- Dependência da hora do servidor – servidores diferentes podem ter offset de até 2 horas.
- Eventos macro (notícias) podem romper a lógica horária, exigindo filtros adicionais.
- Backtesting pode gerar resultados inflacionados se o simulador não respeitar os fusos corretamente.
Aplicações comuns e estratégias avançadas
Os traders mais experientes combinam o Time Filter com outros módulos:
- Filtro de notícias: desativa o EA 30 min antes de anúncios de alta relevância.
- Gerenciamento de lotes dinâmico: aumenta o tamanho da posição nas sessões de alta volatilidade.
- Multi‑EA Scheduler: faz rodar EAs diferentes em sequência – por exemplo, um de breakout em Londres, seguido de um de mean‑reversion em Tóquio.
Checklist para implementação segura
- Verifique o fuso do servidor (
TimeGMTOffset()). - Teste o
IsSessionActive()em modo visualizador para confirmar os intervalos. - Inclua logs (
Print()) que indiquem quando o EA entra ou sai da sessão. - Combine com Trailing Stop adequado ao perfil de volatilidade da sessão.
- Realize backtest com dados de 1 ano ao menos, usando “Every tick” para alta precisão.
Recursos adicionais
Para quem deseja aprofundar o assunto, o curso Como Criar Expert Advisors Baseados em Horários de Sessão traz código-fonte completo, exemplos práticos e suporte especializado.
Por que o filtro temporal virou moeda corrente nos EAs?
Trading automatizado já não se resume a cruzar médias; o relógio agora dita quem sai ganhando.
O mercado forex roda 24 h, mas a maioria dos picos de volatilidade concentra‑se em janelas bem definidas: Londres, Nova York, Tóquio. Ignorar esse calendário equivale a colocar o carro no mesmo ponto sem trocar a marcha.
Alternativas populares ao “time filter” tradicional
- Calendário econômico integrado – ferramentas como o Economic Calendar da TradingView filtram oportunidades por evento, mas dependem de latência de dados.
- Indicadores de volatilidade – o ATR ou o Bollinger Band podem sinalizar “sessões agitadas”, embora não capturem a periodicidade exata.
- Machine‑learning adaptativo – algoritmos que aprendem a regular a frequência de trades, porém requerem poder computacional e dataset robusto.
Comparado a esses métodos, o time filter ainda entrega clareza operacional: define um bloco de tempo, ignora tudo fora dele. Simplicidade que se traduz em menor risco de overfitting.
Benchmark semântico: “Sessão vs. Estratégia”
| Critério | Filtro de horário | Indicador de volatilidade | ML adaptativo |
|---|---|---|---|
| Facilidade de implementação | Alta | Média | Baixa |
| Consistência de performance | Boa em mercados fluidos | Variável | Dependente de dados |
| Custo computacional | Negligível | Moderado | Elevado |
O ponto de ruptura costuma aparecer quando o trader tenta cobrir todas as sessões com um único EA. O resultado? Overtrade, slippage e, sobretudo, desgaste psicológico.
Aplicações reais citadas por traders
Um gestor de conta “A” relata usar o filtro para operar somente durante a sobreposição Londres‑Nova York, obtendo 1,4 × a taxa de vitória. Outro “B”, focado em scalping de 5 min, programou um EA que só abre posições entre 00:00‑02:00 GMT, quando o spread no EUR/USD estreita ao máximo.
Esses micro‑casos revelam um padrão: a restrição temporal cria “máquina de consistência”, reduzindo ruído de mercado e facilitando o cálculo de drawdown esperado.
Dúvidas recorrentes
- “E se o evento econômico mudar a dinâmica da sessão?” – ajuste dinâmico de horário ou inclusão de filtro de notícias pode mitigar.
- “Posso combinar filtros?” – sim, concatenar volatilidade e hora gera camada extra de segurança.
- “Quanto tempo devo testar?” – ao menos 3 meses de dados históricos, cobrindo todas as estações do ano.
Entidades relacionadas e microtemas conectados
Mercados de commodities (ouro, petróleo) têm sessões quase tão definidas quanto as moedas. Plataformas como MetaTrader 5 oferecem “Trading Sessions” nativamente, porém poucos tutoriais abordam a customização avançada que o produto “Como Criar Expert Advisors Baseados em Horários de Sessão” propõe.
Além disso, a ascensão de criptomoedas 24 h abre espaço para “filtros híbridos”: hora tradicional + volume de rede, criando oportunidades de arbitragem cruzada.
Para quem quer transformar a teoria em código funcional, o curso entrega scripts prontos, templates de back‑testing e um fórum de suporte onde usuários compartilham ajustes finos de horário. Não é só mais um “PDF”, é um ecossistema de implementação.
Se o seu objetivo é sair da mesmice e colocar o relógio no comando, o investimento vale a pena.




