DAX 40: estacionalidad por día, mes y sesión (15 años)
Strategy7 min de lectura

DAX 40: estacionalidad por día, mes y sesión (15 años)

4,2 millones de velas M1 de DAX 40 (2012-2026): qué día y qué mes tienen sesgo, a qué hora se mueve y qué aguanta un test estadístico.

¿DAX 40 tiene días, meses u horas con un sesgo que se pueda medir? Hemos agregado 4.217.468 velas M1 del CFD del DAX alemán entre febrero de 2012 y 12 de octubre de 2026 por día de la semana, mes del año, sesión y hora UTC, y hemos pasado cada resultado por un test de significancia. Resultado: 3 de los 17 cortes de calendario salen con p < 0,05, pero ninguno aguanta la corrección por comparaciones múltiples. Pista, no regla.

4,2M velas
Velas M1 (UTC)
15 años
2012-02 → 2026-10-12
Mejor día
Martes
+0,085% · 51,2% win · p=0,031
Mejor mes
Noviembre
+3,78% · 71,4% win · p=0,022
Hora más volátil
07:00 UTC
rango medio 0,499% · 79,9 puntos

📊 Los datos de este artículo, en tabla y CSV: /stats/DAX publica la estacionalidad, las sesiones y el spread de DAX 40 como referencia descargable, y en /data puedes bajar sus velas OHLCV (de D1 a M1) para replicar cada tabla. Este artículo es el análisis, con sus tests; esas páginas son los números en crudo.

1. Estacionalidad por día de la semana

Cada día cierra a las 15:00 UTC, una hora fija presente en todos los años del feed. Test: t de una muestra contra cero; en negrita, lo que supera la corrección de Bonferroni.

📅 Tabla 1 · Retorno diario por día de la semana (2012–2026)n=3.737 días
DíanMedia %Mediana %Std %Win ratet-statp-value
Lunes741+0,068%+0,105%1,195%56,4%1,550,123
Martes748+0,085%+0,023%1,080%51,2%2,160,031
Miércoles748+0,055%+0,070%1,079%54,1%1,400,162
Jueves756+0,003%+0,057%1,141%53,6%0,070,942
Viernes744+0,007%+0,086%1,190%54,4%0,160,876

Lectura: días con p < 0,05:

  • Martes: +0,085% de media, 51,2% de win rate, p=0,031, pero no supera el umbral de Bonferroni para 5 pruebas (0,0100). En las dos mitades de la muestra (2012–2019: +0,065%; 2019–2026: +0,106%) el signo se mantiene.

Gráfico de barras: retorno medio por día de la semana y por mes en DAX 40, 2012-2026


2. Estacionalidad por mes del año

175 meses completos (el mes en curso queda fuera). Retorno de cada mes = último cierre del mes contra el último cierre del mes anterior.

📆 Tabla 2 · Retorno mensual por mes del calendarion=175 meses
MesnMedia %Mediana %Std %Win ratet-statp-value
Enero14+1,58%+1,31%5,13%57,1%1,150,271
Febrero14+0,29%+2,05%4,90%64,3%0,220,830
Marzo15+0,03%+1,07%6,34%53,3%0,020,984
Abril15+1,58%+1,19%4,01%73,3%1,530,149
Mayo15+1,55%+1,95%4,09%73,3%1,470,164
Junio15-1,07%-1,13%4,58%33,3%-0,910,379
Julio15+1,92%+1,92%3,18%80,0%2,330,035
Agosto15-0,55%-0,37%3,73%40,0%-0,570,578
Septiembre15-0,30%-0,90%3,94%40,0%-0,300,771
Octubre14+1,11%+1,42%5,98%64,3%0,690,500
Noviembre14+3,78%+2,69%5,42%71,4%2,610,022
Diciembre14+0,49%+1,73%3,85%57,1%0,480,640

Lectura: meses con p < 0,05:

  • Julio: +1,92% de media, 80,0% de win rate, p=0,035, pero no supera el umbral de Bonferroni para 12 pruebas (0,0042). En las dos mitades de la muestra (2012–2018: +2,47%; 2019–2026: +1,43%) el signo se mantiene.
  • Noviembre: +3,78% de media, 71,4% de win rate, p=0,022, pero no supera el umbral de Bonferroni para 12 pruebas (0,0042). En las dos mitades de la muestra (2012–2018: +2,25%; 2019–2026: +5,31%) el signo se mantiene.

Gráfico: retorno acumulado mes a mes de DAX 40, cada año y la media

Cada línea fina es un año; la roja es la media. Cuando las líneas finas se abren en abanico, la media del mes dice poco del año que viene.


3. Estacionalidad por sesión de trading (UTC)

Ventanas UTC fijas, iguales para toda la serie. Drift = cierre de la sesión contra su apertura; rango = máximo menos mínimo, en % de la apertura.

🌍 Tabla 3 · Drift y rango por sesión (UTC)2019–2026 · n=9.548 sesiones
SesiónnDrift medio %Win ratep-valueRango medio %
Asia (00–07 UTC)2.005-0,0018%50,0%0,8740,645%
Londres (07–12 UTC)2.005+0,0071%52,0%0,6420,970%
Nueva York (12–17 UTC)2.007+0,0185%53,5%0,1990,895%
NY tarde (17–22 UTC)1.990+0,0245%56,6%0,0110,511%
  • Londres (07–12 UTC) concentra el movimiento: rango medio 0,970%, 1,9× el de NY tarde (17–22 UTC).
  • NY tarde (17–22 UTC) tiene drift alcista con p=0,011 (+0,0245% por sesión). Es un sesgo pequeño: compáralo con el spread antes de pensar en operarlo.
  • Sesiones desde 2019: antes, el CFD no cotizaba casi 24 h y las ventanas no serían comparables entre años.

