Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
- Visualizaciones:
- 106
- Ranking:
- Publicado:
- 2025.06.06 11:53
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
XAUUSD (Oro) es un instrumento de negociación popular en el mercado de divisas debido a su alta volatilidad y potencial de ganancias. Sin embargo, las principales noticias económicas -como las nóminas no agrícolas, las decisiones de la Reserva Federal sobre los tipos de interés o los anuncios del Banco Central Europeo- pueden provocar importantes subidas de los precios, lo que supone un riesgo para las estrategias de negociación automatizada. Para gestionar estos riesgos, un Filtro de Noticias en un Asesor Experto (EA) puede pausar la negociación durante los períodos de noticias de alto impacto. En este artículo, le mostraré cómo crear un Filtro de Noticias simple para operar con XAUUSD en MT5 y compartiré un ejemplo de código práctico para comenzar.
¿Por qué usar un filtro de noticias para operar con XAUUSD?
Las noticias relacionadas con el USD, la GBP o el EUR a menudo provocan movimientos bruscos en los precios del XAUUSD. Por ejemplo, el anuncio de una subida de tipos de la Reserva Federal puede hacer que los precios del oro caigan rápidamente, provocando stop-losses o pérdidas inesperadas en un sistema de trading automatizado. Un filtro de noticias ayuda:
- Detener las operaciones: Detener temporalmente las operaciones antes y después de los principales acontecimientos para evitar la volatilidad.
- Reducir el riesgo: proteger su cuenta de las oscilaciones repentinas del mercado.
- Mejorar la consistencia: Asegurando que su EA opera sólo en condiciones de mercado estables.
En la siguiente sección, le proporcionaré un simple fragmento de código MQL5 para implementar un Filtro de Noticias para su estrategia de trading XAUUSD.
//+------------------------------------------------------------------+ //| Filtro de noticias simple para operar con XAUUSD| //+------------------------------------------------------------------+ #property copyright "Duy Van NGUY" #property link " https://www.mql5.com/es/users/wazatrader" #property version "1.00" input int MinutesBeforeNews = 15; // Minutos antes de la noticia para pausar la negociación input int MinutesAfterNews = 15; // Minutos después de la noticia para reanudar la negociación // Tiempos de noticias simulados (para fines de demostración, sustitúyalo por una fuente de datos de noticias reales) datetime newsTimes[] = {D'2025.05.07 14:30:00'}; // Ejemplo: Noticias a las 14:30 del 7 de mayo de 2025 //+------------------------------------------------------------------+ //| Comprueba si la negociación debe ser pausada debido a las noticias. //+------------------------------------------------------------------+ bool IsNewsTime() { datetime currentTime = TimeCurrent(); for(int i = 0; i < ArraySize(newsTimes); i++) { datetime newsTime = newsTimes[i]; datetime startPause = newsTime - MinutesBeforeNews * 60; // Pausa X minutos antes de las noticias datetime endPause = newsTime + MinutesAfterNews * 60; // Reanudar X minutos después de la noticia if(currentTime >= startPause && currentTime <= endPause) { Print("News Filter: Trading paused due to upcoming news at ", newsTime); return true; // Pausa comercial } } return false; // Comercio seguro } //+------------------------------------------------------------------+ //| Función de inicialización experta| //+------------------------------------------------------------------+ int OnInit() { return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Función tick experto| //+------------------------------------------------------------------+ void OnTick() { if(IsNewsTime()) { return; // Saltar la negociación durante las noticias } // Añada aquí su lógica de negociación XAUUSD Print("Safe to trade XAUUSD"); } //+------------------------------------------------------------------+ //| Función de desinicialización experta| //+------------------------------------------------------------------+ void OnDeinit(const int reason) { // Limpiar el código si es necesario } //+------------------------------------------------------------------+
Explicación del código
- Entradas: MinutesBeforeNews y MinutesAfterNews le permiten definir la ventana de tiempo (en minutos) para pausar las operaciones antes y después de un evento de noticias.
- Tiempos de Noticias: La matriz newsTimes contiene horas predefinidas de eventos de noticias (por ejemplo, 7 de mayo de 2025, 14:30). En la práctica, puede sustituir esto por una fuente de noticias real de una API de calendario económico.
- Lógica: La función IsNewsTime() compara la hora actual(TimeCurrent()) con las horas de los eventos de noticias. Si la hora actual cae dentro de la ventana de pausa, la negociación se detiene.
- Utilización: Integre este filtro en su EA llamando a IsNewsTime() en la función OnTick() antes de ejecutar cualquier operación.
Mejore sus operaciones en XAUUSD con XAU OneShot EA MT5
Mientras que el código anterior proporciona un filtro de noticias básico, es posible que desee una solución más robusta para el comercio XAUUSD. Es por eso que he desarrollado XAU OneShot EA MT5, un Asesor Experto diseñado específicamente para el comercio de oro con una gestión avanzada del riesgo. Incluye:
- Un Filtro de Noticias incorporado que detiene la operativa 15 minutos antes y después de los principales eventos de noticias USD/GBP/EUR.
- Auto Break-Even y Trailing Stop para bloquear los beneficios.
- Take Profit parcial (cierra el 50% de la posición) para asegurar las ganancias mientras se deja correr el resto.
- Límite diario de pérdidas para proteger su cuenta de caídas excesivas.
Conclusión
La incorporación de un filtro de noticias en su estrategia de negociación XAUUSD es una forma sencilla pero eficaz de gestionar los riesgos durante los períodos de noticias volátiles. El código proporcionado en este artículo puede servir como punto de partida para el desarrollo de su EA. Para una solución más completa, pruebe XAU OneShot EA MT5 para llevar sus operaciones con oro al siguiente nivel. ¡Feliz trading!
Traducción del inglés realizada por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/en/code/59130

Es un indicador utilizado para determinar la tendencia y el nivel de soporte y resistencia del mercado. Cuando se dispone de datos de volumen, se calcula utilizando el MFI, si no, se calcula utilizando el RSI. Momentum: RSI y MFI Volatilidad: ATR

Interfaz de devolución de llamada para temporizador

Nivel VWAP dinámico que puede promediarse a lo largo de varios días

El indicador T3 es una media móvil avanzada que combina seis medias móviles exponenciales para proporcionar una acción del precio más suave con un retraso reducido en comparación con las medias móviles tradicionales.