A quién va dirigido — A quien construya un backtest, utilice datos fundamentales o macroeconómicos, reconstruya un índice o compare señales históricas. La cuestión no es saber hoy qué ocurrió entonces, sino saber qué podía consultarse en el momento exacto de la decisión.
Los datos point-in-time conservan la historia tal como podía observarse en cada momento. No basta con la fecha a la que se refiere un valor: hay que registrar cuándo se publicó, cuándo pasó a estar disponible para el sistema, qué versión era entonces válida y durante cuánto tiempo permaneció vigente. Una base de datos correcta y plenamente actualizada hoy puede describir el pasado con precisión y, al mismo tiempo, ser inadecuada para simular una decisión pasada.
En palabras sencillas — Una fotografía restaurada hoy no es la fotografía que un trader vio ayer. El backtest debe recibir únicamente la imagen disponible entonces, incluidas sus imperfecciones, retrasos y revisiones posteriores.
Cuatro fechas que no deben confundirse
| Campo temporal | Pregunta | Error cuando falta |
|---|---|---|
| Periodo de observación | ¿qué trimestre, barra o evento describe el valor? | asignar el valor al momento equivocado |
| Marca temporal de publicación | ¿cuándo lo difundió la fuente? | utilizar un resultado antes de su anuncio |
| Marca temporal de disponibilidad | ¿cuándo entró realmente el dato en el flujo, con la zona horaria y el calendario correctos? | ignorar la latencia del proveedor, los cierres o los retrasos |
| Vintage o versión | ¿qué valor se conocía antes de una corrección? | utilizar en el pasado la revisión definitiva de hoy |
La marca temporal de disponibilidad es la referencia operativa. Una publicación difundida a las 16:05 de Nueva York no puede generar una orden al cierre de las 16:00. Si el sistema recibe el archivo a las 16:08, la primera decisión admisible también debe respetar esa latencia. Para datos diarios sin una hora fiable, un enfoque prudente consiste en declarar una convención explícita —por ejemplo, «utilizable desde la sesión siguiente»— y documentarla.
Los datos macroeconómicos ilustran el problema del vintage de revisión. Las cifras de producción, empleo y crecimiento pueden corregirse muchas veces. La serie más reciente responde a «¿cuál es hoy la mejor estimación del pasado?». Un test point-in-time pregunta «¿qué estimación era pública en esa fecha?». Son preguntas diferentes.
Universo, identificadores y composición
No se puede proyectar hacia atrás una lista actual de valores, fondos o contratos. El universo debe ser una tabla temporal con intervalos de validez:
| Entidad | Información point-in-time necesaria |
|---|---|
| Valor | identificador permanente, fechas de admisión y terminación, mercado y divisa |
| Índice | fecha de anuncio y fecha efectiva de cada incorporación y exclusión |
| Fondo | creación, fusión, liquidación, cambio de mandato y serie de comisiones |
| Futuro | contrato específico, vencimiento, calendario y regla de roll declarada |
| Datos corporativos | periodo contable, presentación original, modificaciones y marca temporal de difusión |
Un ticker es una etiqueta, no una identidad estable: puede cambiar o volver a utilizarse. Vincular precios, estados financieros y acciones corporativas exige identificadores persistentes y un mapa con validez temporal. La clasificación sectorial o la pertenencia a un país también pueden cambiar; aplicar a 2010 la clasificación actual introduce información retrospectiva.
Acciones corporativas y exclusiones de cotización
Splits, dividendos, escisiones, fusiones, ofertas, conversiones y cambios de símbolo implican varias fechas: anuncio, ex-date, registro, pago y efectividad. Una serie de cierre ajustado recalculada hoy resulta cómoda para medir rendimientos, pero no sustituye un registro causal de eventos. El factor de ajuste debe ser adecuado al propósito: comparar rendimientos totales no es lo mismo que simular límites, cantidades y órdenes observables antes de un evento.
Una exclusión de cotización o delisting no justifica borrar la última observación. Deben conservarse el motivo, la fecha, cualquier rendimiento de delisting, distribución o valor de recuperación y la regla utilizada cuando faltan datos. Una pérdida eliminada de la base de datos vuelve la muestra más saludable de lo que era y conecta directamente con el sesgo de supervivencia.
Protocolo point-in-time
- Fijar el momento de decisión. Definir zona horaria, calendario, hora de corte y frecuencia de cada estrategia.
- Separar evento y disponibilidad. Conservar
event_time,published_at,available_ateingested_atcuando estén disponibles. - Archivar los vintages. No sobrescribir una revisión; añadir una versión nueva con inicio y fin de validez.
- Utilizar identidades persistentes. Vincular tickers y descripciones a identificadores estables con intervalos temporales.
- Reconstruir el universo. Guardar composición, elegibilidad, anuncios y fechas efectivas; no partir de los supervivientes actuales.
- Tratar las acciones corporativas como eventos. Conservar términos, fechas y fuentes, y después generar los ajustes necesarios para el propósito declarado.
- Mantener fallos y ausencias. Delistings, suspensiones, fondos cerrados y valores ausentes forman parte de la historia.
- Modelar la latencia. Añadir el retraso del proveedor y del procesamiento, además de la siguiente ventana negociable.
- Hacer repetible la consulta. «Mostrar lo que se sabía a las 10:00 del día X» debe devolver siempre la misma instantánea.
- Congelar el conjunto de prueba. Conservar versión, suma de comprobación, transformaciones y código junto con los resultados out-of-sample.
Ejemplo ilustrativo — Una empresa cierra su trimestre el 31 de marzo, presenta resultados el 7 de mayo a las 17:20 y los modifica el 20 de junio. Una señal de crecimiento trimestral no puede utilizar la cifra el 31 de marzo; para una estrategia basada en cierres, el primer uso puede ser la sesión posterior al 7 de mayo. Las decisiones del 8 de mayo al 19 de junio deben utilizar la presentación original, no la modificación de junio. Las fechas y horas se eligen únicamente para mostrar el método.
Comprobaciones rápidas
| Comprobación | Evidencia que debe conservarse |
|---|---|
| ¿La fuente ya había publicado el dato? | marca temporal y documento original |
| ¿Podía recibirlo el sistema? | registro de ingestión o retraso declarado |
| ¿Se revisó el valor? | tabla de vintages |
| ¿Existía y cotizaba el instrumento? | intervalos de admisión y estado del mercado |
| ¿Pertenecía entonces al universo? | composición con anuncio y efectividad |
| ¿Incluye el rendimiento la salida o el delisting? | evento terminal y método de valoración |
| ¿El ajuste utiliza solo eventos ya conocidos? | registro de acciones corporativas |
Limitaciones
Una base de datos point-in-time reduce el sesgo de anticipación, pero no certifica una estrategia. Los datos tardíos pueden ser incorrectos; una fuente puede tener cobertura selectiva; el flujo puede aplicar transformaciones futuras; el universo puede seguir incompleto. Los datos point-in-time tampoco modelan órdenes, liquidez, capacidad ni costes de transacción en backtests. Todo resultado sigue condicionado por las fuentes, convenciones y disponibilidades documentadas.
Fuentes
- Federal Reserve Bank of St. Louis, ALFRED® y Real-Time Periods — conservación de los valores publicados originalmente, sus revisiones y los periodos de validez de la información.
- U.S. Securities and Exchange Commission, EDGAR Application Programming Interfaces — historial de presentaciones, metadatos y actualizaciones de la información difundida.
- Center for Research in Security Prices, CRSP Survivor-Bias-Free US Mutual Fund Database Guide — estructura histórica que incluye fondos activos y terminados.
- Tyler Shumway, The Delisting Bias in CRSP Data, The Journal of Finance, 1997 — consecuencias de omitir los rendimientos de delisting.
- S&P Dow Jones Indices, Equity Indices Policies & Practices — anuncios, fechas efectivas, rebalanceos y tratamiento de las correcciones de composición.