Investigación · Finanzas empíricas · Reproducible
El fantasma de una anomalía
Turn-of-the-Month Anomaly Decay · Investigación reproducible
Una anomalía puede seguir viéndose bien en un backtest largo incluso cuando gran parte de su prima pertenece a un mercado que ya no existe.
Empecé con una pregunta simple: si el efecto turn-of-the-month lleva décadas documentado, ¿sigue perteneciendo al mercado actual?
Lo interesante no fue confirmar que existió. Eso ya se sabía. Lo interesante fue ver que hacerse público no coincide con una desaparición inmediata, mientras que el deterioro fuerte aparece después.
La pregunta
¿Cuánto de este resultado sigue siendo del mercado de hoy?
El turn-of-the-month es una de las anomalías de calendario más documentadas del mercado estadounidense (Lakonishok y Smidt, 1988; McConnell y Xu, 2008).
No quería volver a demostrar que funcionó históricamente. Quería saber algo más útil: cuánto de ese resultado sigue perteneciendo al mercado que existe hoy.
Para responderlo separé la muestra por tiempo, comparé los días TOM contra todos los demás días de trading y repetí el análisis con una segunda fuente y un universo de mercado distinto.
Lo que encontré
Cuatro lecturas del mismo recorrido
- Prima TOM antes de 1987 en el S&P 500.
12,74bps/día
Prima TOM antes de 1987 en el S&P 500.
- Entre la publicación de la anomalía y la etapa pre-decimalización.
11,66bps/día
Entre la publicación de la anomalía y la etapa pre-decimalización.
- Después de 2001 y antes de T+2.
2,72bps/día
Después de 2001 y antes de T+2.
- Los intervalos HAC al 95 % de las ventanas móviles modernas incluyen cero.
≈ 0
Los intervalos HAC al 95 % de las ventanas móviles modernas incluyen cero.
La anomalía sobrevivió a hacerse conocida. Lo que no sobrevivió fue su magnitud.
La réplica con el mercado estadounidense de Kenneth French muestra el mismo patrón central.
Primer giro
Hacerse pública no parece haberla matado
Si la historia fuera simplemente “la anomalía se publicó y los arbitradores la eliminaron”, debería aparecer una ruptura clara alrededor de 1987 (Ariel, 1987).
No aparece.
En Yahoo/S&P 500, el premium pasa de 12,74 a 11,66 bps diarios. En la réplica French de 1950+, pasa de 12,58 a 14,43 bps.
Los tests directos entre ambos regímenes no detectan una diferencia significativa.
Comparación por fuente de la prima TOM antes de 1987 y entre 1987 y 2001, con el p-valor del cambio directo entre ambos regímenes.
Sin colapso inmediato detectado
Nota de investigación
No detectar una ruptura no demuestra que la publicación o el arbitraje no importaran. Sólo significa que la explicación simple de una desaparición inmediata no encaja bien con estos datos.
Evidencia principal
El deterioro llegó después
Después de 2001, el premium baja a 2,72 bps/día en el S&P 500 y a 2,97 bps/día en la réplica French.
En los regímenes posteriores la estimación continúa reduciéndose y deja de distinguirse estadísticamente de los demás días del mercado.
Los cambios de microestructura —settlement, decimalización, trading electrónico, costes y liquidez— se solapan. No identifico uno de ellos como causa.
Lo que sí muestran los datos es un deterioro fuerte durante esa transformación del mercado.
Prima TOM móvil a 10 años
Ventana móvil fija de 10 años, con intervalo HAC al 95 %
La prima TOM móvil a 10 años arranca por encima de 15 bps/día a mediados del siglo XX, se mantiene amplia durante la etapa de publicación y se comprime hacia cero después de 2001. En las ventanas recientes el intervalo HAC al 95 % incluye cero en ambas fuentes.
Las marcas verticales señalan cambios de estructura de mercado. Son referencias temporales, no causas identificadas.
Replicación independiente
El mismo patrón, otra fuente
La primera muestra usa el S&P 500 de Yahoo Finance.
La segunda reconstruye el retorno del mercado estadounidense a partir de Mkt-RF + RF de Kenneth French, sobre un universo value-weighted basado en CRSP.
No son la misma serie y no pretendo que lo sean.
Precisamente por eso importa la comparación: al cambiar proveedor y universo, el patrón central de decay permanece.
Yahoo S&P 500
- Fuente
- Yahoo Finance vía yfinance
- Universo
- Índice S&P 500 (^GSPC)
- Retorno
- Variación porcentual del cierre ajustado del proveedor
Kenneth French US Market
- Fuente
- Kenneth French Data Library
- Universo
- Mercado estadounidense value-weighted basado en CRSP
- Retorno
- (Mkt-RF + RF) / 100
Prima TOM por régimen y fuente
Prima TOM diaria por régimen de publicación en ambas fuentes. Los dos primeros regímenes son amplios y similares; los posteriores caen a unos pocos bps por día.
T+1 tiene una muestra corta. No extraigo de ahí una conclusión fuerte sobre alpha negativo moderno.
| Régimen | Yahoo S&P 500 | French US Market |
|---|---|---|
| Pre-publicación | 12,74p (HAC) < 0,0001 | 12,58p (HAC) < 0,0001 |
| Publicada / pre-decimalización | 11,66p (HAC) 0,0082 | 14,43p (HAC) 0,0010 |
| Post-decimalización / pre-T+2 | 2,72p (HAC) 0,5296 | 2,97p (HAC) 0,4986 |
| T+2 | 2,22p (HAC) 0,7633 | 1,84p (HAC) 0,8103 |
| T+1Muestra corta | 1,21p (HAC) 0,9027 | -4,19p (HAC) 0,6924 |
Otro proveedor, otro universo de mercado, el mismo decay central.
Alpha fantasma
Lo que un backtest largo puede esconder
Una muestra larga suele sentirse más segura.
Pero longitud y estabilidad no son lo mismo.
Si junto décadas en las que el premium fue grande con décadas en las que la estimación oscila alrededor de cero, el promedio histórico sigue conservando parte de la señal antigua.
El backtest no está necesariamente equivocado. Puede estar respondiendo a una pregunta que ya no es la que me interesa.
La pregunta que sí me interesa es:
¿Cuánto del resultado histórico sigue existiendo dentro del régimen que realmente voy a operar?
Capas de evidencia
1950–1987
Prima amplia y estadísticamente clara.
1987–2001
La anomalía es pública y la prima sigue siendo amplia.
2001–2017
La estimación se comprime a unos pocos bps por día.
Ventanas recientes
Los intervalos al 95 % incluyen cero.
El promedio histórico puede sobrevivir mucho más tiempo que el fenómeno que lo creó.
Resultados negativos
Busqué el mecanismo. No todo sobrevivió.
También probé varias piezas que podían ayudar a explicar el patrón.
Resultado
Presión previa → reversión
En el S&P 500 aparece una relación compatible con la literatura. En la muestra French de 1950+ la diferencia queda sólo marginalmente significativa.
Veredicto
Sugerente, no suficientemente robusta para el titular
Resultado
Concentración quarter-end / semi-year
Las diferencias no sobreviven de forma robusta en la comparación matched-sample.
- French US Market
- Todos los p-valores pareados > 0,20
Veredicto
No robusta
Resultado
Breakpoint automático
El algoritmo selecciona 1964 en Yahoo y 1991 en French. El desacuerdo es informativo: no hay una fecha única y robusta entre universos.
- Yahoo S&P 500
- Año seleccionado 1964
- French US Market
- Año seleccionado 1991
Veredicto
Exploratorio; sin fecha única robusta
No limpié estos resultados para hacer la historia más bonita. Se quedan porque también son parte de la investigación.
Límites de la afirmación
Lo que puedo decir — y lo que no
La evidencia respalda
- un premium TOM histórico grande;
- persistencia alrededor de la etapa de publicación;
- un deterioro fuerte posterior;
- estimaciones móviles modernas indistinguibles de cero;
- replicación del patrón central con una fuente y universo independientes.
La evidencia no establece
- que la decimalización sea la causa;
- una fecha exacta de desaparición;
- que T+1 tenga todavía una muestra suficiente;
- que el mecanismo presión/reversión replique con igual fuerza;
- que esto sea una recomendación de trading actual.
Por qué importa
La parte que realmente me interesa
Al final, esta investigación terminó siendo menos sobre una anomalía de calendario y más sobre una debilidad frecuente del backtesting.
Una muestra de 75 años puede ser estadísticamente correcta y económicamente engañosa si mezcla regímenes en los que el mecanismo era fuerte con otros en los que dejó de distinguirse del ruido.
Para mí, una prueba de robustez no debería preguntar sólo si un resultado sobrevive a costes, parámetros o bootstrap.
¿Sigue existiendo la relación que estoy intentando explotar?
Ese es el motivo por el que separo estabilidad temporal, replicación y falsificación del resultado de muestra completa.
No presento esto como una estrategia nueva. Lo presento como un ejemplo de por qué un resultado histórico puede seguir vivo en el backtest mucho después de haber perdido relevancia en el mercado actual.
Verificación
Reproduce la investigación
La página publica el mismo paquete utilizado para validar los resultados.
Para ejecutar la reproducción necesitas el script .do y qtomdecay v0.3.1.
Los dos paquetes de outputs contienen los resultados congelados usados en esta página y permiten comprobar que tu reproducción coincide con la publicación.
Reproducción: 1 + 2 · Verificación completa: 1 + 2 + 3 + 4
Reproducción · Paso 1
reproduce_tom_decay.do
Script público que reproduce ambas muestras con rutas relativas.
Tipo: Stata .doDescargarReproducción · Paso 2
qtomdecay
v0.3.1Herramienta de investigación congelada usada en la validación final.
Tipo: ZIPDescargarVerificación · Yahoo
Outputs Yahoo S&P 500 1950+
Regímenes, tests adyacentes, breaks, ventanas móviles y reporte de la muestra Yahoo.
Tipo: CSV · JSONDescargarVerificación · French
Outputs French US Market 1950+ matched
Los mismos outputs para la réplica independiente con horizonte emparejado.
Tipo: CSV · JSONDescargar
Cada cifra publicada en esta página puede rastrearse hasta un output del paquete de investigación.
Entorno de validación
- StataNow 18.5 MP
- Python 3.11.16
- pandas 2.0.3
- Inferencia HAC/Newey-West
- Yahoo Finance
- Kenneth French Data Library
- qtomdecay 0.3.1
Hashes y manifests
SHA-256 de cada archivo publicado. Los manifests originales acompañan a los outputs.
Descarga de origen Kenneth French (SHA-256)
39f9ae1d0e9f575024bc23145980ac270cea508fb67e592578b3f4d65f36d006Yahoo S&P 500
- publication_regime_summary.csv
443d967696d0f2cb34b49efca4711430aa6eee692bba6da637f7c30f70b5083a - publication_adjacent_tests.csv
5e0917ef46b56865e543df9f12e563de59a8eb7852e0b812fdc4b0ed67eeb58c - break_tests.csv
1c6bddc54107c0bccf62ee47f736ce7dd5c63bc72f093444cfa6fee050214f95 - rolling_premium.csv
3ab6b8a2f206edbedc6d6065eeb7e0da2af91ef22cfaafac364e1776a2b054bd - calendar_pairwise_tests.csv
349748075b44613714be9e9f310059719bb289498949c5b20fe5b41c7f4f8c07 - research_report.json
c7ed6a902c46939c6053637fb365e594964f270a67bcebda5557fd362c0acdff
French US Market
- publication_regime_summary.csv
ee2ce0b4f5b08f2f583c19dd75346807125cf77958bde34e566ba89cf0fadf01 - publication_adjacent_tests.csv
667d8d46fcd69377d3ac7f921bd166391242a1b5404d71d047232c5e40a1e0b7 - break_tests.csv
ffc03e41864e2ab8d9825f12c25ae74cfede056a86fb17855d32f8632fe34e71 - rolling_premium.csv
43ed1384ba7a9277b88c437a10ea240b6a036b2a1df4e5aa1613f21974b4d331 - calendar_pairwise_tests.csv
59ed20895e1ee64bf2196aa5244a7854b10f214bec627145759c9382be29462b - research_report.json
16ca1e0db85c927499e90e2ddd8ed14d3efdf8486ac6161f0f5db1539ab21d50
Descargar
- reproduce_tom_decay.do
04234568cdceda44760bca58bf49d8976a00e1d4c642f70aaf00de8c02b95edd - qtomdecay_v0_3_1_statanow185.zip
95392006fb854083619577911ed0d9810e6f70ecbfd872ee2fec4c8e6ebd0f3f
Método y fuentes
Detalle metodológico
Abierto por sección para no interrumpir la lectura principal.
Definición del evento
T = 0 es el último día de trading del mes. La ventana TOM canónica es T, T+1, T+2 y T+3.
El benchmark son todos los demás días de trading. La ventana no se optimiza en ningún momento del estudio.
Procedencia de los datos
Yahoo Finance vía yfinance, símbolo ^GSPC, retorno definido como variación porcentual del cierre ajustado del proveedor.
Kenneth French Data Library, Fama/French 3 Factors [Daily], con el retorno de mercado reconstruido como (Mkt-RF + RF) / 100 sobre un universo value-weighted basado en CRSP.
Ambas series son distintas en proveedor y en universo. La comparación es deliberadamente una réplica independiente, no una duplicación.
Inferencia estadística
Todas las pruebas usan errores estándar HAC/Newey-West con rezagos seleccionados por longitud de muestra (Newey y West, 1987).
Los p-valores publicados corresponden a los outputs congelados del paquete y no se recalculan en el navegador.
Cortes históricos
Los cortes son externos y fijados antes del análisis: etapa de publicación (1987), T+5 → T+3 (1995), decimalización completa (2001), T+3 → T+2 (2017) y T+2 → T+1 (2024).
Son fronteras temporales, no identificación causal. Varios cambios estructurales se solapan dentro de cada tramo.
Estimación móvil
Ventana móvil fija de 10 años con punto final a cierre de año, intervalo HAC al 95 % y prima expresada en bps por día.
Las ventanas móviles son descriptivas. La última ventana de cada serie termina después del final de los datos y se marca como incompleta.
Réplica con muestra emparejada
La comparación pública principal usa el horizonte emparejado desde 1950 en ambas fuentes.
La muestra completa de French desde 1926 existe como evidencia de apoyo, pero no sustituye a la comparación emparejada.
Análisis exploratorio
La búsqueda automática de breakpoint es explícitamente exploratoria y su p-valor no está ajustado por multiplicidad.
No debe leerse como una prueba confirmatoria ni como la detección de una fecha de desaparición.
Limitaciones
Este no es un trabajo de identificación causal.
La muestra T+1 es corta y exploratoria.
El mecanismo presión/reversión no replica con la misma fuerza en la muestra emparejada.
La concentración de calendario no sobrevive de forma robusta.
El estudio no evalúa costes de transacción, capacidad ni implementación, y no constituye una recomendación de inversión.
Referencia
Glosario
Definiciones breves de los términos estadísticos utilizados a lo largo del estudio.
- BPSPuntos básicos
BPS significa basis points o puntos básicos. 1 bp equivale a 0,01 % y 100 bps equivalen a 1 %.
Permite expresar diferencias pequeñas de rentabilidad sin confundir porcentajes con puntos porcentuales.
- HACErrores estándar robustos
HAC significa Heteroskedasticity and Autocorrelation Consistent. Es un ajuste de errores estándar robusto a heterocedasticidad y autocorrelación serial.
Ayuda a que la incertidumbre estadística no parezca artificialmente pequeña cuando la variabilidad cambia o las observaciones cercanas están relacionadas.
- p / p-valorEvidencia bajo la hipótesis nula
El p-valor es la probabilidad, bajo la hipótesis nula y el modelo del test, de observar un resultado al menos tan extremo como el obtenido.
Un valor menor indica mayor incompatibilidad con la hipótesis nula; no mide la probabilidad de que esa hipótesis sea verdadera ni la importancia económica del resultado.
Literatura científica
Referencias
Publicaciones citadas para el contexto histórico y metodológico del estudio.
Robert A. Ariel (1987).
A Monthly Effect in Stock ReturnsJournal of Financial Economics, 18(1), 161–174.
DOI: 10.1016/0304-405X(87)90066-3
Josef Lakonishok and Seymour Smidt (1988).
Are Seasonal Anomalies Real? A Ninety-Year PerspectiveThe Review of Financial Studies, 1(4), 403–425.
DOI: 10.1093/rfs/1.4.403
John J. McConnell and Wei Xu (2008).
Equity Returns at the Turn of the MonthFinancial Analysts Journal, 64(2), 49–64.
DOI: 10.2469/faj.v64.n2.11
Whitney K. Newey and Kenneth D. West (1987).
A Simple, Positive Semi-Definite, Heteroskedasticity and Autocorrelation Consistent Covariance MatrixEconometrica, 55(3), 703–708.
DOI: 10.2307/1913610