S&P 500: estacionalidad por día, mes y sesión (12 años)
Strategy7 min de lectura

S&P 500: estacionalidad por día, mes y sesión (12 años)

3,5 millones de velas M1 de S&P 500 (2015-2026): qué día y qué mes tienen sesgo, a qué hora se mueve y qué aguanta un test estadístico.

¿S&P 500 tiene días, meses u horas con un sesgo que se pueda medir? Hemos agregado 3.507.856 velas M1 del CFD del S&P 500 entre enero de 2015 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: Julio supera incluso la corrección por comparaciones múltiples; casi todo lo demás es ruido.

3,5M velas
Velas M1 (UTC)
12 años
2015-01 → 2026-10-12
Mejor día
Miércoles
+0,095% · 54,6% win · p=0,027
Mejor mes
Noviembre
+3,66% · 90,9% win · p=0,007
Hora más volátil
14:00 UTC
rango medio 0,505% · 22,5 puntos

📊 Los datos de este artículo, en tabla y CSV: /stats/SP500 publica la estacionalidad, las sesiones y el spread de S&P 500 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 20: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 (2015–2026)n=2.990 días
DíanMedia %Mediana %Std %Win ratet-statp-value
Lunes576+0,073%+0,107%1,140%58,0%1,540,124
Martes610+0,063%+0,028%1,027%52,5%1,520,128
Miércoles606+0,095%+0,063%1,058%54,6%2,220,027
Jueves606+0,005%+0,029%1,072%52,5%0,110,916
Viernes592+0,016%+0,045%1,143%52,2%0,340,734

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

  • Miércoles: +0,095% de media, 54,6% de win rate, p=0,027, pero no supera el umbral de Bonferroni para 5 pruebas (0,0100). En las dos mitades de la muestra (2015–2020: +0,110%; 2020–2026: +0,081%) el signo se mantiene.

Gráfico de barras: retorno medio por día de la semana y por mes en S&P 500, 2015-2026


2. Estacionalidad por mes del año

140 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=140 meses
MesnMedia %Mediana %Std %Win ratet-statp-value
Enero11+1,39%+1,76%4,58%72,7%1,000,339
Febrero12-0,15%-0,28%4,31%50,0%-0,120,904
Marzo12-0,31%+0,81%5,05%50,0%-0,210,835
Abril12+1,83%+0,87%5,76%75,0%1,100,294
Mayo12+1,75%+1,31%3,39%83,3%1,780,102
Junio12+1,24%+1,09%4,13%75,0%1,040,321
Julio12+3,01%+2,27%2,37%100,0%4,390,001
Agosto12+0,43%+1,00%3,64%58,3%0,410,688
Septiembre12-1,37%-0,26%3,79%41,7%-1,250,237
Octubre11+1,39%+2,10%4,92%54,5%0,940,372
Noviembre11+3,66%+3,46%3,57%90,9%3,400,007
Diciembre11-0,06%+1,39%4,36%63,6%-0,050,963

Lectura: meses con p < 0,05:

  • Julio: +3,01% de media, 100,0% de win rate, p=0,001, y supera el umbral de Bonferroni (0,0042). En las dos mitades de la muestra (2015–2019: +2,50%; 2020–2026: +3,37%) el signo se mantiene.
  • Noviembre: +3,66% de media, 90,9% de win rate, p=0,007, pero no supera el umbral de Bonferroni para 12 pruebas (0,0042). En las dos mitades de la muestra (2015–2019: +2,28%; 2020–2026: +4,81%) el signo se mantiene.

Gráfico: retorno acumulado mes a mes de S&P 500, 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.517 sesiones
SesiónnDrift medio %Win ratep-valueRango medio %
Asia (00–07 UTC)2.005+0,0159%54,1%0,0700,479%
Londres (07–12 UTC)2.003+0,0099%56,0%0,2580,531%
Nueva York (12–17 UTC)2.007+0,0343%53,5%0,0310,967%
NY tarde (17–22 UTC)1.940+0,0081%54,5%0,5650,775%
  • Nueva York (12–17 UTC) concentra el movimiento: rango medio 0,967%, 2,0× el de Asia (00–07 UTC).
  • Nueva York (12–17 UTC) tiene drift alcista con p=0,031 (+0,0343% por sesión), aunque no supera Bonferroni. 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 S&P 500


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,032%+0,032%+0,094%+0,055%
Martes+0,026%+0,012%-0,023%-0,007%
Miércoles+0,024%+0,020%+0,036%-0,003%
Jueves-0,007%-0,018%+0,059%-0,044%
Viernes+0,005%+0,004%+0,004%+0,043%
  • Celda más alcista: Lunes × NY (+0,094%, p=0,005). Más bajista: Jueves × NY late (-0,044%, p=0,170).
  • 2 de 20 celdas salen 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 S&P 500


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
14:000,505%22,50,380NY
15:000,448%19,90,344NY
20:000,447%19,80,350NY late
19:000,442%19,10,416NY late
13:000,426%18,80,364NY
18:000,379%16,60,335NY late

La hora más activa (14:00 UTC) mueve 4,0× más que la más tranquila (04:00 UTC, 0,127%). 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 11 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 (20:00 UTC) presente en todos los años, la serie diaria empieza en 2015 y el análisis intradía en 2019.

Metodología

  • Fuente: ticks de Dukascopy agregados a velas M1 por EV Trading Labs (S&P 500, 2015-01-02 → 2026-10-12).
  • Total: 3.507.856 velas M1 con al menos un tick; 2.990 retornos diarios y 140 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 20: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 S&P 500?
En 2015–2026, el día con mejor media es el miércoles (+0,095%, 54,6% de días al alza, p=0,027). Es significativo por separado, pero no tras corregir por comparaciones múltiples.
¿Qué mes es más alcista para S&P 500?
Noviembre tiene la mejor media (+3,66%, 90,9% de años al alza, p=0,007) y septiembre la peor (-1,37%). Con solo 11 años por mes, conviene tratarlo como hipótesis.
¿A qué hora se mueve más S&P 500?
A las 14:00 UTC: rango medio de 0,505% (22,5 puntos) en esa hora, 4,0× la hora más tranquila (04:00 UTC). Por sesiones, Nueva York (12–17 UTC) tiene el mayor rango.
¿Se puede operar la estacionalidad de S&P 500?
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.
#S&P 500#SPX#US500#í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