Pablo Zavala · Evaluación de seguridad de IA · Ingeniería de investigación

Titulares de Reddit y volatilidad del Dow

Un notebook de trabajo de curso de big data de Carnegie Mellon que pregunta si las palabras de los titulares diarios de noticias de Reddit predicen al Dow. A través de 3,183 palabras filtradas, las regresiones marginales con control FDR de Benjamini-Hochberg dejan exactamente una palabra con capacidad predictiva sobre los retornos, damn, una sobreviviente que el notebook interpreta como capacidad predictiva mínima y no como un descubrimiento; la volatilidad conserva 12 palabras y presenta persistencia genuina. Añadir la volatilidad del día anterior eleva el lasso de cero palabras seleccionadas a un R² dentro de muestra de 0.262, una lección compacta sobre pruebas múltiples y confusión.

A través de 3,183 palabras de titulares con un FDR del 10 por ciento, los retornos conservan una sobreviviente (damn, p = 1.0262e-05) frente a 12 palabras para la volatilidad; añadir la volatilidad del día anterior eleva el lasso de cero palabras seleccionadas a un R² dentro de muestra de 0.262.

Repositorio público de notebooks

Evidencia dentro de muestra de un único notebook ejecutado sobre un conjunto de datos que termina el 1 de julio de 2016; los archivos CSV fuente permanecen fuera del repositorio público por razones de licencia, de modo que una reejecución comienza con la descarga de Kaggle más los archivos de palabras derivados que documenta el README.

Rol: Trabajo de curso individual: pipeline de texto disperso, cribado marginal con FDR, lasso y doble lasso, bootstrap e interpretación.

Tarjeta de evaluación

Resultado principal

Muestra
Un notebook de Jupyter ejecutado: 3,183 palabras filtradas por 1,988 días de negociación alineados
Evaluador
Valores p de OLS marginal, FDR de Benjamini-Hochberg en q = 0.1, LassoCV con partición de serie temporal, doble lasso, bootstrap
Resultado
Los retornos conservan una única sobreviviente FDR mientras la volatilidad conserva 12 palabras; la volatilidad del día anterior lleva la mayor parte de la señal predecible.
Límite
Ajuste dentro de muestra sobre un único conjunto de datos que termina el 1 de julio de 2016.

Nivel de evidencia

Muestra
Repositorio público con el notebook ejecutado y el README
Evaluador
Salidas de celda guardadas y código fuente de celda, verificables sin ejecución
Resultado
Cada número público remite a una salida impresa o a código fuente de celda confirmado en el notebook.
Límite
Los CSV fuente permanecen externos por razones de licencia; las reejecuciones necesitan la descarga de Kaggle más dos archivos de palabras que llegan a través del curso y no como descarga pública.

Afiliación

Muestra
Trabajo de curso de Carnegie Mellon
Evaluador
Línea de autoría del notebook y fechas de archivo
Resultado
Trabajo de curso de posgrado de primavera de 2025; las fechas del sistema de archivos ubican el notebook el 26 de febrero de 2025 y las exportaciones de figuras el 29 de marzo de 2025.
Límite
Los materiales del curso, las consignas y el contexto de calificación permanecen privados.

Página actualizada

Muestra
Julio de 2026
Evaluador
Registro de contenido del sitio
Resultado
Entrada redactada el 9 de julio de 2026 a partir del notebook original ejecutado.
Límite
Las cifras reflejan las salidas guardadas del notebook y no una reejecución nueva.
Ejes de evaluación con muestra, evaluador, resultado y límite.
EjeMuestraEvaluadorResultadoLímite
Resultado principalUn notebook de Jupyter ejecutado: 3,183 palabras filtradas por 1,988 días de negociación alineadosValores p de OLS marginal, FDR de Benjamini-Hochberg en q = 0.1, LassoCV con partición de serie temporal, doble lasso, bootstrapLos retornos conservan una única sobreviviente FDR mientras la volatilidad conserva 12 palabras; la volatilidad del día anterior lleva la mayor parte de la señal predecible.Ajuste dentro de muestra sobre un único conjunto de datos que termina el 1 de julio de 2016.
Nivel de evidenciaRepositorio público con el notebook ejecutado y el READMESalidas de celda guardadas y código fuente de celda, verificables sin ejecuciónCada número público remite a una salida impresa o a código fuente de celda confirmado en el notebook.Los CSV fuente permanecen externos por razones de licencia; las reejecuciones necesitan la descarga de Kaggle más dos archivos de palabras que llegan a través del curso y no como descarga pública.
AfiliaciónTrabajo de curso de Carnegie MellonLínea de autoría del notebook y fechas de archivoTrabajo de curso de posgrado de primavera de 2025; las fechas del sistema de archivos ubican el notebook el 26 de febrero de 2025 y las exportaciones de figuras el 29 de marzo de 2025.Los materiales del curso, las consignas y el contexto de calificación permanecen privados.
Página actualizadaJulio de 2026Registro de contenido del sitioEntrada redactada el 9 de julio de 2026 a partir del notebook original ejecutado.Las cifras reflejan las salidas guardadas del notebook y no una reejecución nueva.

