MID Regime Filter
- Indicadores
- Versión: 1.0
- Activaciones: 5
Filtro de régimen MID – Filtro adaptativo de régimen de mercado
📌 Descripción general
🛡️ Protección vital para estrategias de rejilla y Martingala
- Detecta al instante los cambios hacia los regímenesTREND (2) o EXPLOSIVE (3).
- Tu EA puede programarse para bloquear inmediatamente cualquier nueva entrada de tipo «grid» o «martingala» mientras la volatilidad se mantenga alta.
- Permite que el EA «sobreviva» a las tormentas del mercado gestionando únicamente las posiciones existentes, a la espera de que el mercado vuelva con calma a un régimen deRANGO (1) o MUERTO (0) antes de reanudar las entradas de forma segura.
⚙️ Cómo funciona
- Normalización: el ATR y la desviación estándar (StdDev) se normalizan con respecto al precio actual, lo que hace que el indicador sea eficaz en todas las clases de activos (Forex, índices, criptomonedas, acciones).
- Rangos percentiles: calcula la posición actual de estos valores en una ventana móvil ( InpRankLookback ). Un rango de 80 significa que la volatilidad actual es superior al 80 % de los períodos recientes.
- Fusión inteligente: combina estas clasificaciones para determinar el régimen dominante sin señales falsas provocadas por variaciones nominales del precio.
📊 Los 4 regímenes de mercado
- 0 = MUERTO (gris): Volatilidad y direccionalidad muy bajas. Mercado inactivo.
- 1 = RANGE (azul): volatilidad de baja a media, sin dirección clara. Zona ideal para entradas de tipo «Grid» o «Martingale».
- 2 = TENDENCIA (verde): direccionalidad (ADX) y volatilidad de moderadas a altas. Zona de peligro para Martingale: se recomienda encarecidamente bloquear nuevas entradas.
- 3 = EXPLOSIVO (naranja-rojo): Volatilidad y direccionalidad extremas. Alerta máxima: se aconseja la congelación total de nuevas posiciones.
💻 Integración en un EA de Grid/Martingala
Ejemplo de código MQL5 para proteger tu EA:
//--- Declaración del identificador
int regimeHandle = iCustom(_Symbol, _Period, "MID_Regime_Filter", 14, 20, 10, 150, 30.0, 50.0, 70.0);
//--- Dentro de OnTick(), ANTES de cualquier lógica de apertura de grid/martingala
double currentRegime[];
if(CopyBuffer(regimeHandle, 2, 0, 1, currentRegime) > 0)
{
int regime = (int)currentRegime[0];
// 🛡️ DISYUNTOR DE SEGURIDAD
if(regime == 2 || regime == 3)
{
// Mercado con TENDENCIA o EXPLOSIVO: NO abrir nuevas órdenes
// Permitir únicamente la ejecución de la lógica para gestionar/cerrar posiciones existentes
return;
}
// Si el régimen es == 0 o 1, la lógica normal de Grid/Martingala puede ejecutarse con seguridad
// ... (tu código de apertura de órdenes aquí) ...
}
✅ Características principales
- Protector de cuenta: evita caídas catastróficas en estrategias de reversión a la media durante eventos de actualidad o caídas del mercado.
- Compatible con múltiples activos: gracias a la normalización de precios, los mismos parámetros protegen tu EA en EURUSD, NAS100 o BTCUSD sin problemas.
- Ligero y optimizado: Cálculos eficientes, gestión adecuada de las posiciones, diseñado para no ralentizar tus backtests ni tu trading en vivo.
