Holdout Labs · On-chain Indicator Audit · Batch 1 · 2026-09-25

Twelve famous Bitcoin cycle indicators, tested only after they were published

Each rule frozen exactly as its creator published it, tested only on data after its first publication, with the protocol sealed by RFC 3161 timestamps (DigiCert, FreeTSA) before any on-chain data were fetched. Every result is published.

Family A: price and block-header indicators

Result: One claim had enough independent episodes to test and was not supported; five produced too few episodes for a reliable conclusion. Stock-to-flow, the only testable one, went the wrong way. The other five fired 1–4 times after publication, too few for any honest inference, so we report them descriptively; all five pointed the way their creators claimed, which is what a handful of cycles can do by chance. All four implied trading rules graded F against buy-and-hold BTC: none showed a statistically robust edge over holding.
IndicatorFrozen rule (primary zone)EpisodesAvg 365-day return after zone days vs all daysStatus (Holm, m=6)Implied-rule audit
Pi Cycle Top
Philip Swift, Apr 2019
crossing day
top claim
1-33% vs +42%NOT TESTABLE
descriptive only
no implied rule
200-week MA heatmap (bottom claim)
PlanB concept, Jan 2019
close <= 1.10 x 200WMA
bottom claim
3+102% vs +42%NOT TESTABLE
descriptive only
no implied rule
Mayer Multiple
Trace Mayer, 2017
MM > 2.4
top claim
3-21% vs +36%NOT TESTABLE
descriptive only
F excess +3%/yr
2-Year MA Multiplier
Philip Swift, Jul 2017
close < 2yMA
bottom claim
4+108% vs +33%NOT TESTABLE
descriptive only
F excess -13%/yr
Puell Multiple
David Puell, Mar 2019
Puell < 0.5
bottom claim
4+105% vs +42%NOT TESTABLE
descriptive only
F excess +0%/yr
Stock-to-flow (PlanB 2019)
22 Mar 2019
close < S2F model
bottom claim
6+26% vs +42%NOT SUPPORTED
p 0.94, Holm 1.00
F excess -19%/yr

Out-of-sample windows start the first day after publication (or when the indicator can be computed) and end 2026-09-24. Returns are geometric means of 365-day returns over days with a full window. Fewer than 5 episodes = descriptive only (preregistered).

What we found

Family B: UTXO metrics, computed by us from the public blockchain

MVRV Z-score, NUPL, SOPR, Reserve Risk, short-term-holder cost basis and realized price, sealed in the same preregistration, computed by us from the public Bitcoin blockchain (Google BigQuery public dataset), so no vendor licence is involved. The data-source change and the creator-source checks were sealed before any value was computed. Our series match published Coin Metrics and Glassnode figures within a 0.2% median difference.

Result: two claims were testable (SOPR reset, short-term-holder cost basis) and neither was supported; four fired 1–3 times after publication and are descriptive only. The STH cost-basis rule graded F: no statistically robust edge over holding on average excess return, although it compounded at 28.5% a year vs 18.3% with a 33% vs 77% maximum drawdown (different measures, pointing different ways).
MetricFrozen rule (primary zone)EpisodesAvg return after zone days vs all daysStatus (Holm, m=6)Implied-rule audit
MVRV Z-score
@aweandwonder, 9 Oct 2018
MVRV-Z > 51-15% vs +44%, 365dNOT TESTABLE
descriptive only
no implied rule
NUPL
Adamant Research, Feb 2019
NUPL < 03+82% vs +42%, 365dNOT TESTABLE
descriptive only
no implied rule
SOPR (unadjusted)
Renato Shirakashi, 25 Apr 2019
close > 200-day SMA and SOPR 7-day SMA <= 113+17% vs +7%, 90dNOT SUPPORTED
p 0.20, Holm 1.00
no implied rule
Reserve Risk
Hans Hauge, 30 May 2019
Reserve Risk < 0.00262+84% vs +42%, 365dNOT TESTABLE
descriptive only
no implied rule
Short-term-holder cost basis
Glassnode, 2020
close > STH cost basis7+4% vs +3%, 90dNOT SUPPORTED
p 0.26, Holm 1.00
F avg excess +0.5 pts/yr; compound 28.5% vs 18.3%
Realized price
Carter & Le Calvez, Oct 2018
close < realized price3+94% vs +45%, 365dNOT TESTABLE
descriptive only
no implied rule

Family C: continuous-level and pooled tests (preregistered, not blind)

Not blind: written after we had seen the price path and the Family A/B results; sealed before any Family C statistic was computed. Result: under the sealed test 4 of 24 tests reached significance, but a calibration check (exploratory) shows that test is too lenient for metrics this persistent; calibrated, none is significant (smallest p 0.07 before correction). No statistically robust association between any metric's level and later BTC returns. Descriptively the valuation metrics pointed the claimed way, over about two market cycles. Association is not a tradable edge; no rule is graded.

Limits

Seal

Preregistration SHA-256 aafe3c37f5bbf83bc6e4b9a986ef1c936c3b74a927c253b833a5a7626482de40
Seal record SHA-256 f8d7d587466a4bb61b5c179aba44bb766825a6a495cc3ecb68d16e39c1810275
Signed: digicert 2026-09-25T18:22:38Z, freetsa 2026-09-25T18:22:38Z
Block headers fetched over P2P at 2026-09-25T18:23:09Z (968,471 headers, PoW-checked).

Prices from the Coinbase Exchange public market-data API; derived statistics only, never raw prices; no redistribution. Statistical analysis of past data. Not investment advice; no recommendation to buy, sell or hold anything.