Gráfico 4 paneles: drift, rango, win rate y volatilidad por hora de DAX 40


4. Heatmap día × sesión

📅 Tabla 4 · Heatmap día × sesión (drift medio %)5 × 4
DíaAsia (00–07)Londres (07–12)Nueva York (12–17)NY tarde (17–22)
Lunes+0,009%+0,025%+0,058%+0,060%
Martes+0,019%+0,015%-0,010%+0,008%
Miércoles+0,019%+0,009%+0,042%+0,027%
Jueves-0,035%-0,031%+0,020%-0,009%
Viernes-0,022%+0,018%-0,019%+0,038%
  • Celda más alcista: Lunes × NY late (+0,060%, p=0,001). Más bajista: Jueves × Asia (-0,035%, p=0,199).
  • 1 de 20 celdas sale con p < 0,05; por puro azar se esperarían unas 1,0. Es lo que daría el azar: no leas el heatmap como un mapa de señales.

Heatmap: drift medio por día de la semana y sesión en DAX 40


5. Horas más volátiles (UTC)

⏰ Tabla 5 · Las 6 horas más volátiles (UTC)2019–2026
Hora UTCRango medio %Rango medio (puntos)Std %Sesión
07:000,499%79,90,359London
08:000,499%79,90,366London
14:000,451%72,50,337NY
13:000,415%67,00,309NY
15:000,404%64,70,308NY
09:000,390%62,60,269London

La hora más activa (07:00 UTC) mueve 3,1× más que la más tranquila (04:00 UTC, 0,158%). Esto, a diferencia del sesgo de calendario, sí es estable de un año a otro: es lo más útil de este análisis para decidir cuándo estar delante de la pantalla o dónde poner un stop.


6. Por qué no analizamos el spread

En los CFD de índices de este feed, el spread no es un precio de mercado: es un margen que fija el bróker y que cambia por escalones durante meses. Publicar su «evolución» sería medir la política comercial de un proveedor, no el coste de operar el índice. Para el coste, mira el spread y la comisión de tu propio bróker a la hora a la que operas.


Lo que NO te dicen estos datos

  • Comparaciones múltiples: este artículo hace 41 pruebas (5 días, 12 meses, 4 sesiones y 20 celdas). Con un umbral del 5 %, unas 2 saldrían «significativas» por azar. Por eso marcamos aparte lo que supera Bonferroni.
  • Pocos años por mes: cada mes tiene unas 14 observaciones. Un solo año extremo puede fabricar o borrar un «mes alcista».
  • Un sesgo medio no es una estrategia: tras spread, comisión y swap, un drift de centésimas por sesión rara vez sobrevive. Antes de operarlo, haz un backtest con costes reales y walk-forward.
  • Es un CFD de Dukascopy (precio bid), no el futuro ni el contado del mercado organizado: puede diferir en rollovers, gaps y horario.
  • El horario del CFD cambió varias veces antes de 2019. Por eso el día cierra a una hora fija (15:00 UTC) presente en todos los años, la serie diaria empieza en 2012 y el análisis intradía en 2019.

Metodología

  • Fuente: ticks de Dukascopy agregados a velas M1 por EV Trading Labs (DAX 40, 2012-02-01 → 2026-10-12).
  • Total: 4.217.468 velas M1 con al menos un tick; 3.737 retornos diarios y 175 mensuales.
  • Precio: apertura y cierre a precio medio (bid+ask)/2; máximo y mínimo en bid. Donde el feed no trae ask, bid.
  • Retorno diario: (C[t] − C[t−1]) / C[t−1] × 100, donde C es el cierre a las 15:00 UTC. Se descartan días con menos de 60 velas o cuya última vela queda más de 3 h antes del corte.
  • Retorno mensual: último cierre diario del mes contra el del mes anterior; el mes en curso no cuenta.
  • Sesiones: drift = (cierre − apertura) / apertura × 100; rango = (máximo − mínimo) / apertura × 100; sesiones con menos del 40 % de sus minutos se descartan.
  • Test: t de una muestra contra cero, p < 0,05; Bonferroni por bloque (días, meses, sesiones, celdas). Estabilidad: misma media calculada en las dos mitades de la muestra.
  • Software: Python, pandas, scipy, matplotlib.

La serie completa de estacionalidad

La misma metodología aplicada a 19 mercados. El contraste entre ellos es la parte más útil: un patrón que aparece en un solo activo es más probable que sea ruido.

Preguntas frecuentes

¿Cuál es el mejor día para operar DAX 40?
En 2012–2026, el día con mejor media es el martes (+0,085%, 51,2% de días al alza, p=0,031). Es significativo por separado, pero no tras corregir por comparaciones múltiples.
¿Qué mes es más alcista para DAX 40?
Noviembre tiene la mejor media (+3,78%, 71,4% de años al alza, p=0,022) y junio la peor (-1,07%). Con solo 14 años por mes, conviene tratarlo como hipótesis.
¿A qué hora se mueve más DAX 40?
A las 07:00 UTC: rango medio de 0,499% (79,9 puntos) en esa hora, 3,1× la hora más tranquila (04:00 UTC). Por sesiones, Londres (07–12 UTC) tiene el mayor rango.
¿Se puede operar la estacionalidad de DAX 40?
No como señal aislada. Los sesgos de calendario son pequeños frente al spread y la comisión, y la mayoría no supera la corrección por comparaciones múltiples. Lo que sí es útil y estable es el perfil de volatilidad por hora, para elegir cuándo operar y dimensionar el stop.
#DAX#GER40#índice#seasonality#estacionalidad#session#UTC#2026

Gestiona tu riesgo con precisión. Portfolios automatizados y herramientas para MT5.

Ver productos →
Únete al DiscordEscríbeme por WhatsApp