Choose up to 5 series and a date range. Each is fetched live from Massive.com or FRED, scanned for statistically significant trend changes, matched against historical events, and indexed to a common starting point of 100 so series of very different units can be compared on one chart.
Pick 1–5 series and a date range, then fetch.
| Date | Series | Value | Nearest event |
|---|
It's the output of an algorithm called PELT (Pruned Exact Linear Time), running a statistical model called RBF (radial basis function cost) on each series. In plain terms: it scans the whole time series and finds the dates where the statistical character of the data changed significantly — a shift in level, variance, or trend that's large enough to not be just noise. It's not "the line moved a lot" — it's closer to "the data before this point and the data after this point look like they came from different regimes."
A tunable penalty parameter controls sensitivity (lower penalty = more, smaller inflection points get flagged; higher = only major regime shifts). Each series in this app has its own tuned penalty, since a Treasury yield and a jobs count behave very differently.
This is a separate step from detection. After PELT finds an inflection point, a second step checks: is there a historical event in the curated list of 53 events within 45 days of this date? If yes, it fills in the event. If no, it leaves it blank.
So a blank row means: the algorithm found a real, statistically significant shift in the data — but nothing in the hand-picked event list happened near that date. That's expected and honest, not a bug — three real reasons this happens: