Thirty-One Signals, Six Bets · part 9 of 10
The only thing that moves this result is genuinely orthogonal information — not another transformation of the same OHLCV series. The obvious candidate is text: earnings-call language, guidance changes, filings. Unlike the price path, its arithmetic is not absurd.
| If text features gave IC | IR | Years to t = 2 |
|---|---|---|
| 0.02 | 0.42 | 22 |
| 0.03 | 0.64 | 10 |
| 0.05 | 1.06 | 4 |
Ten years to significance is a different universe from three hundred and five. That is a real difference in kind, and it is the one place an LLM could plausibly contribute — as a source of features, not as a decision maker over the same prices it has already been shown to reproduce.
But it cannot be backtested honestly. A model trained through 2025 already knows what happened after a 2019 earnings call.
This is worth stating precisely because it defeats the specific defence this project relies on everywhere else. Our look-ahead prevention is structural: the strategy holds an object that has no method returning the future. That defence is useless here, because the contamination is not in the data handed to the model — it is in the weights. There is no held-out set, no windowing scheme, and no prompt discipline that removes it. A model can be instructed not to use hindsight; it cannot be made not to have it.
So the only valid test of the text path is forward, on paper, over years, on data that must be licensed. That is not an argument that it will not work. It is the price of finding out, and it should be paid knowingly rather than discovered after a backtest that was never capable of being honest.