MacroBessent

2026-09-19 13:27 UTCAccount
S&P 5007,650.50+0.17%Nasdaq26,522.54+0.39%Dow51,682.64-0.18%Nikkei 22565,018.95+1.38%Hang Seng24,750.78+0.60%EuroStoxx 506,236.20-1.37%Dollar (DXY)100.22+0.00%EUR/USD1.15+0.18%USD/JPY156.85+0.46%GBP/USD1.34+0.26%USD/CNY6.70-0.15%US 10Y yield5.00+1.03%US 5Y yield4.86+1.15%Gold4,424.90+0.57%Silver66.56+1.66%Copper6.62+0.43%Platinum1,803.50+0.68%Palladium1,306.20+1.24%WTI100.30-1.58%Brent103.87-0.91%Henry Hub2.91+0.38%Gasoline3.53+0.58%Heating oil5.06-1.10%Wheat714.25-1.75%Corn527.50-0.57%Soybeans1,303.50-1.23%Coffee294.55+1.38%Sugar17.36-0.34%Cocoa5,327.00-7.71%Cotton77.38-1.31%Lithium ETF70.50-0.56%Uranium ETF41.65-2.41%Rare Earths ETF69.06-0.06%Copper Miners ETF87.28+0.77%Bitcoin81,244.98+0.42%Ethereum2,637.29+0.99%Solana111.48-0.99%S&P 5007,650.50+0.17%Nasdaq26,522.54+0.39%Dow51,682.64-0.18%Nikkei 22565,018.95+1.38%Hang Seng24,750.78+0.60%EuroStoxx 506,236.20-1.37%Dollar (DXY)100.22+0.00%EUR/USD1.15+0.18%USD/JPY156.85+0.46%GBP/USD1.34+0.26%USD/CNY6.70-0.15%US 10Y yield5.00+1.03%US 5Y yield4.86+1.15%Gold4,424.90+0.57%Silver66.56+1.66%Copper6.62+0.43%Platinum1,803.50+0.68%Palladium1,306.20+1.24%WTI100.30-1.58%Brent103.87-0.91%Henry Hub2.91+0.38%Gasoline3.53+0.58%Heating oil5.06-1.10%Wheat714.25-1.75%Corn527.50-0.57%Soybeans1,303.50-1.23%Coffee294.55+1.38%Sugar17.36-0.34%Cocoa5,327.00-7.71%Cotton77.38-1.31%Lithium ETF70.50-0.56%Uranium ETF41.65-2.41%Rare Earths ETF69.06-0.06%Copper Miners ETF87.28+0.77%Bitcoin81,244.98+0.42%Ethereum2,637.29+0.99%Solana111.48-0.99%

How this is built

Anyone can publish a dashboard. What is hard to copy is the method underneath — what gets measured, what gets thrown away, and what happens when we are wrong. Every figure on this page is read live from the systems it describes.

What runs, every day Das of 2026-09-19

signal modules
108
terminal panels
65
healthy today
66
the rest serve last-good, flagged stale
tracked series
17,726
stored daily since 2026-09-04
Counted from the repository and the live build at page-generation time, not maintained by hand — if a module is deleted this number falls.
scalars
fieldvalue
signal modules108
panels65
healthy66
tracked series17,726
history values127,615
history days16
history from2026-09-04
history to2026-09-19

The calibration study — 121.7M resolved trades Cas of 2026-09-06

trades scored
121,671,888
trade-time Brier
0.1685
vs 0.25 coin-flip
calibration error
0.7%
ECE
· Across 121,671,888 resolved trades (both sides scored), Kalshi prices are remarkably well calibrated at trade time: ECE 0.7%, trade-time Brier 0.1685 vs the 0.25 coin-flip baseline.
· Longshot bias is real and asymmetric: takers buying 1-20c contracts average -1.3c EV per contract on the YES side and -1.1c on the NO side — the lottery-ticket buyer funds the market.
· The mirror image: takers of 81-99c favorites average -0.7c (YES) and -0.2c (NO) per contract — being boring pays roughly its keep.
· Longshots still pull volume: 1-20c contracts took 30.5% of taker contract volume in the latest quarter.
Both sides of every trade are scored (the taker at their price, the counterparty at its complement) against the market's actual resolution. The widely-quoted 'day before resolution' Brier of ~0.05 flatters a market by scoring it once the answer is nearly known; trade-time scoring is the honest number, and it is what we hold ourselves to as well. Full study →

14 stored builds since 2026-09-06 — every numeric leaf of this panel is written to signal_history at each build, so a repeated value can mean the upstream had not published, not that nothing moved.

brier trade time
0.160.170.1809-0609-1009-1509-19brie… 0.17
2026-09-06  0.17 → 2026-09-19  0.17
ece
0.010.010.0109-0609-1009-1509-19ece 0.01
2026-09-06  0.01 → 2026-09-19  0.01
log loss
0.480.500.5309-0609-1009-1509-19log … 0.50
2026-09-06  0.50 → 2026-09-19  0.50
longshot volume share latest
0.290.310.3209-0609-1009-1509-19long… 0.31
2026-09-06  0.31 → 2026-09-19  0.31
n resolved markets
3,536,198.303,722,314.003,908,429.7009-0609-1009-1509-193,722,314.00
2026-09-06  3,722,314.00 → 2026-09-19  3,722,314.00
n trades analyzed
115,588,293.60121,671,888.00127,755,482.4009-0609-1009-1509-19121,671,888.00
2026-09-06  121,671,888.00 → 2026-09-19  121,671,888.00
scalars
fieldvalue
n trades analyzed121,671,888
brier trade time0.17
ece0.01

The regime engine Das of 2026-09-19

current state
calm / risk-on
since 2026-04-17
training days
4,276
cross-check
0.016
Markov P(high-vol)

A sparse statistical jump model: k-means clustering with an explicit penalty on switching states, so the label cannot flap day to day the way a plain hidden Markov model's does. Every day is labelled by online inference — using only data available up to that day. We do not publish an in-sample regime chart, because a curve fitted with hindsight describes the past rather than forecasting anything.

selected featureweight
ret_600.777
sortino_600.709
dd_200.656
iv_vix0.526
ofr_volatility0.492
The model chooses its own inputs from a wider candidate set; those above are what survived. It is cross-checked against PELT change-point detection and a Markov-switching variance model — and that cross-check has already earned its keep by catching a labelling error of ours before publication.

13 stored builds since 2026-09-07 — every numeric leaf of this panel is written to signal_history at each build, so a repeated value can mean the upstream had not published, not that nothing moved.

current state
-0.050.000.0509-0709-1109-1509-19curr… 0.00
2026-09-07  0.00 → 2026-09-19  0.00
jump penalty
47.5050.0052.5009-0709-1109-1509-19jum… 50.00
2026-09-07  50.00 → 2026-09-19  50.00
median run days
100.40104.00107.6009-0709-1109-1509-19me… 107.00
2026-09-07  103.00 → 2026-09-19  107.00
run length days
97.10102.50107.9009-0709-1109-1509-19ru… 107.00
2026-09-07  98.00 → 2026-09-19  107.00
selected features
keyvalue
ret_600.78
sortino_600.71
dd_200.66
iv_vix0.53
ofr_volatility0.49
scalars
fieldvalue
current labelcalm / risk-on
training days4,276
markov p high vol0.02

How we score ourselves Das of 2026-09-19

our Brier
0.167
base-rate Brier
0.307
the bar to beat

Every forecast carries a hard, machine-checkable threshold and a deadline. At the deadline an official series decides it — there is no judgement call and no quiet deletion. Signals that make a mean-reversion or persistence claim are snapshotted and scored 28 days later on the same terms (90 states recorded, 0 scored so far).

A 28-day score means nothing if the model behind the claim can be refitted, inside those 28 days, on the window it is about to be scored against. So every scoreable claim now takes a sealed holdout over its own forward window: the seal carries a hash of the recorded claim, so the claim cannot be reworded afterwards, and any read of that window before the horizon raises and is written to an audit table whether or not the caller catches it. 0 taken, 0 opened on schedule, 0 refused reads on the record. Across the tracked signals as a family, Hansen's test for superior predictive ability asks whether the best of them beats a coin at all once you account for having looked at every one: not yet computable, because it needs two tracked signals with at least 8 scored claims each; 0 qualify so far.

The benchmark is the unconditional base rate, which is the comparison that can actually embarrass us: beating a coin flip is not a result, beating the base rate is. The ledger →

16 stored builds since 2026-09-04 — every numeric leaf of this panel is written to signal_history at each build, so a repeated value can mean the upstream had not published, not that nothing moved.

open › 0 › base rate
0.430.520.6109-0409-0909-1509-19open… 0.44
2026-09-04  0.60 → 2026-09-19  0.44
open › 1 › base rate
0.370.520.6709-0409-0909-1509-19open… 0.64
2026-09-04  0.39 → 2026-09-19  0.64
open › 2 › base rate
0.110.310.5109-0409-0909-1509-19open… 0.14
2026-09-04  0.48 → 2026-09-19  0.14
open › 3 › base rate
0.490.630.7709-0409-0909-1509-19open… 0.75
2026-09-04  0.51 → 2026-09-19  0.75
open › 4 › base rate
0.230.470.7109-0409-0909-1509-19open… 0.67
2026-09-04  0.27 → 2026-09-19  0.67
recently resolved › 0 › base rate
0.570.600.6309-1209-1409-1709-19rece… 0.60
2026-09-12  0.60 → 2026-09-19  0.60
recently resolved › 1 › base rate
0.370.390.4109-1209-1409-1709-19rece… 0.39
2026-09-12  0.39 → 2026-09-19  0.39
recently resolved › 2 › base rate
0.450.480.5009-1209-1409-1709-19rece… 0.48
2026-09-12  0.48 → 2026-09-19  0.48
scalars
fieldvalue
open6
resolved5
brier0.17
base rate brier0.31
signal states90
signal scored0

