2. Datos alternativos: qué prometen y qué entregan
Nivel 6: De los datos a la decisión
Se llama dato alternativo a cualquier información que no salga de los canales financieros clásicos: precios, cuentas auditadas, estimaciones de analistas o estadística oficial. La promesa comercial siempre es la misma, y suena bien: ver la realidad antes de que llegue al informe trimestral. Este módulo separa esa promesa de lo que se entrega en la práctica.
Qué se vende con esa etiqueta
- Transacciones con tarjeta, agregadas y anonimizadas por comercio, que aproximan las ventas de una cadena antes de que las publique.
- Tráfico web y uso de aplicaciones: visitas, descargas, usuarios activos, tiempo de sesión.
- Imágenes de satélite: coches en aparcamientos, obras en curso, o el nivel de los tanques de crudo de techo flotante, que se estima por la sombra que proyecta la tapa.
- Texto: noticias, transcripciones de conferencias de resultados, presentaciones regulatorias, opiniones de producto, ofertas de empleo publicadas.
- Geolocalización agregada de dispositivos móviles y datos de aduanas o de seguimiento de barcos.
Los cinco problemas que traen casi siempre
- Historial corto. La mayoría de estos paneles empieza en la segunda mitad de la década pasada. Cinco o seis años de datos trimestrales son veinte o veinticuatro observaciones por empresa, y las empresas de un mismo sector están muy correlacionadas entre sí: el número de observaciones realmente independientes es una fracción pequeña de las filas que ves.
- Cambios de metodología. El proveedor amplía el panel, cambia de banco emisor, repondera o corrige su algoritmo de reconocimiento de imágenes. La serie antes y después del cambio no mide lo mismo, y casi nunca te avisan con la claridad necesaria.
- Cobertura sesgada. Un panel de tarjetas cubre a los clientes de unas entidades concretas, con su sesgo de edad, renta y geografía. Un panel de aplicaciones ve el móvil y no la tienda física. Extrapolar de la parte al todo es un supuesto, no un dato.
- Histórico reconstruido. Muchos proveedores calculan el pasado con el algoritmo de hoy y lo entregan como si hubiera estado disponible entonces. Es el sesgo de anticipación del módulo anterior, servido por un tercero.
- Coste y capacidad. Estos productos se venden por decenas o cientos de miles al año, y una vez que el proveedor ha colocado la suscripción a decenas de fondos, la ventaja se reparte. La literatura sobre anomalías publicadas, con el trabajo de McLean y Pontiff como referencia habitual, encuentra que la rentabilidad de una señal cae aproximadamente a la mitad después de hacerse conocida.
La trampa del histórico reconstruido
Toda fila debe traer dos fechas: cuándo ocurrió lo que mide y cuándo estuvo disponible para ti. Si el proveedor solo entrega la primera, la respuesta correcta es pedirla; si dice que no la tiene, ya sabes lo que has comprado.
alt = pd.read_parquet("panel_tarjetas.parquet")
# columnas: fecha_observacion, fecha_disponible, simbolo, gasto
alt["retraso_dias"] = (alt["fecha_disponible"] - alt["fecha_observacion"]).dt.days
print(alt.groupby(alt["fecha_observacion"].dt.year)["retraso_dias"].median())
# Si los primeros anos salen con retraso 0 y a partir de cierta fecha aparece
# un retraso estable de, por ejemplo, 3 dias, el historico antiguo esta
# reconstruido: no es lo que se podia ver entonces, es lo que el proveedor sabe hoy.La única pregunta que importa: qué añade sobre lo que ya tienes
Que una serie prediga las ventas de una cadena no significa nada por sí solo. La pregunta es si predice algo que no predijeran ya el consenso de analistas, la estacionalidad, el trimestre anterior y el crecimiento del sector.
import statsmodels.api as sm
y = panel["sorpresa_ventas"] # dato real menos consenso
cols_base = ["ventas_trim_anterior", "crecimiento_sector", "revisiones_consenso"]
base = sm.OLS(y, sm.add_constant(panel[cols_base]), missing="drop").fit()
con_alt = sm.OLS(y, sm.add_constant(panel[cols_base + ["gasto_tarjetas"]]),
missing="drop").fit()
print("R2 ajustado base:", round(base.rsquared_adj, 4))
print("R2 ajustado con el dato:", round(con_alt.rsquared_adj, 4))
print("t del dato alternativo:", round(con_alt.tvalues["gasto_tarjetas"], 2))
print("trimestres distintos:", panel["fin_periodo"].nunique())La última línea es la más importante de todas. Campbell Harvey y sus coautores, tras revisar cientos de factores publicados, defienden que con tanta búsqueda acumulada el listón de significación debería estar cerca de 3 y no en el 2 de siempre. Con veinte trimestres efectivos detrás, un estadístico de 2,4 no es un descubrimiento: es ruido con buena presentación.
Cuándo sí han aportado
Ser escéptico no es ser negacionista. Hay casos documentados con criterio: el recuento de vehículos en aparcamientos de cadenas minoristas se ha relacionado en trabajos académicos con las sorpresas de resultados posteriores; el seguimiento del nivel de los tanques de crudo aporta frecuencia y cobertura donde la estadística oficial es semanal y parcial; y el análisis de texto de las conferencias de resultados, con los diccionarios de Loughran y McDonald como estándar, extrae de forma sistemática algo que un humano no puede leer a escala. El patrón común es claro: funcionan cuando el dato convencional es lento, escaso o inexistente, no cuando compiten con treinta analistas que cubren la misma acción.
Hay un segundo patrón igual de útil: los casos que aguantan suelen medir una cantidad física, no una opinión. Coches, barriles, contenedores y visitas se cuentan; el sentimiento se interpreta, y cada proveedor lo interpreta a su manera y lo recalibra cuando le conviene. Ante dos productos parecidos, elige siempre el que puedas describir con un verbo de contar.
Caso trabajado: la cuenta de servilleta
Un proveedor pide, pongamos, 120.000 dólares al año. Gestionas 3 millones: el coste es el 4% del patrimonio, y la señal aportaba un 2% bruto en la prueba histórica. Sales perdiendo el doble de lo que ganas, y eso antes de descontar el decaimiento posterior a que la venda a otros veinte clientes. Con 200 millones bajo gestión la misma suscripción cuesta un 0,06%, y la decisión cambia por completo. El dato alternativo no es bueno ni malo en abstracto: es una función de tu tamaño, de tu horizonte y de cuánto ya sabías sin él.