BtcUsd Trader AI
- Asesores Expertos
- Bohdan Suvorov
- Versión: 2.52
- Actualizado: 28 febrero 2026
- Activaciones: 15
Versión: 2.52 | Timeframe: H1 | Optimizado para: XAUUSD & BTCUSD
1. Resumen ejecutivo
HedgeReset EA es un Asesor Experto automatizado para MetaTrader 5 construido en torno a una estrategia de cobertura neutral de mercado. Abre posiciones simultáneas de compra y venta de igual tamaño de lote, luego las gestiona a través de paradas dinámicas basadas en ATR, filtrado de operaciones consciente de la sesión y un mecanismo de reinicio del ciclo de beneficios.
El EA no predice la dirección del mercado. Por el contrario, se beneficia de la volatilidad: el lado que se mueva primero lo suficiente bloquea un trailing stop y, finalmente, cierra con beneficios, mientras que la posición contraria queda cubierta por el objetivo de ciclo neto. Está diseñado específicamente para instrumentos de alta volatilidad: Oro (XAUUSD) y Bitcoin (BTCUSD) en el marco temporal H1.
2. Lógica de la estrategia
2.1 Entrada - La cobertura
Cuando no hay posiciones abiertas y todos los filtros pasan, el EA abre simultáneamente una COMPRA en Ask y una VENTA en Bid con tamaños de lote idénticos. No se realiza ninguna predicción direccional. El ciclo comienza de nuevo independientemente de los resultados anteriores.
Filtros comprobados antes de la entrada:
- La sesión de mercado está activa ( SymbolInfoSessionTrade - horario del broker)
- El modo de negociación del símbolo no está DESHABILITADO ni CERRADO
- Spread actual ≤ Spread medio × InpSpreadMultiplier (por defecto ×2,5)
- El símbolo no es EURUSD (excluido por diseño)
2.2 Stop Loss & Take Profit - Basado en ATR
Stop Loss y Take Profit se calculan dinámicamente cada tick utilizando el indicador ATR(14):
Distancia SL= ATR(14) × InpATR_Multiplier(por defecto ×1.5) Distancia TP = Distancia SL × InpRR_Ratio (por defecto ×2.5)
Ambos valores están limitados a max(SYMBOL_TRADE_STOPS_LEVEL, SYMBOL_TRADE_FREEZE_LEVEL) + 3 puntos para evitar errores de [Paradas no válidas]. Este mínimo se aplica a la entrada y en cada modificación del trailing stop.
2.3 Tope dinámico
Una vez que el beneficio flotante de una posición excede los puntos InpTrailingStart (por defecto 15 pts), el SL comienza el trailing:
- COMPRA: nuevo SL = Bid - TrailingStart × punto. Se mueve sólo hacia arriba, paso mínimo = InpTrailingStep (por defecto 5 pts).
- VENTA: nuevo SL = Demanda + TrailingStart × punto. Se mueve sólo hacia abajo (hacia el precio), paso mínimo = InpTrailingStep .
Cada modificación va precedida de una comprobación del nivel de stops. Si el SL calculado viola los mínimos del broker, la modificación se salta ese tick y se vuelve a intentar en el siguiente tick válido.
2.4 Reinicio del ciclo - Objetivo de beneficio
Cada tick el EA suma POSITION_PROFIT + POSITION_SWAP para todas las posiciones del EA en el símbolo. Cuando el beneficio neto total alcanza el objetivo del ciclo, todas las posiciones se cierran y un nuevo ciclo comienza inmediatamente:
Objetivo del ciclo = (ATR × Multiplicador) × InpCycleProfitMult × LotValue + SpreadCost
SpreadCost tiene en cuenta el diferencial entre la oferta y la demanda pagado tanto en la entrada de COMPRA como de VENTA, asegurando que el objetivo sea siempre genuinamente rentable neto de costes de apertura.
3. Gestión del riesgo
3.1 Tamaño dinámico del lote
El tamaño del lote se recalcula al inicio de cada ciclo:
Lote = (Saldo × InpRiskPercent%) / (SL_Points × TickValue / TickSize)
El resultado se fija en:
- Mínimo/máximo del broker ( SYMBOL_VOLUME_MIN / SYMBOL_VOLUME_MAX )
- Límites de usuario: InpMinLot = 0.06, InpMaxLot = 10.0
3.2 Límite de pérdida dura
Si la pérdida flotante total a través de todas las posiciones abiertas alcanza InpMaxLossMoney (por defecto $100), todas las posiciones se cierran inmediatamente como una parada de emergencia. Esto protege contra caídas repentinas y eventos de brecha.
3.3 Filtros de Sesión y Spread
Filtro de sesión (v2.52): Utiliza SymbolInfoSessionTrade() para consultar el horario real de negociación del broker. Todas las operaciones de negociación -entrada, salida, cierre- se bloquean fuera de las sesiones activas. Se gestiona correctamente:
- Cierre de fin de semana (sábado/domingo)
- Primeras horas de mercado del lunes (por ejemplo, XAUUSD antes de la 01:00 hora del servidor)
- Fin de sesión a última hora del viernes
Filtro de diferencial: El diferencial actual se compara con una estimación móvil de 20 barras. La entrada se bloquea si CurrentSpread > AvgSpread × 2.5 .
4. Parámetros de entrada Referencia
| Parámetro | Por defecto | Descripción |
|---|---|---|
| InpRiskPercent | 1.0 | % de saldo arriesgado por ciclo |
| InpMinLot | 0.06 | Tamaño mínimo de lote permitido |
| InpMaxLot | 10.0 | Tamaño máximo de lote permitido |
| InpATR_Period | 14 | Periodo de cálculo de ATR |
| InpATR_Multiplier | 1.5 | ATR × multiplicador = distancia SL |
| InpRR_Ratio | 2.5 | TP = SL × este ratio (1:2,5) |
| InpCycleProfitMult | 1.0 | El ciclo se cierra cuando el beneficio ≥ SL-distancia × esto |
| InpTrailingStart | 15 | Beneficio en puntos antes de que se active el trailing |
| InpTrailingStep | 5 | Movimiento mínimo del SL por modificación (puntos) |
| InpMaxLossMoney | 100 | Cierre de emergencia si la pérdida supera este valor ($) |
| InpSpreadMultiplier | 2.5 | Máx spread = avg spread × esto |
| InpMagicNumber | 123456 | Identificador único de EA |
| InpComment | HedgeAuto | Etiqueta de comentario de la orden |
7. Instalación
- Abra el archivo .mq5 en MetaEditor y presione F7 para compilar - debe mostrar 0 errores, 0 advertencias.
- Coloque el .ex5 compilado en MQL5/Experts/ dentro de su directorio de datos MT5.
- Adjuntar a un gráfico XAUUSD H1 o BTCUSD H1.
- En las propiedades del EA: habilite Allow Algo Trading. En la barra de herramientas de MT5: active el botón Algo Trading.
- Tipo de cuenta: Se requiere cobertura. Las cuentas de compensación no pueden mantener simultáneamente Compra + Venta en el mismo símbolo.
8. Información sobre riesgos
- Deslizamiento por noticias: La cobertura reduce el riesgo direccional pero no elimina el deslizamiento de ejecución durante eventos de alto impacto (IPC, FOMC, shocks geopolíticos). Ambas posiciones pueden cerrarse a precios peores que los fijados.
- Costes de swap: Mantener una posición larga y corta durante la noche genera costes de swap en ambas partes simultáneamente. En muchos brokers el swap es negativo para ambas direcciones. Vigile el swap diario para detectar ciclos de larga duración.
- Requisitos del broker: Requiere diferenciales bajos y ejecución rápida. Los diferenciales altos reducen directamente la rentabilidad del ciclo y pueden impedir totalmente la entrada a través del filtro de diferenciales.
- Dependencia de la sesión: El EA depende de que SymbolInfoSessionTrade() devuelva datos de sesión precisos de su broker. Verifique que las horas de sesión coinciden con las horas reales de mercado de su broker antes de la implementación en vivo.
- VPS recomendado: Para un funcionamiento ininterrumpido 24/5 (Gold) o 24/7 (Crypto), ejecútelo en un VPS para evitar interrupciones causadas por cortes de Internet o de energía.
- Resultados anteriores: Los resultados del Probador de Estrategias no garantizan el rendimiento en vivo. La microestructura del mercado, la calidad de ejecución y las condiciones del broker difieren significativamente de la simulación histórica.