The lockbox — how we avoid fooling ourselves Das of 2026-09-19

Our research loop lets an optimiser propose signal rules, but the code that grades them is immutable and the most recent years of data are held back where the optimiser cannot see them. A rule is only kept if it improves on data it was never shown.

held-out excess Sharpe
-5.12
negative = correctly rejected
deflated Sharpe (DSR)
0.00
P(true Sharpe > best-of-1 expectation)
overfit probability (PBO)
not computed
CSCV over the trial ledger; needs 8 trials
SPA p-value (Hansen)
not computed
the ledger holds one trial; a family of one has no maximum to test
lockbox window
2024-01-01 → 2025-03-05
never shown to the optimiser
We publish this because a research process that has never rejected anything is not a process. The figure above is a rejection: the rule looked good on the data it was fitted to and did not survive contact with the years it had never seen.
scalars
fieldvalue
lockbox excess sharpe-5.12
lockbox window2024-01-01..2025-03-05
lockbox dsr0.00
lockbox sr0 annualised0.00
n trials1
pbonot reported

What actually happens after a signal fires Cas of 2026-09-19 13:12 UTC

Cumulative abnormal return after each trigger, measured against the sample's own drift, with 95% confidence intervals from 2,000 bootstrap resamples. Only results whose interval excludes zero are listed — and the sample size is shown beside each, because a confidence interval on seven events is a hint while one on fifty is a finding.

triggermarkethorizonmean CAR95% CIthit ratenconfidence
Implied vol below realised (the premium inverts)S&P 500
since 2018-02-14
+1d-0.71%[-1.4, -0.2]-2.2736%53reasonable
Managed money at a 3y positioning extreme (long)Gold
since 2016-05-10
+1d+0.36%[+0.0, +0.7]2.0971%17thin
Managed money at a 3y positioning extreme (short)JPY
since 2017-07-18
+5d-0.65%[-1.2, -0.1]-2.336%14very thin — treat as a hint, not a result
Managed money at a 3y positioning extreme (short)Silver
since 2017-07-03
+10d+2.07%[+0.3, +3.9]2.1577%13very thin — treat as a hint, not a result
Managed money at a 3y positioning extreme (short)Silver
since 2017-07-03
+20d+3.53%[+0.3, +6.6]1.9777%13very thin — treat as a hint, not a result
Managed money at a 3y positioning extreme (short)Copper
since 2023-05-16
+10d+1.91%[+0.6, +3.1]2.6571%7very thin — treat as a hint, not a result
Of 60 relationships tested, 6 clear the significance bar and only those with n≥30 are worth leaning on. The 2s10s inversion — the most widely repeated of these relationships — shows no significant effect at any horizon we measured, which is the sort of result that only appears if you look.
results · 61 rows
eventsubjectn eventsfirst eventhorizon daysmean car pctmedian car pctci95 pctt stathit rate
Managed money at a 3y positioning extreme (long)Crude (WTI)112016-05-241insufficient events with a defined returninsufficient events with a defined returninsufficient events with a defined returnnot reported0.55
Managed money at a 3y positioning extreme (long)Crude (WTI)112016-05-245insufficient events with a defined returninsufficient events with a defined returninsufficient events with a defined returnnot reported0.46
Managed money at a 3y positioning extreme (long)Crude (WTI)112016-05-2410insufficient events with a defined returninsufficient events with a defined returninsufficient events with a defined returnnot reported0.46
Managed money at a 3y positioning extreme (long)Crude (WTI)112016-05-2420insufficient events with a defined returninsufficient events with a defined returninsufficient events with a defined returnnot reported0.46
Managed money at a 3y positioning extreme (long)Nat gas (HH)32020-10-27not reportednot reportednot reportednot reportednot reportednot reported
Managed money at a 3y positioning extreme (long)Gold172016-05-1010.360.630.03, 0.682.090.71
Managed money at a 3y positioning extreme (long)Gold172016-05-1050.150.18-0.91, 1.060.270.53
Managed money at a 3y positioning extreme (long)Gold172016-05-1010-0.180.09-1.52, 1.34-0.240.53
Managed money at a 3y positioning extreme (long)Gold172016-05-10200.510.38-1.96, 2.980.400.53
Managed money at a 3y positioning extreme (long)Silver152016-05-1010.160.08-0.67, 0.930.410.60
Managed money at a 3y positioning extreme (long)Silver152016-05-1050.330.22-2.09, 2.750.260.60
Managed money at a 3y positioning extreme (long)Silver152016-05-1010-1.16-2.43-4.08, 2.15-0.690.40
Managed money at a 3y positioning extreme (long)Silver152016-05-1020-4.82-2.93-11.39, 1.11-1.450.33
Managed money at a 3y positioning extreme (long)Copper72024-03-1910.29-0.12-0.65, 1.510.500.43
Managed money at a 3y positioning extreme (long)Copper72024-03-195-0.07-1.21-2.23, 2.98-0.050.29
Managed money at a 3y positioning extreme (long)Copper72024-03-19100.392.95-3.63, 3.290.200.71
Managed money at a 3y positioning extreme (long)Copper72024-03-19201.526.15-4.26, 6.030.510.57
Managed money at a 3y positioning extreme (long)EUR/USD152016-05-1010.10-0.01-0.09, 0.301.060.47
Managed money at a 3y positioning extreme (long)EUR/USD152016-05-1050.390.30-0.10, 0.881.520.73
Managed money at a 3y positioning extreme (long)EUR/USD152016-05-10100.330.73-0.29, 0.881.070.67
Managed money at a 3y positioning extreme (long)EUR/USD152016-05-10200.740.73-0.07, 1.641.620.67
Managed money at a 3y positioning extreme (long)JPY82016-06-141-0.11-0.21-0.45, 0.28-0.540.38
Managed money at a 3y positioning extreme (long)JPY82016-06-145-0.44-0.49-1.50, 0.58-0.770.38
Managed money at a 3y positioning extreme (long)JPY82016-06-1410-0.99-1.27-2.47, 0.57-1.160.38
Managed money at a 3y positioning extreme (long)JPY82016-06-1420-1.05-0.32-2.77, 0.57-1.160.50
Managed money at a 3y positioning extreme (short)Crude (WTI)152019-07-301-0.80-1.62-2.16, 0.52-1.120.40
Managed money at a 3y positioning extreme (short)Crude (WTI)152019-07-305-0.790.36-3.64, 1.91-0.540.53
Managed money at a 3y positioning extreme (short)Crude (WTI)152019-07-30100.170.20-2.61, 2.450.130.53
Managed money at a 3y positioning extreme (short)Crude (WTI)152019-07-30200.570.53-3.85, 4.640.260.53
Managed money at a 3y positioning extreme (short)Nat gas (HH)82022-09-061-0.140.82-2.95, 2.57-0.090.50
Managed money at a 3y positioning extreme (short)Nat gas (HH)82022-09-065-1.220.08-9.71, 6.03-0.280.50
Managed money at a 3y positioning extreme (short)Nat gas (HH)82022-09-0610-4.80-0.67-15.70, 3.14-0.920.50
Managed money at a 3y positioning extreme (short)Nat gas (HH)82022-09-0620-12.03-8.03-28.66, 0.13-1.510.25
Managed money at a 3y positioning extreme (short)Gold72018-06-261-0.20-0.21-0.51, 0.07-1.280.29
Managed money at a 3y positioning extreme (short)Gold72018-06-2650.991.15-0.49, 2.511.160.71
Managed money at a 3y positioning extreme (short)Gold72018-06-26100.74-0.21-1.40, 3.170.580.43
Managed money at a 3y positioning extreme (short)Gold72018-06-26200.04-2.23-3.88, 4.640.020.29
Managed money at a 3y positioning extreme (short)Silver132017-07-0310.420.60-0.10, 0.941.500.69
Managed money at a 3y positioning extreme (short)Silver132017-07-0350.981.89-0.45, 2.291.360.77
Managed money at a 3y positioning extreme (short)Silver132017-07-03102.072.090.32, 3.892.150.77
Managed money at a 3y positioning extreme (short)Silver132017-07-03203.533.420.29, 6.621.970.77
Managed money at a 3y positioning extreme (short)Copper72023-05-161-0.10-0.30-0.79, 0.80-0.220.43
Managed money at a 3y positioning extreme (short)Copper72023-05-1650.490.48-0.63, 1.640.780.57
Managed money at a 3y positioning extreme (short)Copper72023-05-16101.912.100.62, 3.102.650.71
Managed money at a 3y positioning extreme (short)Copper72023-05-16201.281.68-0.30, 2.801.470.71
Managed money at a 3y positioning extreme (short)EUR/USD112016-10-181-0.08-0.03-0.20, 0.03-1.390.36
Managed money at a 3y positioning extreme (short)EUR/USD112016-10-185-0.040.27-0.54, 0.47-0.160.55
Managed money at a 3y positioning extreme (short)EUR/USD112016-10-1810-0.20-0.38-0.69, 0.27-0.760.46
Managed money at a 3y positioning extreme (short)EUR/USD112016-10-1820-0.61-0.17-1.48, 0.22-1.300.36
Managed money at a 3y positioning extreme (short)JPY142017-07-181-0.000.06-0.27, 0.27-0.010.64
Managed money at a 3y positioning extreme (short)JPY142017-07-185-0.65-0.63-1.18, -0.10-2.300.36
Managed money at a 3y positioning extreme (short)JPY142017-07-1810-0.33-0.05-1.05, 0.34-0.890.50
Managed money at a 3y positioning extreme (short)JPY142017-07-1820-0.150.13-1.28, 0.93-0.240.50
2s10s crosses into inversionS&P 500441978-08-1810.030.03-0.19, 0.270.300.55
2s10s crosses into inversionS&P 500441978-08-185-0.13-0.25-0.63, 0.41-0.480.46
2s10s crosses into inversionS&P 500441978-08-18100.030.41-0.78, 0.800.070.59
2s10s crosses into inversionS&P 500441978-08-18200.371.04-0.77, 1.420.650.64
Implied vol below realised (the premium inverts)S&P 500532018-02-141-0.71-0.18-1.40, -0.18-2.270.36
Implied vol below realised (the premium inverts)S&P 500532018-02-145-0.680.53-1.89, 0.35-1.180.57
Implied vol below realised (the premium inverts)S&P 500532018-02-1410-0.230.81-1.71, 1.00-0.320.72
Implied vol below realised (the premium inverts)S&P 500532018-02-14200.101.95-1.59, 1.630.120.68
scalars
fieldvalue
n relationships60
n significant6

The reading pipeline Das of 2026-09-19

articles ingested
4,011
discovered
4,430
the rest queue for later runs
Independent macro and finance writers are fetched twice daily, parsed to text and embedded so the commentary can cite what they actually argued rather than paraphrasing a headline. Where they disagree with each other, the weekly note names both sides. This week's →
scalars
fieldvalue
articles ingested4,011
discovered4,430

Through time — level, distribution, seasonality and range Cas of 2026-09-19 13:06 UTC

36 headline series across 10 desks, each read four ways: level against its own trailing mean, position in its full history, calendar-month seasonality, and an empirical 63-day range. The most stretched is Copper at the 100th percentile of 415 observations back to 1992-01-01. Only 3 of 36 show a calendar pattern larger than their own noise (Gasoline (Gulf), 2s10s slope, 5y breakeven) — the rest are shown with that stated, because a seasonal chart drawn on noise is the most convincing bad chart in finance. Behind the tabs: 18 distinct series decomposed with statsmodels 0.14.6, 18 with a two-state Markov filter and 18 with an analog episode table scored against a linked price.

level
4.94
pct · as of 2026-09-17
percentile
46
of 16,163 obs since 1962
percentile, 5y
99
of 1,248 obs
vs 13w mean
+0.26
level minus its own quarter
vs 52w mean
+0.59
level minus its own year
year on year
+0.80
same week last year
1.133.165.182021-10-012022-12-302024-03-292025-06-272026-09-18level 4.94MSTL t… 4.64
MSTL with periods 5 and 52 on 3377 weekly observations from 1962-01-05. The trend is drawn over the level and the remainder under it; nothing here is extrapolated. The trend explains 99% of the variance the remainder does not (Hyndman's trend strength); the seasonal component explains 13%. · FRED DGS10 · statsmodels 0.14.6
-0.6170.0320.6822021-10-012022-12-302024-03-292025-06-272026-09-18remai… 0.240
What the trend and the seasonal do not account for, on the same dates. A remainder that trends is a decomposition that has missed something, which is why it is drawn rather than described. · FRED DGS10
0.5215.84now
The whole history as a distribution, with today marked. Median 5.40 over 16,163 observations. · FRED DGS10
0%50%100%last 5 yearsnow · 46th0.5215.84
The same record read cumulatively: today sits at the 46 percentile of the full history (n=16,163) and the 99 of the last five years (n=1,248). A level extreme against forty years and ordinary against five is a different fact from one that is extreme against both. · FRED DGS10
+0.0Jan+0.0Feb+0.0Mar+0.1Apr-0.0May-0.0Jun+0.0Jul-0.0Aug-0.0Sep-0.0Oct-0.1Nov+0.0Decno significant pattern~65 yrs/bar
The spread of monthly means is no larger than the noise — this series has no seasonal worth trading. Kruskal-Wallis across calendar months; the corner figure is the average number of years behind each bar. · FRED DGS10
-0.2030.0010.2042021-10-012022-12-302024-03-292025-06-272026-09-18seaso… 0.056
The MSTL seasonal component itself, at periods 5 and 52. Drawn rather than summarised because a seasonal that changes shape year to year is not one a reader can plan against, and the chart shows that where a single average would hide it. · FRED DGS10 · statsmodels 0.14.6
5.684.141.484.94
Where this has historically gone over 63 trading days: 10th to 90th percentile of 16,075 realised moves, applied to today. A base rate for sizing, not a forecast. · FRED DGS10
downside (10th)
4.14
-0.80
median path
4.97
50th percentile
upside (90th)
5.68
+0.74
Markov-filtered mean
+0.001
per week, state-weighted
The band above is unconditional: it does not know what state we are in. The filtered mean beside it does — it is the two-state Markov model's mean weighted by today's filtered probability (6 of the high-volatility state). The two disagree when the current state is unusual, which is the point of printing both.
state
low volatility
since 2025-07-04
P(high vol) now
6
filtered, this week
persisted
64
weeks (448 days)
P(exit in 4w)
0.0%
0 of 3 spells this old
spells on record
48
24 completed in this state
-4%51%106%2021-10-012022-12-302024-03-292025-06-272026-09-18P(high v… 6%
Two-state Markov-switching model with switching variance, fitted on 1300 weekly change in level. The line is the FILTERED probability of the high-volatility state — a statement about weeks that have happened, not a forecast. Exit counts are empirical spell counts, not the model's expected durations. · FRED DGS10 · statsmodels 0.14.6
1.133.165.182021-10-012022-12-302024-03-292025-06-272026-09-18level 4.94
The same weeks on the level: shaded stretches are the ones the filter puts in the high-volatility state. Mean +0.001 per week at 0.086 standard deviation in the calm state against -0.001 at 0.148 in the volatile one. · FRED DGS10 · MarkovRegression(k_regimes=2, trend='c', switching_variance=True)
level
107.02
usd · as of 2026-09-15
percentile
98
of 9,502 obs since 1986
percentile, 5y
95
of 1,247 obs
vs 13w mean
+21.61
level minus its own quarter
vs 52w mean
+28.85
level minus its own year
year on year
+69.8%
same week last year
52.7588.66124.582021-10-012022-12-302024-03-292025-06-272026-09-18level 107.02MSTL … 92.89
MSTL with periods 5 and 52 on 2122 weekly observations from 1986-01-03. The trend is drawn over the level and the remainder under it; nothing here is extrapolated. The trend explains 96% of the variance the remainder does not (Hyndman's trend strength); the seasonal component explains 16%. · FRED DCOILWTICO · statsmodels 0.14.6
-17.4984.48726.4732021-10-012022-12-302024-03-292025-06-272026-09-18remai… 7.869
What the trend and the seasonal do not account for, on the same dates. A remainder that trends is a decomposition that has missed something, which is why it is drawn rather than described. · FRED DCOILWTICO
-36.98145.31now
The whole history as a distribution, with today marked. Median 47.02 over 9,502 observations. · FRED DCOILWTICO
0%50%100%last 5 yearsnow · 97th-36.98145.31
The same record read cumulatively: today sits at the 98 percentile of the full history (n=9,502) and the 95 of the last five years (n=1,247). A level extreme against forty years and ordinary against five is a different fact from one that is extreme against both. · FRED DCOILWTICO
+0.8Jan-0.2Feb+1.4Mar+3.0Apr+1.1May+0.7Jun+1.1Jul+0.6Aug+1.3Sep-2.4Oct-3.6Nov+0.3Decno significant pattern~41 yrs/bar
The spread of monthly means is no larger than the noise — this series has no seasonal worth trading. Kruskal-Wallis across calendar months; the corner figure is the average number of years behind each bar. · FRED DCOILWTICO
-10.7671.16413.0952021-10-012022-12-302024-03-292025-06-272026-09-18seaso… 2.204
The MSTL seasonal component itself, at periods 5 and 52. Drawn rather than summarised because a seasonal that changes shape year to year is not one a reader can plan against, and the chart shows that where a single average would hide it. · FRED DCOILWTICO · statsmodels 0.14.6
139.7984.6976.01107.02
Where this has historically gone over 63 trading days: 10th to 90th percentile of 9,414 realised moves, applied to today. A base rate for sizing, not a forecast. · FRED DCOILWTICO
downside (10th)
84.69
-20.9%
median path
110.02
50th percentile
upside (90th)
139.79
+30.6%
Markov-filtered mean
+0.059
per week, state-weighted
The band above is unconditional: it does not know what state we are in. The filtered mean beside it does — it is the two-state Markov model's mean weighted by today's filtered probability (10 of the high-volatility state). The two disagree when the current state is unusual, which is the point of printing both.
state
low volatility
since 2026-08-14
P(high vol) now
10
filtered, this week
persisted
6
weeks (42 days)
P(exit in 4w)
0.0%
0 of 11 spells this old
spells on record
36
18 completed in this state
-6%50%106%2021-10-012022-12-302024-03-292025-06-272026-09-18P(high … 10%
Two-state Markov-switching model with switching variance, fitted on 1300 weekly % log change. The line is the FILTERED probability of the high-volatility state — a statement about weeks that have happened, not a forecast. Exit counts are empirical spell counts, not the model's expected durations. · FRED DCOILWTICO · statsmodels 0.14.6
52.7588.66124.582021-10-012022-12-302024-03-292025-06-272026-09-18level 107.02
The same weeks on the level: shaded stretches are the ones the filter puts in the high-volatility state. Mean +0.289 per week at 4.313 standard deviation in the calm state against -1.995 at 15.569 in the volatile one. · FRED DCOILWTICO · MarkovRegression(k_regimes=2, trend='c', switching_variance=True)
level
118.21
idx · as of 2026-09-11
percentile
78
of 5,188 obs since 2006
percentile, 5y
16
of 1,250 obs
vs 13w mean
-1.36
level minus its own quarter
vs 52w mean
-1.48
level minus its own year
year on year
-1.5%
same week last year
112.70121.77130.842021-09-242022-12-232024-03-222025-06-202026-09-11level 118.21MSTL… 119.45
MSTL with periods 5 and 52 on 1080 weekly observations from 2006-01-06. The trend is drawn over the level and the remainder under it; nothing here is extrapolated. The trend explains 98% of the variance the remainder does not (Hyndman's trend strength); the seasonal component explains 11%. · FRED DTWEXBGS · statsmodels 0.14.6
-4.1171.0496.2152021-09-242022-12-232024-03-222025-06-202026-09-11rema… -0.600
What the trend and the seasonal do not account for, on the same dates. A remainder that trends is a decomposition that has missed something, which is why it is drawn rather than described. · FRED DTWEXBGS
85.47130.04now
The whole history as a distribution, with today marked. Median 110.21 over 5,188 observations. · FRED DTWEXBGS
0%50%100%last 5 yearsnow · 78th85.47130.04
The same record read cumulatively: today sits at the 78 percentile of the full history (n=5,188) and the 16 of the last five years (n=1,250). A level extreme against forty years and ordinary against five is a different fact from one that is extreme against both. · FRED DTWEXBGS
+0.0Jan+0.2Feb-0.1Mar-0.6Apr+0.4May+0.0Jun-0.4Jul+0.6Aug+0.3Sep+0.4Oct+0.3Nov-0.3Decno significant pattern~21 yrs/bar
The spread of monthly means is no larger than the noise — this series has no seasonal worth trading. Kruskal-Wallis across calendar months; the corner figure is the average number of years behind each bar. · FRED DTWEXBGS
-1.2460.3131.8722021-09-242022-12-232024-03-222025-06-202026-09-11seas… -0.630
The MSTL seasonal component itself, at periods 5 and 52. Drawn rather than summarised because a seasonal that changes shape year to year is not one a reader can plan against, and the chart shows that where a single average would hide it. · FRED DTWEXBGS · statsmodels 0.14.6
124.12113.45113.76118.21
Where this has historically gone over 63 trading days: 10th to 90th percentile of 5,100 realised moves, applied to today. A base rate for sizing, not a forecast. · FRED DTWEXBGS
downside (10th)
113.45
-4.0%
median path
118.34
50th percentile
upside (90th)
124.12
+5.0%
Markov-filtered mean
-0.005
per week, state-weighted
The band above is unconditional: it does not know what state we are in. The filtered mean beside it does — it is the two-state Markov model's mean weighted by today's filtered probability (0.6 of the high-volatility state). The two disagree when the current state is unusual, which is the point of printing both.
state
low volatility
since 2020-11-20
P(high vol) now
0.6
filtered, this week
persisted
304
weeks (2128 days)
P(exit in 4w)
not countable
0 of 0 spells this old
spells on record
38
19 completed in this state
-2%21%44%2021-09-242022-12-232024-03-222025-06-202026-09-11P(high v… 1%
Two-state Markov-switching model with switching variance, fitted on 1079 weekly % log change. The line is the FILTERED probability of the high-volatility state — a statement about weeks that have happened, not a forecast. Exit counts are empirical spell counts, not the model's expected durations. · FRED DTWEXBGS · statsmodels 0.14.6
112.70121.77130.842021-09-242022-12-232024-03-222025-06-202026-09-11level 118.21
The same weeks on the level: shaded stretches are the ones the filter puts in the high-volatility state. Mean -0.007 per week at 0.641 standard deviation in the calm state against +0.266 at 1.554 in the volatile one. · FRED DTWEXBGS · MarkovRegression(k_regimes=2, trend='c', switching_variance=True)
level
15.44
pct · as of 2026-09-17
percentile
35
of 9,276 obs since 1990
percentile, 5y
26
of 1,287 obs
vs 13w mean
-0.49
level minus its own quarter
vs 52w mean
-2.71
level minus its own year
year on year
-0.01
same week last year
9.9328.6247.312021-10-012022-12-302024-03-292025-06-272026-09-18level 15.44MSTL … 17.65
MSTL with periods 5 and 52 on 1916 weekly observations from 1990-01-05. The trend is drawn over the level and the remainder under it; nothing here is extrapolated. The trend explains 67% of the variance the remainder does not (Hyndman's trend strength); the seasonal component explains 16%. · FRED VIXCLS · statsmodels 0.14.6
-9.5684.02817.6252021-10-012022-12-302024-03-292025-06-272026-09-18rema… -1.450
What the trend and the seasonal do not account for, on the same dates. A remainder that trends is a decomposition that has missed something, which is why it is drawn rather than described. · FRED VIXCLS
9.1482.69now
The whole history as a distribution, with today marked. Median 17.58 over 9,276 observations. · FRED VIXCLS
0%50%100%last 5 yearsnow · 36th9.1482.69
The same record read cumulatively: today sits at the 35 percentile of the full history (n=9,276) and the 26 of the last five years (n=1,287). A level extreme against forty years and ordinary against five is a different fact from one that is extreme against both. · FRED VIXCLS
+0.3Jan+0.8Feb-0.4Mar-1.2Apr-0.7May-0.2Jun+0.4Jul+1.4Aug+1.5Sep+0.3Oct-1.9Nov-0.4Decno significant pattern~37 yrs/bar
The spread of monthly means is no larger than the noise — this series has no seasonal worth trading. Kruskal-Wallis across calendar months; the corner figure is the average number of years behind each bar. · FRED VIXCLS
-5.2792.0539.3852021-10-012022-12-302024-03-292025-06-272026-09-18seas… -0.184
The MSTL seasonal component itself, at periods 5 and 52. Drawn rather than summarised because a seasonal that changes shape year to year is not one a reader can plan against, and the chart shows that where a single average would hide it. · FRED VIXCLS · statsmodels 0.14.6
23.097.9621.1515.44
Where this has historically gone over 63 trading days: 10th to 90th percentile of 9,188 realised moves, applied to today. A base rate for sizing, not a forecast. · FRED VIXCLS
downside (10th)
7.96
-7.48
median path
14.85
50th percentile
upside (90th)
23.09
+7.65
Markov-filtered mean
-0.144
per week, state-weighted
The band above is unconditional: it does not know what state we are in. The filtered mean beside it does — it is the two-state Markov model's mean weighted by today's filtered probability (3 of the high-volatility state). The two disagree when the current state is unusual, which is the point of printing both.
state
low volatility
since 2026-06-19
P(high vol) now
3
filtered, this week
persisted
14
weeks (98 days)
P(exit in 4w)
21.7%
5 of 23 spells this old
spells on record
173
86 completed in this state
-3%51%106%2021-10-012022-12-302024-03-292025-06-272026-09-18P(high v… 3%
Two-state Markov-switching model with switching variance, fitted on 1300 weekly change in level. The line is the FILTERED probability of the high-volatility state — a statement about weeks that have happened, not a forecast. Exit counts are empirical spell counts, not the model's expected durations. · FRED VIXCLS · statsmodels 0.14.6
9.9328.6247.312021-10-012022-12-302024-03-292025-06-272026-09-18level 15.44
The same weeks on the level: shaded stretches are the ones the filter puts in the high-volatility state. Mean -0.161 per week at 1.687 standard deviation in the calm state against +0.388 at 5.723 in the volatile one. · FRED VIXCLS · MarkovRegression(k_regimes=2, trend='c', switching_variance=True)

10y Treasury · last 4.94 as of 2026-09-17 · 16,163 observations from 1962-01-02

1.133.165.182021-10-012022-12-302024-03-292025-06-272026-09-1810y Tr… 4.94
Five years of 10y Treasury with the high-volatility weeks shaded, from the same two-state filter the Regime tab draws. One state, one shading, every tab. · FRED DGS10

The last 8 times this looked like today — and what S&P 500 did next

episodezlevelS&P 500 +5dS&P 500 +21d
2026-08-032.434.70+2.01%+0.41%
2026-07-132.094.62-0.96%+2.83%
2026-05-192.234.67+2.25%+0.90%
2023-10-122.304.70-1.65%+1.51%
2023-09-212.114.49-0.70%-2.44%
2022-11-082.164.14+4.27%+2.76%
2022-10-182.364.01+3.74%+6.42%
2022-09-272.653.97+3.94%+5.03%
z in [2.0, 99.0) · n=139 episodes · 21-session hit rate 9% · median +5d 0.00, +21d 0.00 · grade C
Episodes when this series last sat in the same trailing-365-observation z bucket, with the forward 5- and 21-session move of S&P 500. 139 episodes at least 21 days apart; the table shows the most recent 8. A conditional distribution with its count, not a signal.

WTI crude · last 107.02 as of 2026-09-15 · 9,502 observations from 1986-01-02

52.7588.66124.582021-10-012022-12-302024-03-292025-06-272026-09-18WTI … 107.02
Five years of WTI crude with the high-volatility weeks shaded, from the same two-state filter the Regime tab draws. One state, one shading, every tab. · FRED DCOILWTICO

The last 8 times this looked like today — and what WTI crude did next

episodezlevelWTI crude +5dWTI crude +21d
2026-06-032.0699.76-6.09%-30.10%
2026-05-072.3998.38+6.38%-4.13%
2026-04-162.7796.46+2.91%+12.99%
2026-03-263.8396.18+17.73%+2.33%
2026-03-052.7680.88+18.21%+40.96%
2022-06-162.14117.56-10.05%-15.29%
2022-05-262.32116.19+0.59%-6.13%
2022-05-052.07108.17-1.87%+9.98%
z in [2.0, 99.0) · n=106 episodes · 21-session hit rate 56% · median +5d 0.01, +21d 1.25 · grade C
Episodes when this series last sat in the same trailing-365-observation z bucket, with the forward 5- and 21-session move of WTI crude. 106 episodes at least 21 days apart; the table shows the most recent 8. A conditional distribution with its count, not a signal.

Broad dollar · last 118.21 as of 2026-09-11 · 5,188 observations from 2006-01-02

112.70121.77130.842021-09-242022-12-232024-03-222025-06-202026-09-11Broa… 118.21
Five years of Broad dollar with the high-volatility weeks shaded, from the same two-state filter the Regime tab draws. One state, one shading, every tab. · FRED DTWEXBGS

The last 8 times this looked like today — and what Broad dollar did next

episodezlevelBroad dollar +5dBroad dollar +21d
2026-04-30-1.05118.67-0.56%+0.17%
2026-04-08-1.04119.06-0.59%-0.88%
2026-03-10-1.19118.73+0.93%+0.28%
2026-02-13-1.66117.53+0.40%+2.19%
2026-01-23-1.36118.90-0.84%-0.81%
2026-01-02-1.20119.61+0.51%-1.04%
2025-12-11-1.15119.98+0.06%+0.20%
2025-10-20-1.01120.62+0.15%+0.49%
z in [-2.0, -1.0) · n=74 episodes · 21-session hit rate 46% · median +5d -0.03, +21d -0.21 · grade C
Episodes when this series last sat in the same trailing-365-observation z bucket, with the forward 5- and 21-session move of Broad dollar. 74 episodes at least 21 days apart; the table shows the most recent 8. A conditional distribution with its count, not a signal.

VIX · last 15.44 as of 2026-09-17 · 9,276 observations from 1990-01-02

9.9328.6247.312021-10-012022-12-302024-03-292025-06-272026-09-18VIX 15.44
Five years of VIX with the high-volatility weeks shaded, from the same two-state filter the Regime tab draws. One state, one shading, every tab. · FRED VIXCLS

The last 8 times this looked like today — and what S&P 500 did next

episodezlevelS&P 500 +5dS&P 500 +21d
2026-07-31-0.6615.99+3.58%+2.62%
2026-07-06-0.7415.57-0.29%+2.64%
2026-06-15-0.6016.20-1.08%-0.14%
2026-05-25-0.5216.59+1.08%-2.04%
2026-01-22-0.5815.64+0.81%-0.06%
2025-12-29-0.9014.20-0.05%+1.06%
2025-12-03-0.5116.08+0.54%+0.13%
2025-09-05-0.5215.18+1.59%+3.99%
z in [-1.0, -0.5) · n=293 episodes · 21-session hit rate 18% · median +5d 0.00, +21d 0.00 · grade C
Episodes when this series last sat in the same trailing-365-observation z bucket, with the forward 5- and 21-session move of S&P 500. 293 episodes at least 21 days apart; the table shows the most recent 8. A conditional distribution with its count, not a signal.

What changed since last week

leafthennowchangecompared with
horizon days63.0063.00unchanged2026-09-12
n series33.0036.00+32026-09-12
n panels18.0018.00unchanged2026-09-18
1 of 3 headline leaves moved. A repeated value can mean the upstream had not published, not that nothing happened.
ACF of the remainder · 4 rows
seriesnlags outside 95 bandfirst lag outsideconf95reading
10y Treasury2602110.12Autocorrelation of the MSTL remainder over 24 lags, with the 95% band at ±0.122,
WTI crude2601810.12Autocorrelation of the MSTL remainder over 24 lags, with the 95% band at ±0.122,
Broad dollar2602110.12Autocorrelation of the MSTL remainder over 24 lags, with the 95% band at ±0.122,
VIX260510.12Autocorrelation of the MSTL remainder over 24 lags, with the 95% band at ±0.122,
Harvey-Jaeger style structural check: the autocorrelation of the decomposition's remainder against a 95% band. Lags outside the band mean the trend and seasonal have not taken everything systematic out of the series. This is Method content. It is not a forecast and nothing is extrapolated from it.

cumulative abnormal return vs the sample's own mean drift, aligned by DATE to the nearest session; only the first day of each episode counts as an event; 95% CIs from 2,000 bootstrap resamples. Events are rebuilt from the underlying official series, so these are historical relationships rather than a record of calls we published. Window 10 sessions before, 20 after. As of 2026-09-19 13:12 UTC. Floor for a conditional claim: 20 episodes (grade_t_thresholds.json).

2s10s crosses into inversion — S&P 500 · n=44 · earliest 1978-08-18
horizonnmeanmedian95% CIthit rateCI
+1d44+0.03%+0.03%[-0.2, +0.3]0.355%straddles zero
+5d44-0.13%-0.25%[-0.6, +0.4]-0.4846%straddles zero
+10d44+0.03%+0.41%[-0.8, +0.8]0.0759%straddles zero
+20d44+0.37%+1.04%[-0.8, +1.4]0.6564%straddles zero
series · 4 rows
labelseries idunitkindlastas offirst obsn obsma 13wvs 13w
10y TreasuryDGS10pctlevel4.942026-09-171962-01-0216,1634.680.26
WTI crudeDCOILWTICOusdprice107.022026-09-151986-01-029,50285.4121.61
Broad dollarDTWEXBGSidxprice118.212026-09-112006-01-025,188119.58-1.36
VIXVIXCLSpctlevel15.442026-09-171990-01-029,27615.93-0.49
scalars
fieldvalue
horizon days63
n series36
statsmodels version0.14.6
statsmodels pinned0.14.6
statsmodels errornot reported
4 rows and 1 field withheld at this tier: absent from the page, not hidden in it.

What a 31-day filing lag is worth, measured Das of 2026-09-11 18:01 UTC

A fundamental exists on the day a quarter ends and becomes public on the day the filing is submitted, a median of 31 days later in this universe. A backtest that stamps the number at the period end therefore trades on it for about a third of every quarter before anyone could have seen it, and is paid for the price move that happened while the market was still waiting. Four of the five quantamental repositories this work draws on do exactly that and none of them measures it. So we run the same earnings-yield quintile long-short twice over 147 names and 155 weekly rebalances, identical in every respect but one: which vintage of the fundamental each arm may see.

cross-section on unfiled data
32%
on a typical rebalance
signal displacement
0.18 sd
cross-sectional, on the names affected
Sharpe manufactured
+0.20
and +2.4 points of return a year
armannualised Sharpe95% bootstrap CIdeflated Sharpe
A: filing-stamped (what we publish)+0.18[-0.96, +1.26]0.57
B: period-end-stamped (the lookahead)+0.38[-0.75, +1.45]0.70
The exposure is what is measured without ambiguity: a third of the cross-section, a third of the time, priced against a filing nobody had. The Sharpe gap is the more quotable number and the weaker one, and it is reported with the test that refuses to bless it: Hansen's SPA on the difference returns p 0.15, so 155 weekly rebalances cannot separate a fifth of a Sharpe point from noise. Neither arm is traded and neither is a forecast; arm B is a deliberate error kept in the code so its size can be measured instead of assumed.
window
keyvalue
from2023-09-15
to2026-08-28
spa
keyvalue
p_spa0.30
p_lower0.30
p_upper0.30
t_spa0.65
best_armB
nullmax_k E[d_k] <= 0: no strategy in the family beats the benchmark
n_strategies2
spa on the gap
keyvalue
p_spa0.15
t_spa1.02
nullthe lookahead arm does not out-earn the honest arm
skipped · 2 rows
tickerreason
METAno quarter with four consecutive net-income periods and a share count
SHOPno quarter with four consecutive net-income periods and a share count
per date · 60 rows
daten namesn vintage differsshare vintage differsspearman a bmean abs gap sdret aret b
2025-07-111471200.820.920.19-0.03-0.03
2025-07-181471140.780.920.190.020.02
2025-07-25147860.580.930.22-0.01-0.01
2025-08-01147570.390.950.280.030.02
2025-08-08147190.131.000.070.000.00
2025-08-15147160.111.000.060.020.02
2025-08-22147130.091.000.050.000.00
2025-08-2914760.041.000.12-0.00-0.000846
2025-09-0514760.041.000.090.00-0.00
2025-09-1214750.031.000.08-0.02-0.02
2025-09-1914740.031.000.10-0.00-0.00
2025-09-2614750.031.000.10-0.00042-0.00042
2025-10-031471200.820.920.23-0.03-0.03
2025-10-101471180.800.930.24-0.01-0.01
2025-10-171471160.790.930.22-0.02-0.02
2025-10-24147890.610.930.240.000.00
2025-10-31147530.360.980.160.030.03
2025-11-07147190.131.000.090.020.03
2025-11-14147160.111.000.080.010.01
2025-11-21147110.071.000.03-0.02-0.02
2025-11-28147100.071.000.060.010.01
2025-12-0514780.051.000.080.030.03
2025-12-1214760.041.000.08-0.01-0.01
2025-12-1914710.011.000.040.010.01
2025-12-2614710.011.000.050.010.01
2026-01-021471200.820.850.260.000.00
2026-01-091471200.820.850.27-0.020.00
2026-01-161471190.810.850.27-0.0001190.00
2026-01-231471160.790.870.250.020.03
2026-01-301471030.700.900.240.010.03
2026-02-06147940.640.900.25-0.01-0.01
2026-02-13147670.460.920.300.020.02
2026-02-20147440.300.970.22-0.01-0.01
2026-02-27147110.070.990.22-0.02-0.02
2026-03-06147100.070.990.15-0.01-0.01
2026-03-1314760.040.990.210.020.02
2026-03-2014730.021.000.070.010.01
2026-03-2714730.021.000.06-0.01-0.01
2026-04-031471170.800.920.220.000.0008
2026-04-101471180.800.930.22-0.02-0.03
2026-04-171471150.780.920.21-0.04-0.03
2026-04-24147910.620.930.23-0.01-0.01
2026-05-01147500.340.960.20-0.04-0.03
2026-05-08147170.120.990.14-0.02-0.02
2026-05-15147160.111.000.110.010.01
2026-05-22147110.071.000.10-0.02-0.02
2026-05-2914770.050.990.230.050.04
2026-06-0514760.040.990.24-0.01-0.01
2026-06-1214750.030.990.26-0.01-0.01
2026-06-1914740.030.990.340.020.01
2026-06-2614730.021.000.170.000.00
2026-07-031471030.700.870.360.010.01
2026-07-101471020.690.870.360.040.04
2026-07-17147990.670.870.360.020.03
2026-07-24147760.520.890.370.0006370.02
2026-07-31147560.380.910.42-0.03-0.04
2026-08-07147150.101.000.180.000.01
2026-08-14147130.091.000.140.020.03
2026-08-21147100.071.000.12-0.000.00
2026-08-2814720.011.000.15-0.00-0.00
scalars
fieldvalue
signaltrailing twelve month earnings yield (TTM net income per share / price)
n universe147
n rebalances155
sharpe gap annualised0.20
return gap pct per year2.43
share of cross section using unfiled data0.32
median spearman a vs b0.98
mean abs signal gap in sd0.18
median filing lag days when arms differ35
filing lag p90 days54
max filing lag days407
pbonot reported
price sourcecache
n skipped2

The null-result registry — everything we tested, including what failed Das of 2026-09-17 16:17 UTC

N 13F ownership feature 'd_managers' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC +0.0475 (t=1.68), positive 6/9 quarters
control: shuffled target x200/quarter (control IC -0.0004) · verdict: does not clear noise floor + |t|>=2
N 13F ownership feature 'ret_1q' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC +0.0382 (t=1.18), positive 6/9 quarters
control: shuffled target x200/quarter (control IC +0.0002) · verdict: does not clear noise floor + |t|>=2
N 13F ownership feature 'd_managers_pct' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC +0.0355 (t=1.34), positive 6/9 quarters
control: shuffled target x200/quarter (control IC -0.0003) · verdict: does not clear noise floor + |t|>=2
N 13F ownership feature 'log_value' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC -0.0132 (t=-0.58), positive 4/10 quarters
control: shuffled target x200/quarter (control IC -0.0007) · verdict: does not clear noise floor + |t|>=2
N 13F ownership feature 'n_managers' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC -0.0097 (t=-0.43), positive 3/10 quarters
control: shuffled target x200/quarter (control IC -0.0005) · verdict: does not clear noise floor + |t|>=2
N 13F ownership feature 'top5_share' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC +0.0062 (t=0.39), positive 6/10 quarters
control: shuffled target x200/quarter (control IC -0.0001) · verdict: does not clear noise floor + |t|>=2
N 13F ownership feature 'hhi' predicts the quarterly return AFTER the filing becomes public
target: next tradeable quarterly return (t+1 to t+2 after period t) · sample: 26,375 name-quarters, 12 quarters, whole 13F universe
result: IC +0.0058 (t=0.41), positive 5/10 quarters
control: shuffled target x200/quarter (control IC +0.0002) · verdict: does not clear noise floor + |t|>=2
N a gradient-boosted combination of all ownership features predicts what no single feature does
target: cross-sectional rank of the tradeable quarterly return · sample: 4 expanding-window folds, adjacent quarter purged
result: IC +0.0320 (t=0.62) — BELOW the best single feature (+0.0475)
control: shuffled target (control -0.0016) · verdict: the signal did not need a bigger model; there is no signal
N cross-asset fundamentals lead prices at a 3-month horizon
target: 3-month forward return / yield change per asset · sample: 19 features across 5 asset classes, monthly
result: 3 raw hits at p<0.05 (1.0 expected by chance); 0 survive FDR
control: circular block bootstrap · verdict: consistent with chance once multiplicity is accounted for
N SEC balance-sheet fundamentals add predictive content beyond price momentum for 3-month cross-sectional returns
target: cross-sectional rank of 3-month forward return · sample: 2,360 obs, 239 names, 9 purged expanding folds, 45-day filing lag
result: model IC +0.0674 (t=1.64) vs momentum alone +0.0563; top SHAP feature IS momentum
control: shuffled target x200/fold (+0.0005) · verdict: increment over momentum not significant; fundamentals add little the price does not already carry
N the full-sample regime label is recoverable in real time (i.e., regime clarity is not hindsight)
target: agreement between causal (expanding-window) and full-sample labels · sample: 1443 weeks from 1999-01-15, k=4 states
result: agreement 35.9% vs chance 29.5% (lift +6.4pp); causal median run 2 weeks
control: chance agreement from the two label distributions · verdict: most regime clarity is hindsight; the mixture is memoryless — descriptive use only
N bitcoin's weekly moves are explainable by same-week cross-asset flows (equities, vol, dollar, real yields, credit)
target: contemporaneous weekly BTC return (co-movement, not prediction) · sample: 610 weeks
result: CV R² -0.08 — effectively nil
control: 5-fold cross-validation · verdict: bitcoin is idiosyncratic; cross-asset flow attribution carries no content for this desk and the page says so
C headline macro/asset series carry tradeable calendar-month seasonality
target: difference in monthly-change distributions across calendar months · sample: 17 distinct series, decades each
result: 4 of 17 significant (Kruskal-Wallis p<0.05); the rest are noise drawn as bars
control: Kruskal-Wallis across months (non-parametric) · verdict: seasonality is real in a minority (gasoline, curve, credit, breakevens) and absent in most — every seasonal chart on the site carries its own verdict
N Basel Core (risk-balanced quadrant sleeves, nested ERC, monthly, unlevered) has a higher Sharpe than each registry benchmark and listed comparator.
target: annualized Sharpe over T-bills vs each benchmark on the common window · sample: 2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 24 configurations stored
result: sixty_forty: Sharpe diff +0.00 [-0.30, +0.31] indistinguishable from zero; global_sixty_forty: Sharpe diff +0.08 [-0.19, +0.36] indistinguishable from zero; all_weather: Sharpe diff -0.09 [-0.24, +0.07] indistinguishable from zero; permanent: Sharpe diff -0.18 [-0.40, +0.04] indistinguishable from zero; golden_butterfly: Sharpe diff -0.15 [-0.36, +0.07] indistinguishable from zero; risk_parity_naive: Sharpe diff +0.11 [-0.02, +0.24] indistinguishable from zero; erc: Sharpe diff +0.11 [-0.03, +0.24] indistinguishable from zero; equity_100: Sharpe diff +0.05 [-0.30, +0.40] indistinguishable from zero; cash: Sharpe diff +1.09 [+0.50, +1.66] above zero; basel_core_static: Sharpe diff +0.01 [-0.04, +0.07] indistinguishable from zero; SPY: Sharpe diff +0.05 [-0.30, +0.39] indistinguishable from zero; QQQ: Sharpe diff -0.08 [-0.46, +0.31] indistinguishable from zero; ALLW: Sharpe diff -0.05 [-0.52, +0.48] indistinguishable from zero; AOR: Sharpe diff +0.03 [-0.34, +0.40] indistinguishable from zero; RPAR: Sharpe diff +0.06 [-0.20, +0.31] indistinguishable from zero; DBMF: Sharpe diff -0.22 [-1.23, +0.78] indistinguishable from zero
control: DSR=0.992 over 24 trials; PBO=0.276 over 24 configs · verdict: 1 of 16 comparisons above zero, 0 below, at L1. No paper track yet, so no L2 claim.
N Time-series momentum is positive across asset classes at one to twelve months; tilting sleeve weights by the sign of trailing excess returns raises risk-adjusted return and cuts drawdown. Gate failed.
target: annualized Sharpe over T-bills vs each benchmark on the common window · sample: 2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 3 configurations stored
result: basel_core: Sharpe diff +0.02 [-0.08, +0.12] indistinguishable from zero; sixty_forty: Sharpe diff +0.03 [-0.32, +0.36] indistinguishable from zero; global_sixty_forty: Sharpe diff +0.10 [-0.21, +0.42] indistinguishable from zero; all_weather: Sharpe diff -0.07 [-0.23, +0.10] indistinguishable from zero; permanent: Sharpe diff -0.15 [-0.38, +0.08] indistinguishable from zero; golden_butterfly: Sharpe diff -0.12 [-0.36, +0.11] indistinguishable from zero; risk_parity_naive: Sharpe diff +0.13 [-0.03, +0.28] indistinguishable from zero; erc: Sharpe diff +0.13 [-0.03, +0.28] indistinguishable from zero; equity_100: Sharpe diff +0.07 [-0.31, +0.44] indistinguishable from zero; cash: Sharpe diff +1.11 [+0.53, +1.69] above zero; basel_core_static: Sharpe diff +0.04 [-0.08, +0.15] indistinguishable from zero; SPY: Sharpe diff +0.07 [-0.30, +0.44] indistinguishable from zero; QQQ: Sharpe diff -0.05 [-0.45, +0.35] indistinguishable from zero; ALLW: Sharpe diff +0.16 [-0.33, +0.70] indistinguishable from zero; AOR: Sharpe diff +0.03 [-0.36, +0.41] indistinguishable from zero; RPAR: Sharpe diff +0.11 [-0.19, +0.40] indistinguishable from zero; DBMF: Sharpe diff -0.17 [-1.10, +0.77] indistinguishable from zero
control: DSR=0.998 over 3 trials; PBO=0.538 over 3 configs · verdict: 1 of 17 comparisons above zero, 0 below, at L1. No paper track yet, so no L2 claim.
N The Treasury term premium (10y minus 3m) predicts duration returns; tilting the duration legs with the z-scored slope adds return in stable states. Bond-only: commodity and FX carry await futures term-structure data. Gate failed.
target: annualized Sharpe over T-bills vs each benchmark on the common window · sample: 2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 4 configurations stored
result: basel_core: Sharpe diff -0.00 [-0.10, +0.09] indistinguishable from zero; sixty_forty: Sharpe diff +0.00 [-0.31, +0.31] indistinguishable from zero; global_sixty_forty: Sharpe diff +0.08 [-0.21, +0.37] indistinguishable from zero; all_weather: Sharpe diff -0.09 [-0.29, +0.10] indistinguishable from zero; permanent: Sharpe diff -0.18 [-0.42, +0.06] indistinguishable from zero; golden_butterfly: Sharpe diff -0.15 [-0.36, +0.06] indistinguishable from zero; risk_parity_naive: Sharpe diff +0.11 [-0.06, +0.27] indistinguishable from zero; erc: Sharpe diff +0.10 [-0.07, +0.27] indistinguishable from zero; equity_100: Sharpe diff +0.05 [-0.31, +0.40] indistinguishable from zero; cash: Sharpe diff +1.08 [+0.49, +1.67] above zero; basel_core_static: Sharpe diff +0.01 [-0.10, +0.12] indistinguishable from zero; SPY: Sharpe diff +0.05 [-0.31, +0.39] indistinguishable from zero; QQQ: Sharpe diff -0.08 [-0.47, +0.31] indistinguishable from zero; ALLW: Sharpe diff -0.26 [-0.80, +0.28] indistinguishable from zero; AOR: Sharpe diff -0.03 [-0.38, +0.34] indistinguishable from zero; RPAR: Sharpe diff -0.01 [-0.33, +0.30] indistinguishable from zero; DBMF: Sharpe diff -0.30 [-1.30, +0.70] indistinguishable from zero
control: DSR=0.997 over 4 trials; PBO=0.653 over 4 configs · verdict: 1 of 17 comparisons above zero, 0 below, at L1. No paper track yet, so no L2 claim.
N Scaling exposure down when the book's recent volatility exceeds a target reduces drawdown without giving up return (no leverage: cap 1.0). Gate failed.
target: annualized Sharpe over T-bills vs each benchmark on the common window · sample: 2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 3 configurations stored
result: basel_core: Sharpe diff +0.01 [-0.09, +0.11] indistinguishable from zero; sixty_forty: Sharpe diff +0.01 [-0.30, +0.33] indistinguishable from zero; global_sixty_forty: Sharpe diff +0.09 [-0.20, +0.38] indistinguishable from zero; all_weather: Sharpe diff -0.08 [-0.26, +0.11] indistinguishable from zero; permanent: Sharpe diff -0.17 [-0.40, +0.07] indistinguishable from zero; golden_butterfly: Sharpe diff -0.14 [-0.37, +0.10] indistinguishable from zero; risk_parity_naive: Sharpe diff +0.12 [-0.04, +0.28] indistinguishable from zero; erc: Sharpe diff +0.12 [-0.05, +0.27] indistinguishable from zero; equity_100: Sharpe diff +0.06 [-0.29, +0.41] indistinguishable from zero; cash: Sharpe diff +1.10 [+0.51, +1.68] above zero; basel_core_static: Sharpe diff +0.02 [-0.08, +0.13] indistinguishable from zero; SPY: Sharpe diff +0.06 [-0.29, +0.40] indistinguishable from zero; QQQ: Sharpe diff -0.07 [-0.46, +0.33] indistinguishable from zero; ALLW: Sharpe diff -0.22 [-0.69, +0.31] indistinguishable from zero; AOR: Sharpe diff -0.00 [-0.36, +0.35] indistinguishable from zero; RPAR: Sharpe diff -0.03 [-0.36, +0.31] indistinguishable from zero; DBMF: Sharpe diff -0.29 [-1.23, +0.66] indistinguishable from zero
control: DSR=0.998 over 3 trials; PBO=0.208 over 3 configs · verdict: 1 of 17 comparisons above zero, 0 below, at L1. No paper track yet, so no L2 claim.
N Basel Ensemble (Core + passing overlays []) has a higher Sharpe than each registry benchmark and listed comparator.
target: annualized Sharpe over T-bills vs each benchmark on the common window · sample: 2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 34 configurations stored
result: basel_core: Sharpe diff +0.00 [+0.00, +0.00] indistinguishable from zero; basel_trend: Sharpe diff -0.02 [-0.12, +0.08] indistinguishable from zero; basel_carry: Sharpe diff +0.00 [-0.09, +0.10] indistinguishable from zero; basel_voltarget: Sharpe diff -0.01 [-0.11, +0.09] indistinguishable from zero; sixty_forty: Sharpe diff +0.00 [-0.30, +0.31] indistinguishable from zero; global_sixty_forty: Sharpe diff +0.08 [-0.19, +0.36] indistinguishable from zero; all_weather: Sharpe diff -0.09 [-0.24, +0.07] indistinguishable from zero; permanent: Sharpe diff -0.18 [-0.40, +0.04] indistinguishable from zero; golden_butterfly: Sharpe diff -0.15 [-0.36, +0.07] indistinguishable from zero; risk_parity_naive: Sharpe diff +0.11 [-0.02, +0.24] indistinguishable from zero; erc: Sharpe diff +0.11 [-0.03, +0.24] indistinguishable from zero; equity_100: Sharpe diff +0.05 [-0.30, +0.40] indistinguishable from zero; cash: Sharpe diff +1.09 [+0.50, +1.66] above zero; basel_core_static: Sharpe diff +0.01 [-0.04, +0.07] indistinguishable from zero; SPY: Sharpe diff +0.05 [-0.30, +0.39] indistinguishable from zero; QQQ: Sharpe diff -0.08 [-0.46, +0.31] indistinguishable from zero; ALLW: Sharpe diff -0.05 [-0.52, +0.48] indistinguishable from zero; AOR: Sharpe diff +0.03 [-0.34, +0.40] indistinguishable from zero; RPAR: Sharpe diff +0.06 [-0.20, +0.31] indistinguishable from zero; DBMF: Sharpe diff -0.22 [-1.23, +0.78] indistinguishable from zero
control: DSR=0.987 over 34 trials; PBO=0.656 over 34 configs · verdict: 1 of 20 comparisons above zero, 0 below, at L1. No paper track yet, so no L2 claim.
18 registered tests on an append-only, hash-chained ledger shared with the Basel allocation research: 17 nulls, 1 conditional findings, 0 tested-positive. Every entry names its control, and no entry can be edited after the fact — a rewrite breaks the hash chain and the site refuses to build. This page is why a forecast here, if one ever clears grade T, will mean something: you can see everything tried, including what failed, and you can verify nothing was reworded.
Append-only JSONL, each entry hash-chained to the previous (SHA-256 over the canonicalised entry plus the prior hash), using the same library as Basel's registry so the two cannot disagree about what a valid chain is. There is no update or delete API on purpose. Basel's entries are ingested content-unchanged. Grades: N tested-null under the stated control; C a conditional finding with its sample; T tested-positive at a pre-registered floor. No entry is a recommendation; several are the reason a recommendation does NOT appear.
by grade
keyvalue
N17
C1
entries · 18 rows
controldategradehashhypothesisidmotivatedresultsampletarget
shuffled target x200/quarter (control IC -0.0004)2026-09-08N2d358f23506356bfdf86fc5e77ce7ef0ad5380a0e7438de178e4da6ea8edf9c213F ownership feature 'd_managers' predicts the quarterly return AFTER the filinown-d_managers/equities/IC +0.0475 (t=1.68), positive 6/9 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target x200/quarter (control IC +0.0002)2026-09-08Nd8b64e31ff9ffaed1061a82e34fd1d2af4d5a3a1f7f1dda5476a026c5376846f13F ownership feature 'ret_1q' predicts the quarterly return AFTER the filing beown-ret_1q/equities/IC +0.0382 (t=1.18), positive 6/9 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target x200/quarter (control IC -0.0003)2026-09-08Nd6ed57cb97978e4a37d3ec5203bb2cd091bfc305d5cc210144ac2f0628ee8e0213F ownership feature 'd_managers_pct' predicts the quarterly return AFTER the fown-d_managers_pct/equities/IC +0.0355 (t=1.34), positive 6/9 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target x200/quarter (control IC -0.0007)2026-09-08N4b80fbafd161f7c07ab3a442fc437d5feebd7ac9d7c44606641102092975d0de13F ownership feature 'log_value' predicts the quarterly return AFTER the filingown-log_value/equities/IC -0.0132 (t=-0.58), positive 4/10 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target x200/quarter (control IC -0.0005)2026-09-08Naf7cb891079e308381b42bab170f83befe443c0ceb510ef598da262eb2a868ff13F ownership feature 'n_managers' predicts the quarterly return AFTER the filinown-n_managers/equities/IC -0.0097 (t=-0.43), positive 3/10 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target x200/quarter (control IC -0.0001)2026-09-08Nfe5b8a5dce694d28de92392f8b00248d456ae8da6abf8726713dbb6960b7e2b113F ownership feature 'top5_share' predicts the quarterly return AFTER the filinown-top5_share/equities/IC +0.0062 (t=0.39), positive 6/10 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target x200/quarter (control IC +0.0002)2026-09-08N586c609a48941361c2e3b422400a4a98a0c87e7538770c821003314ec7ef645813F ownership feature 'hhi' predicts the quarterly return AFTER the filing becomown-hhi/equities/IC +0.0058 (t=0.41), positive 5/10 quarters26,375 name-quarters, 12 quarters, whole 13F universenext tradeable quarterly return (t+1 to t+2 after period t)
shuffled target (control -0.0016)2026-09-08N9adf138ca2878e341738d947365f2591fd832c66f80bfb5ec607b5d66f792a32a gradient-boosted combination of all ownership features predicts what no singleown-combined-xgb/equities/IC +0.0320 (t=0.62) — BELOW the best single feature (+0.0475)4 expanding-window folds, adjacent quarter purgedcross-sectional rank of the tradeable quarterly return
circular block bootstrap2026-09-08N58341b0cef12c1da914bb4da86848943fed02ffb9b1e864942d4ebfcf6a0f407cross-asset fundamentals lead prices at a 3-month horizonxasset-fundamentals/rates/ /fx/ /commodities/ /crypto/3 raw hits at p<0.05 (1.0 expected by chance); 0 survive FDR19 features across 5 asset classes, monthly3-month forward return / yield change per asset
shuffled target x200/fold (+0.0005)2026-09-08N49d6e89621b65dc7b31bf2844e64984cd08506ac7dd8c5e6b111734e4e441074SEC balance-sheet fundamentals add predictive content beyond price momentum for eq-fundamental-factors/equities/model IC +0.0674 (t=1.64) vs momentum alone +0.0563; top SHAP feature IS momentu2,360 obs, 239 names, 9 purged expanding folds, 45-day filing lagcross-sectional rank of 3-month forward return
chance agreement from the two label distributions2026-09-09Nd6c6911a8db50bd38b264fa3218f38cc4cb60b99b9870c3bbdab0d3b4e5646eathe full-sample regime label is recoverable in real time (i.e., regime clarity iregime-causal-agreement/rates/ /fx/ /crypto/agreement 35.9% vs chance 29.5% (lift +6.4pp); causal median run 2 weeks1443 weeks from 1999-01-15, k=4 statesagreement between causal (expanding-window) and full-sample labels
5-fold cross-validation2026-09-10N2e96f95c624fcf2a4ec9f40ca04fba4b3c0b12c552010f060979edb409db9e0dbitcoin's weekly moves are explainable by same-week cross-asset flows (equities,crypto-flow-explainability/crypto/CV R² -0.08 — effectively nil610 weekscontemporaneous weekly BTC return (co-movement, not prediction)
Kruskal-Wallis across months (non-parametric)2026-09-09Cc96fd85756dde7c49853e424738f606136da29ce41cfc987a60125b7713046c7headline macro/asset series carry tradeable calendar-month seasonalityseasonality-sweepall desks4 of 17 significant (Kruskal-Wallis p<0.05); the rest are noise drawn as bars17 distinct series, decades eachdifference in monthly-change distributions across calendar months
DSR=0.992 over 24 trials; PBO=0.276 over 24 configs2026-09-10Naa36d64badcbbeeb2fbc34636d92fdeaab95309b669e6fe63eecf9921ba2fc2fBasel Core (risk-balanced quadrant sleeves, nested ERC, monthly, unlevered) has basel_core-2026-09-08-96c6591a68/systematic/ /arena/sixty_forty: Sharpe diff +0.00 [-0.30, +0.31] indistinguishable from zero; globa2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 24 configurations storedannualized Sharpe over T-bills vs each benchmark on the common window
DSR=0.998 over 3 trials; PBO=0.538 over 3 configs2026-09-10N9282e180f2000d52bb7b7e044f4e1574205936301fdd13094e9893de23b5ef20Time-series momentum is positive across asset classes at one to twelve months; tbasel_trend-2026-09-08-ca37787305/systematic/ /arena/basel_core: Sharpe diff +0.02 [-0.08, +0.12] indistinguishable from zero; sixty_2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 3 configurations storedannualized Sharpe over T-bills vs each benchmark on the common window
DSR=0.997 over 4 trials; PBO=0.653 over 4 configs2026-09-10Nd3ed5576f92beb99a60666518ca568a37aea59158896c3ad391ff1d7a7aa4045The Treasury term premium (10y minus 3m) predicts duration returns; tilting the basel_carry-2026-09-08-007bc49c9c/systematic/ /arena/basel_core: Sharpe diff -0.00 [-0.10, +0.09] indistinguishable from zero; sixty_2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 4 configurations storedannualized Sharpe over T-bills vs each benchmark on the common window
DSR=0.998 over 3 trials; PBO=0.208 over 3 configs2026-09-10N9d0b5e7b0d13f3aa1ad97dc8b85936f72b9c1881df5cf11ac6c35cdd7d000820Scaling exposure down when the book's recent volatility exceeds a target reducesbasel_voltarget-2026-09-08-350522eeb9/systematic/ /arena/basel_core: Sharpe diff +0.01 [-0.09, +0.11] indistinguishable from zero; sixty_2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 3 configurations storedannualized Sharpe over T-bills vs each benchmark on the common window
DSR=0.987 over 34 trials; PBO=0.656 over 34 configs2026-09-10Nd0874e3ae258e33b76ad2aee5ea48981a8cb96a326b877090a0cb51e0a197d2fBasel Ensemble (Core + passing overlays []) has a higher Sharpe than each registbasel_ensemble-2026-09-08-96c6591a68/systematic/ /arena/basel_core: Sharpe diff +0.00 [+0.00, +0.00] indistinguishable from zero; basel_2004-06-30 to 2026-09-08 (22.19 years, 5583 days), 34 configurations storedannualized Sharpe over T-bills vs each benchmark on the common window
scalars
fieldvalue
n entries18

Rules we hold ourselves to

Direction is the sign; extremity is the percentile. They are different questions and we never let one stand in for the other.

A z-score on a non-cointegrated spread is astrology. Spreads are gated on a cointegration test before we quote a z-score on them.

Concentrated prediction markets are five wallets, not a crowd. Depth and holder concentration are checked before an implied probability is treated as information.

Fees are part of the price. Any edge we quote is net of them; a gap that does not survive fees is commentary, not opportunity.

A failed feed says so. Panels serve their last good value marked stale rather than interpolating a number and presenting it as an observation.

The weekly note

One email a week: what the data actually did, which forecasts resolved and how they scored, and what the independent writers we read were arguing about. No card, no account, unsubscribe in one click.

How the figures on this page are constructed is proprietary. For methodology questions, write to e@finkfi.com.