Discussion about this post

User's avatar
STEVEN A EDELSTEIN's avatar

If anyone tries the masking route, two design notes worth stealing. First, a leaky mask fails in the reassuring direction: if the model can still identify the company from products, executives, or context, the hindsight survives and the test "clears" a signal that's actually contaminated — so audit the mask itself by asking the model to guess the redacted company, and let the identification rate bound how much comfort the test can give. Second, masking degrades classification somewhat even when hindsight is impossible — entity identity is legitimately informative about how to read a headline (the same analyst upgrade means different things for a mega-cap and a small-cap) — so you need a control window from after the model's training cutoff to measure that innocent degradation, and judge the historical collapse net of it. Without both checks, a masked backtest just swaps one bias for another.

STEVEN A EDELSTEIN's avatar

This is one of the few LLM-for-markets writeups where the negative result is the valuable one. The v2→v4 sign flip (+0.24 → −0.06 correlation, +3.9% → −2.4% decile spread) deserves to be the headline: most teams would have shipped v4, because every intuition says "closer to how a thoughtful human reads = better." You've rediscovered with an LLM what the event-study literature has said since Tetlock (2007): tone is contemporaneous at best and mean-reverting at worst, and the only text that predicts is text that maps to a dated, quantified surprise. Ke, Kelly & Xiu's SESTM work is the closest academic cousin — they likewise found the predictive vocabulary is narrow and boring.

Two suggestions, offered because this line of work is worth pushing further:

1. On the tight variant (+0.34 on 17 signal days): before trusting any variant that improves by pruning, run an equal-N null — draw random same-size subsets of signal days from the parent set a few thousand times and see where +0.34 falls in that distribution. Sparse-signal "improvements" are reproducible by random pruning alone more often than seems possible, and a CI-includes-zero caveat usually resolves to exactly that.

2. The one that bites if you extend the window: training-cutoff look-ahead. Your six-week live test largely dodges it, but the moment this design is run over 2021–2024 with a current-vintage model, the model is grading headlines about companies whose subsequent history it memorized — Nvidia news from 2023 is not exchangeable with Nvidia news from next week, to a model trained in 2025. Backtests built this way flatter themselves. The fixes are ugly but necessary: evaluate post-cutoff only, or mask entity identity before classification and check the signal survives.

One question: did the strict prompt's negative calls predict downside symmetrically? The neutral-by-default architecture makes negatives the highest-bar calls, so whether they carry signal would say a lot about mechanism versus one-sided news flow.

No posts

Ready for more?