Most arguments about machine learning in markets start with an algorithm. They should start with a verb. Are you estimating tomorrow’s realised volatility on the FTSE 100, the next revision to a UK activity print, the chance a mid-cap misses its own guidance, or the path of a short-rate expectation into the next Monetary Policy Committee meeting? Those are different machines. They share a laptop and almost nothing else.
On a forecasting desk the model is a subordinate. It compresses a mess of series into a distribution, or into a point with an error bar the author is willing to defend. If the output cannot be written as a sentence a colleague can disagree with, it is not a forecast. It is a file.
The model does not get to know the print before the people who trade the print.
Point-in-time, or the polite way to cheat
UK macro series are revised. Company filings arrive late, then get amended. Index membership changes. Analysts’ numbers are time-stamped in one database and “as reported” in another. A model trained on the final vintage of a series will look clairvoyant in a backtest because, in a dull sense, it is. It has been handed the corrected past.
The repair is boring and non-negotiable. Store the vintage. Join features on the timestamp a desk could have queried, not on the economic period the number describes. If gross domestic product for a quarter is published weeks later, the feature belongs to the publication date. If a footnote in an annual report is the source, the feature belongs to the morning the report was public, not the fiscal year printed on the cover.
Survivorship sits in the same drawer. A universe of today’s FTSE 250 constituents, rolled backwards, flatters anything that likes the companies which stayed listed. Delistings, takeovers and the quiet exits belong in the sample. Otherwise the use case is “forecasting winners, having first removed the losers.”
Nowcasting is a timing problem
A nowcast answers a question official data will answer later, using series that move earlier. Card-spend proxies, job postings, electricity, shipping, purchasing-manager surveys, online prices: each has a different calendar, a different revision policy and a different incentive to impress a subscriber. Mixed-frequency models, including the older MIDAS family and newer gradient-boosted or state-space approaches, exist because the clocks do not line up.
The machine-learning contribution is often not mystical pattern recognition. It is a disciplined way to let a noisy weekly series update a monthly target without a researcher hand-tuning thirty lags at midnight. Regularisation matters because macro panels are wide and the effective sample of genuine UK cycles is short. A recession is not an i.i.d. draw. Two decades of data are not two decades of independent experiments.
Language models and the number
Transcripts, trading statements and risk-factor sections are tempting inputs. They are also full of calendar effects, boilerplate and sentences written by people who have read last year’s model. A classifier that “predicts” an earnings surprise from a call transcript is useless if the call happened after the number. It is only slightly less useless if the transcript embedding was fit on the whole history, including firms whose later outcome helped shape the vocabulary.
We treat text as a feature with a publication clock and a leakage audit, not as magic. The interesting residual is what management emphasised relative to the numbers already in the market, and whether that emphasis has any stable relationship to subsequent revisions. Often it does not. Publishing that negative result is part of the use case. A journal that only prints the leaderboard is advertising.
There is a longer composite of this failure on the desk notes page. It is invented as a teaching story. It is also a pattern we have watched in real research reviews: the score arrives first, the timestamp second, and the project dies in the gap.
When the loss function changes
A model of daily equity volatility estimated through a calm decade will be late to a fiscal surprise, a pandemic week, or a rates regime in which the Bank of England’s balance sheet is the story. Regime detection, hidden Markov models, and simple interaction terms with the level of real yields are attempts to admit that the data-generating process is not a single mood.
The failure mode of fashionable regime models is that they discover too many regimes, most of them with a handful of days, and then present a coloured ribbon as insight. We prefer a small number of states that a human can name, plus a residual model that is allowed to be humble when the state is unclear. “Unclear” is a forecast. It is often the correct one.
A sketch, not a track record
Consider a classifier whose only job is to say whether next-session realised volatility on a broad UK equity index will sit above its own trailing median. Features might include lagged realised measures, the range of the day, implied volatility if you genuinely had the print at decision time, and a simple rates move. Evaluation is walk-forward. Labels that overlap the training window are purged. A gap is left so the model cannot see the last afternoon of the training fold.
Suppose, purely as an illustration and not as a result we measured, that such a classifier is on the right side of the median fifty-six days in a hundred. That is not yet interesting. The median is not a trade. The spread is not zero. If someone then buys and sells shares to “harvest” the call, stamp duty reserve tax on many UK share purchases, plus impact, can erase the whole story. A forecast of volatility is allowed to be a risk input. It is not obliged to be a strategy.
This is why Clarsachaxa does not publish accuracy badges. A number without a clock, a cost and a decision is how use cases become folklore.