23 nuevas estrategias verificadas esta semana8 licencias institucionales disponiblesCertificación Nivel 5 auditada · disponibleComisión del creador del 82% por venta12,400 traders activos en 94 países23 nuevas estrategias verificadas esta semana8 licencias institucionales disponiblesCertificación Nivel 5 auditada · disponibleComisión del creador del 82% por venta12,400 traders activos en 94 países
EducativoMQL5MT5Forex

Reversión a la media, explicada

Es el núcleo de EURUSD Mean Reversion Pro con todo lo que la hace rentable quitado: sin filtro de régimen, sin gestión de riesgo, sin control de sesión. Queda la idea desnuda, comentada paso a paso. Sirve para entender por qué funciona el concepto — y, si la pruebas, para ver con tus ojos por qué la idea desnuda no basta.

No conectes esto a una cuenta con dinero

Está incompleto a propósito: le falta gestión de riesgo, control de errores y filtros, porque su objetivo es que entiendas un concepto aislado. Si lo ejecutas tal cual en real, perderás dinero — y no será culpa del concepto.

Qué vas a aprender

  • Qué mide realmente una banda estadística y cuándo deja de tener sentido
  • Por qué la reversión a la media se destruye en tendencia fuerte
  • Qué le falta a una idea para convertirse en una estrategia

Un vistazo al código

Un fragmento representativo, para que puedas juzgar el oficio sin descargar nada.

MeanReversionDidactica.mq5MQL5
1//+------------------------------------------------------------------+
2//| La idea: si el precio se aleja mucho de su media, tiende a |
3//| volver. "Mucho" se mide en desviaciones típicas, no en pips — |
4//| 30 pips son enormes en calma y triviales en un día de noticias. |
5//+------------------------------------------------------------------+
6double ZScore(int periodo)
7{
8 double media = iMA(_Symbol, PERIOD_CURRENT, periodo, 0, MODE_SMA, PRICE_CLOSE);
9 double sigma = iStdDev(_Symbol, PERIOD_CURRENT, periodo, 0, MODE_SMA, PRICE_CLOSE);
10
11 if(sigma <= 0) return 0; // mercado sin movimiento: no opinamos
12 return (iClose(_Symbol, PERIOD_CURRENT, 0) - media) / sigma;
13}
14
15void OnTick()
16{
17 double z = ZScore(InpPeriodo);
18
19 // ⚠ AQUÍ ESTÁ LA TRAMPA DEL EJEMPLO
20 // Entrar solo porque z sea extremo es lo que arruina a quien
21 // descubre este concepto: en una tendencia fuerte el z-score se
22 // queda extremo durante semanas y esto promedia a la baja hasta
23 // reventar la cuenta. Falta un filtro de régimen. A propósito.
24 if(z < -InpUmbral && PositionsTotal() == 0)
25 Comprar();
26 else if(z > InpUmbral && PositionsTotal() == 0)
27 Vender();
28}

Contenido

MeanReversionDidactica.mq5168 líneas
LEEME.md94 líneas

Qué puedes hacer con esto

Licencia CC BY-NC

Puedes estudiarlo y modificarlo citando al autor, pero NO puedes venderlo ni usarlo con fines comerciales.

Uso comercial
No permitido
Citar al autor
Obligatorio
Publicar tus cambios
No obligatorio