Factor Lab
Combine transparent factor lenses over persisted filings and completed daily prices. Missing evidence remains unavailable.
Every score is an empirical percentile against listings measured on the same exchange: 80 means it scored above 80% of its measured peers on that factor. It is computed from persisted filings and prices, never from an analyst opinion.
Calibration asks whether past scores lined up with what followed. It freezes each score on its capture date, waits for the completed 20-session window, and groups those finished outcomes by score band. Captures whose window has not completed are counted as pending rather than estimated, which is why a newly covered exchange shows an empty table instead of a number.
Diagnostics test the ranking itself: whether score order matched outcome order, how long that held, whether the top and bottom quintiles separated, how much the list churns, and whether two factors are the same bet twice. Weak diagnostics mean the ranking describes the exchange rather than beating it.
The ranking runs automatically when the page opens, so that button is disabled only while its one request is in flight and re-enables when the banner above updates. Calibration and diagnostics load only when you press their own buttons, and nothing else runs in the background.
Group frozen daily scores by completed 20-session excess return. This is historical calibration, not predictive accuracy.
Descriptive post-capture evidence for this exact exchange. Statistics are not a forecast or recommendation.