Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Twitter!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Scripts

Creating a Simple News Filter for XAUUSD Trading on MT5 - script para MetaTrader 5

Visualizações:
62
Avaliação:
(2)
Publicado:
2025.06.06 11:53
Freelance MQL5 Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

O XAUUSD (ouro) é um instrumento de negociação popular no mercado cambial devido à sua alta volatilidade e potencial de lucro. No entanto, os principais eventos de notícias econômicas - como Non-Farm Payrolls, decisões sobre a taxa de juros do Fed ou anúncios do Banco Central Europeu - podem causar picos de preços significativos, colocando em risco as estratégias de negociação automatizadas. Para gerenciar esses riscos, um filtro de notícias em um Expert Advisor (EA) pode pausar a negociação durante períodos de notícias de alto impacto. Neste artigo, mostrarei como criar um filtro de notícias simples para a negociação do XAUUSD no MT5 e compartilharei um exemplo prático de código para você começar.

Por que usar um filtro de notícias para negociar com o XAUUSD?

Os eventos noticiosos relacionados ao dólar, à libra esterlina ou ao euro geralmente levam a movimentos bruscos nos preços do XAUUSD. Por exemplo, um anúncio de aumento da taxa do Fed pode fazer com que os preços do ouro caiam rapidamente, acionando stop-loss ou perdas inesperadas em um sistema de negociação automatizado. Um filtro de notícias ajuda:

  • Pausar a negociação: Interromper temporariamente as negociações antes e depois dos principais eventos noticiosos para evitar a volatilidade.
  • Reduzir o risco: proteger sua conta contra oscilações repentinas do mercado.
  • Melhorar a consistência: Garantir que seu EA negocie somente em condições de mercado estáveis.

Na próxima seção, apresentarei um trecho de código MQL5 simples para implementar um filtro de notícias em sua estratégia de negociação XAUUSD.

//+------------------------------------------------------------------+
//| Filtro de notícias simples para negociação do XAUUSD|
//+------------------------------------------------------------------+
#property copyright "Duy Van NGUY"
#property link      "
https://www.mql5.com/pt/users/wazatrader"
#property version   "1.00"

input int MinutesBeforeNews = 15; // Minutos antes da notícia para pausar a negociação
input int MinutesAfterNews  = 15; // Minutos após a notícia para retomar a negociação

// Tempos de notícias simulados (para fins de demonstração, substitua por uma fonte de dados de notícias reais)
datetime newsTimes[] = {D'2025.05.07 14:30:00'}; // Exemplo: Notícias às 14:30 em 7 de maio de 2025

//+------------------------------------------------------------------+
//| Verificar se a negociação deve ser pausada devido a notícias
//+------------------------------------------------------------------+
bool IsNewsTime()
{
   datetime currentTime = TimeCurrent();
   
   for(int i = 0; i < ArraySize(newsTimes); i++)
   {
      datetime newsTime = newsTimes[i];
      datetime startPause = newsTime - MinutesBeforeNews * 60; // Pausa de X minutos antes das notícias
      datetime endPause = newsTime + MinutesAfterNews * 60;   // Retomar X minutos após a notícia
      
      if(currentTime >= startPause && currentTime <= endPause)
      {
         Print("News Filter: Trading paused due to upcoming news at ", newsTime);
         return true; // Pausa na negociação
      }
   }
   
   return false; // Seguro para negociar
}

//+------------------------------------------------------------------+
//| Função de inicialização especializada|
//+------------------------------------------------------------------+
int OnInit()
{
   return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| Função de tique de especialista|
//+------------------------------------------------------------------+
void OnTick()
{
   if(IsNewsTime())
   {
      return; // Ignorar a negociação durante o período de notícias
   }
   
   // Adicione sua lógica de negociação XAUUSD aqui
   Print("Safe to trade XAUUSD");
}

//+------------------------------------------------------------------+
//| Função de desinicialização de especialista|
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
   // Código de limpeza, se necessário
}
//+------------------------------------------------------------------+

Explicação do código

  • Entradas: MinutesBeforeNews e MinutesAfterNews permitem que você defina a janela de tempo (em minutos) para pausar a negociação antes e depois de um evento de notícias.
  • Horários das notícias: A matriz newsTimes contém horários predefinidos de eventos de notícias (por exemplo, 7 de maio de 2025, 14:30). Na prática, você pode substituir isso por um feed de notícias real de uma API de calendário econômico.
  • Lógica: A função IsNewsTime() compara a hora atual(TimeCurrent()) com os horários dos eventos de notícias. Se a hora atual estiver dentro da janela de pausa, a negociação será interrompida.
  • Uso: Integre esse filtro em seu EA chamando IsNewsTime() na função OnTick() antes de executar qualquer negociação.

Aprimore sua negociação no XAUUSD com o XAU OneShot EA MT5

Embora o código acima forneça um filtro de notícias básico, talvez você queira uma solução mais robusta para a negociação do XAUUSD. É por isso que desenvolvi o XAU OneShot EA MT5, um Expert Advisor projetado especificamente para negociar ouro com gerenciamento avançado de risco. Ele inclui:

  • Um filtro de notícias integrado que pausa a negociação 15 minutos antes e depois dos principais eventos de notícias sobre USD/GBP/EUR.
  • Break-Even automático e Trailing Stop para garantir lucros.
  • Take Profit parcial (fecha 50% da posição) para garantir ganhos enquanto deixa o restante correr.
  • Limite diário de perdas para proteger sua conta contra rebaixamentos excessivos.

Conclusão

A incorporação de um filtro de notícias em sua estratégia de negociação XAUUSD é uma maneira simples, mas eficaz, de gerenciar riscos durante períodos de notícias voláteis. O código fornecido neste artigo pode servir como ponto de partida para o desenvolvimento de seu EA. Para obter uma solução mais abrangente, experimente o XAU OneShot EA MT5 e leve sua negociação de ouro para o próximo nível. Boas negociações!


Traduzido do inglês pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/en/code/59130

AlphaTrend AlphaTrend

É um indicador usado para determinar a tendência e o nível de suporte e resistência do mercado. Quando os dados de volume estão disponíveis, ele calcula usando o MFI; caso contrário, calcula usando o RSI. Momentum: RSI e MFI Volatilidade: ATR

Temporizador Temporizador

Interface de retorno de chamada para o cronômetro

Multi-Day Dynamic VWAP Multi-Day Dynamic VWAP

Nível dinâmico de VWAP que pode ser calculado como média em vários dias

T3 Moving Average T3 Moving Average

O Indicador T3 é uma média móvel avançada que combina seis médias móveis exponenciais para proporcionar uma ação de preço mais suave com defasagem reduzida em comparação com as médias móveis tradicionais.