Track record
Every report is frozen when it is published: its price, fair value, verdict and scenarios get a timestamp and a fingerprint (a SHA-256 hash). Later we compare each frozen forecast with what the price actually did. Nothing is added afterwards.
Status
When results come
A forecast is scored at 1, 3, 6 and 12 months. It can only be scored once that time has passed, so the first results come one month after the first frozen forecast. The 12-month results, the ones that matter most for a long-term view, take a year.
| Horizon | First results after | Forecasts old enough now |
|---|---|---|
| 1 month | 3 Nov 2026 | 0 |
| 3 months | 3 Jan 2027 | 0 |
| 6 months | 3 Apr 2027 | 0 |
| 12 months | 3 Oct 2027 | 0 |
Results
No results yet. The first snapshot with numbers is published after the first forecasts are one month old.
What we measure
- Return after each verdict. The stock's return against the S&P 500 (SPY) and against its sector fund (for example XLK for software, XLV for healthcare). A Buy is a hit when it beats the benchmark, a Sell when it trails it, a Hold when it stays close (within 10 points at 12 months, less at shorter horizons).
- Ranking skill. The rank correlation (rank IC) between the upside we showed and the later return over the sector. Zero means no skill; a few hundredths is already useful if it lasts.
- Range coverage. How often the price at the horizon lands inside our fair-value range, and inside the bear-to-bull scenario range. A range that is right far less often than it looks is too narrow.
- Conviction. Whether high-conviction calls do better than low-conviction ones.
- Scenario probabilities. A Brier score (0 is perfect, lower is better) for the bear, base, bull and other scenarios at 12 months, next to the score of simply giving every scenario the same chance.
- Stability. How often the verdict changes from one report on a stock to the next.
How the record is kept
- Frozen at publish. The record is written in the same step that publishes the report, with the report's price, fair value and range, verdict, conviction, valuation zone, scenario prices and probabilities, the share-issuance screen reading, the method version and the AI model.
- Fingerprinted. Each record carries the SHA-256 hash of its own content and of the full published report. Changing any number afterwards changes the hash.
- Append-only. Records are only ever added. Storage writes are create-only: an existing record cannot be overwritten through the app.
- No backfill. Reports published before the record started are not in it. Their outcomes are partly known today, so picking or re-reading them now would be hindsight, and most of them used an older method. The record starts empty on purpose.
- Prices. Daily closes adjusted for dividends and splits (Yahoo Finance). A forecast starts at the first close after its report day, so the report's own timing cannot help it.
- Every report counts. Every published long-term report is scored, including ones later replaced by a newer report. Short-term reports are frozen too but scored separately. Results are not investment advice and past results do not predict future ones.
Check it yourself
The frozen records and the latest scoring are public: /api/track-record (summary and latest snapshot) and /api/track-record/forecasts?month=YYYY-MM (every record of one month). Each scoring run publishes a digest per month: the SHA-256 of that month's record hashes, sorted and joined by line breaks. If a record changed later, the digest would no longer match.
| Month | Forecasts | Ledger SHA-256 |
|---|---|---|
| 2026-10 | 5 | b22abf807442e9b0… |