Cómo inspeccionar este trabajo

Plano frente a disparado

Dos histogramas contienen el hallazgo central. Los valores p a nivel de palabra para los retornos se distribuyen de forma pareja, la firma del ruido, mientras el panel de volatilidad se acumula cerca de cero; Benjamini-Hochberg convierte ese contraste visual en conteos, una sobreviviente frente a doce.

Los números remiten a celdas confirmadas

Cada número citado en esta página aparece en una salida de celda guardada o en el código fuente de celda confirmado del notebook, de modo que un lector puede verificar cada afirmación abriendo el archivo antes de ejecutar nada.

Verificación para el lector

Abra el notebook confirmado y verifique cada número citado frente a sus salidas guardadas y su código fuente de celda; esa verificación funciona solo con el archivo. Una reejecución completa necesita los cuatro CSV de entrada: RedditNews.csv y DJIA.csv llegan a través de la referencia a Kaggle del README, mientras que WordsFinal.csv y WordFreqFinal.csv, los archivos derivados provistos por el curso que describe el README, llegan a través del curso y no como descarga pública. Queda una salvedad: la pasada archivada ejecutó algunas celdas fuera de orden, así que una reejecución limpia constituye la prueba justa.

Estudio de caso

Problema

Filtrar miles de palabras de titulares frente a resultados de mercado garantiza ganadores aparentes por pura suerte, así que el análisis tiene que separar la señal que sobrevive a la disciplina del ruido que se cuela por la puerta.

Contexto

El notebook empareja 1,989 días de negociación de precios del DJIA, el más reciente fechado el 1 de julio de 2016, con titulares diarios de noticias mundiales de Reddit, construye una matriz dispersa de conteo día por palabra, y filtra 5,271 palabras candidatas hasta 3,183.

Método

Las regresiones OLS marginales puntúan cada palabra dos veces, frente a los retornos diarios y frente a la volatilidad logarítmica máximo-mínimo; Benjamini-Hochberg en q = 0.1 fija la puerta de descubrimiento; LassoCV con partición de serie temporal maneja la selección conjunta; un doble lasso reestima la persistencia de la volatilidad frente a 1,429 controles de palabras seleccionadas; un bootstrap de 30 remuestreos examina la estabilidad de la penalización.

Resultado

Los retornos se comportaron como ruido: 121 de 3,183 palabras cayeron por debajo de p = 0.05, el histograma de valores p se mantuvo plano, y la puerta FDR conservó exactamente una palabra, damn, en p = 1.0262e-05. La volatilidad conservó 12 palabras, encabezadas por tunisia, georgia y terror, aunque la volatilidad del día anterior las superó a todas: el lasso de solo palabras anuló todos los coeficientes, mientras que añadir el único término autorregresivo produjo seis coeficientes seleccionados, un R² dentro de muestra de 0.262, y un coeficiente de persistencia de 0.442 que el doble lasso redujo a 0.313.

Límite

Todo permanece dentro de muestra sobre un único conjunto de datos, la pasada archivada ejecutó algunas celdas fuera de orden según los conteos de ejecución guardados, y el notebook trata el ejercicio como trabajo de curso de selección de variables y no como un hallazgo operable en mercado.

Evidencia

El repositorio público incluye el notebook ejecutado, cuyas salidas guardadas y código fuente de celda contienen cada número citado, más un README que remite a los datos fuente de Kaggle, que permanecen externos por razones de licencia.

Resultados clave

  • Exactamente 1 de 3,183 palabras sobrevivió a un FDR del 10 por ciento para los retornos: damn, en p = 1.0262e-05, interpretada como capacidad predictiva mínima y no como un descubrimiento
  • 12 palabras sobrevivieron a la misma puerta para la volatilidad con un corte de p = 0.00035710, encabezadas por tunisia, georgia y terror
  • El lasso de solo palabras anuló todos los coeficientes para ambos objetivos; la volatilidad del día anterior elevó el R² dentro de muestra de 0.0 a 0.262 con seis coeficientes seleccionados
  • El doble lasso redujo la persistencia de la volatilidad de un valor ingenuo de 0.647 a 0.313 (error estándar 0.0355) frente a 1,429 controles de palabras
  • Un bootstrap de 30 remuestreos fijó la penalización del lasso en el piso de grilla de 0.0001 con dispersión cero, un resultado metodológico de advertencia

Métodos

  • Vectorización de texto disperso
  • Cribado marginal
  • FDR de Benjamini-Hochberg
  • Lasso con validación cruzada de serie temporal
  • Doble lasso
  • Remuestreo bootstrap