Every indicator, graded
| Indicator and signal | Signals | Near a cycle turn | Median 90 days later | Median 365 days later | Verdict |
|---|---|---|---|---|---|
| NUPL NUPL at 0.75 or above (euphoria) | 4 | 3 of 4 | −27.6% all days +13.9% | −20.2% all days +94.9% | Held up Held up: 3 of 4 signals were on within 90 days of a cycle top, catching 3 of the 5 tops in its record, and a year later the price had changed by a median −20.2%, against +120% for a typical day of the same cycles. With 3 independent signals, chance cannot be ruled out. |
| MVRV Z-Score MVRV Z-Score at 7 or above | 5 | 3 of 5 | −21.9% all days +13.9% | −28.3% all days +94.9% | Held up Held up: 3 of 5 signals were on within 90 days of a cycle top, catching 3 of the 5 tops in its record, and a year later the price had changed by a median −28.3%, against +120% for a typical day of the same cycles. With 4 independent signals, chance cannot be ruled out. |
| Pi Cycle Top the 111-day average crossing to or above twice the 350-day average | 4 | 2 of 4 | −47.4% all days +10.3% | −50.2% all days +87.1% | Held up Held up: 2 of 4 signals were on within 90 days of a cycle top, catching 2 of the 4 tops in its record, and a year later the price had changed by a median −50.2%, against +99.8% for a typical day of the same cycles. With 3 independent signals, chance cannot be ruled out. |
| Rainbow chart the price 2σ or more above trend (the Blow-off band and above) | 3 | 2 of 3 | −41.1% all days +10.4% | −1.4% all days +85.4% | Held up Held up: 2 of 3 signals were on within 90 days of a cycle top, catching 2 of the 4 tops in its record, and a year later the price had changed by a median −1.4%, against +120% for a typical day of the same cycles. With 2 independent signals, chance cannot be ruled out. |
| Mayer Multiple the Mayer Multiple at 2.4 or above | 7 | 3 of 7 | +72.6% all days +11.1% | +40.5% all days +87.9% | Mixed Mixed: 3 of 7 signals were on within 90 days of a cycle top, catching 3 of the 5 tops in its record; a year later the price had changed by a median +40.5%, against +79.4% for a typical day of the same cycles. |
| Power law the power-law position at 95 or above | 4 | 3 of 4 | +29.0% all days +10.4% | −24.5% all days +85.4% | Mixed Mixed: 3 of 4 signals were on within 90 days of a cycle top, catching 3 of the 4 tops in its record; a year later the price had changed by a median −24.5%, against +72.6% for a typical day of the same cycles. With 3 independent signals, chance cannot be ruled out. |
| Hash Ribbons the 30-day hash rate back above the 60-day after at least 30 days below (recovery) | 18 | 8 of 18 | +10.2% all days +13.9% | +159% all days +94.9% | Mixed Mixed: 8 of 18 signals were on within 90 days of a cycle bottom, catching 5 of the 5 bottoms in its record; a year later the price had changed by a median +159%, against +65.9% for a typical day of the same cycles. |
| Power law the power-law position below 5 | 10 | 5 of 10 | +30.9% all days +10.4% | +274% all days +85.4% | Held up Held up: 5 of 10 signals were on within 90 days of a cycle bottom, catching 3 of the 4 bottoms in its record, and a year later the price had changed by a median +274%, against +79.4% for a typical day of the same cycles. |
| Rainbow chart the price more than 1σ below trend (the Discount bands) | 8 | 3 of 7 | +15.0% all days +10.4% | +143% all days +85.4% | Mixed Mixed: 3 of 7 signals were on within 90 days of a cycle bottom, catching 3 of the 4 bottoms in its record; a year later the price had changed by a median +143%, against +72.6% for a typical day of the same cycles. With 4 independent signals, chance cannot be ruled out. |
| 200-week moving average the price below its 200-week average | 7 | 3 of 7 | +33.2% all days +6.9% | +157% all days +66.1% | Mixed Mixed: 3 of 7 signals were on within 90 days of a cycle bottom, catching 3 of the 4 bottoms in its record; a year later the price had changed by a median +157%, against +72.6% for a typical day of the same cycles. With 4 independent signals, chance cannot be ruled out. |
| 200-week moving average the price at 3× its 200-week average or more | 5 | 2 of 5 | +43.4% all days +6.9% | +16.4% all days +66.1% | Mixed Mixed: 2 of 5 signals were on within 90 days of a cycle top, catching 2 of the 3 tops in its record; a year later the price had changed by a median +16.4%, against +79.4% for a typical day of the same cycles. With 3 independent signals, chance cannot be ruled out. |
| Reserve Risk Reserve Risk in the bottom fifth of its last four years | 9 | 3 of 9 | +20.0% all days +10.8% | +137% all days +88.7% | Mixed Mixed: 3 of 9 signals were on within 90 days of a cycle bottom, catching 3 of the 5 bottoms in its record; a year later the price had changed by a median +137%, against +79.4% for a typical day of the same cycles. |
| SOPR SOPR below 1 (coins spent at a loss on balance) | 30 | 5 of 30 | +31.9% all days +13.9% | +110% all days +94.9% | Mixed Mixed: 5 of 30 signals were on within 90 days of a cycle bottom, catching 5 of the 5 bottoms in its record; a year later the price had changed by a median +110%, against +79.4% for a typical day of the same cycles. |
| Hash Ribbons the 30-day hash rate falling below the 60-day after at least 30 days above (capitulation) | 25 | 5 of 25 | +18.9% all days +13.9% | +91.9% all days +94.9% | Mixed Mixed: 5 of 25 signals were on within 90 days of a cycle bottom, catching 5 of the 5 bottoms in its record; a year later the price had changed by a median +91.9%, against +65.9% for a typical day of the same cycles. |
| Altcoin Season Index altcoin season (75 or above) | 10 | 2 of 10 | −4.2% all days +3.6% | +6.6% all days +42.6% | Mixed Mixed: 2 of 10 signals were on within 90 days of a cycle top, catching 2 of the 2 tops in its record; a year later the price had changed by a median +6.6%, against +57.0% for a typical day of the same cycles. |
| Altcoin Season Index Bitcoin season (25 or below) | 15 | 4 of 15 | +14.7% all days +3.6% | +48.7% all days +42.6% | Mixed Mixed: 4 of 15 signals were on within 90 days of a cycle bottom, catching 3 of the 3 bottoms in its record; a year later the price had changed by a median +48.7%, against +48.1% for a typical day of the same cycles. |
| Reserve Risk Reserve Risk in the top fifth of its last four years | 7 | 4 of 7 | +3.5% all days +10.8% | +5.2% all days +88.7% | Mixed Mixed: 4 of 7 signals were on within 90 days of a cycle top, catching 3 of the 4 tops in its record; a year later the price had changed by a median +5.2%, against +79.4% for a typical day of the same cycles. With 4 independent signals, chance cannot be ruled out. |
| Bitcoin Fear & Greed Index extreme fear (24 or below) | 24 | 4 of 24 | +22.1% all days +11.5% | +79.8% all days +89.4% | No reliable edge No reliable edge: a year later the price had changed by a median +79.8%, against +79.4% for a typical day of the same cycles; 4 of 24 signals were on within 90 days of a cycle bottom, catching 3 of the 4 bottoms in its record. |
| Bitcoin funding rate negative funding (shorts paying longs) | 19 | 3 of 18 | +6.4% all days +6.5% | +69.7% all days +49.1% | No reliable edge No reliable edge: a year later the price had changed by a median +69.7%, against +65.9% for a typical day of the same cycles; 3 of 18 signals were on within 90 days of a cycle bottom, catching 2 of the 2 bottoms in its record. |
| Pi Cycle Bottom the 150-day exponential average below 0.745 × the 471-day average | 3 | 3 of 3 | −5.8% all days +11.0% | +65.2% all days +87.8% | Mixed Mixed: 3 of 3 signals were on within 90 days of a cycle bottom, catching 3 of the 4 bottoms in its record; a year later the price had changed by a median +65.2%, against +79.4% for a typical day of the same cycles. With 3 independent signals, chance cannot be ruled out. |
| Bitcoin Fear & Greed Index extreme greed (76 or above) | 22 | 3 of 22 | +31.3% all days +11.5% | +124% all days +89.4% | Worse than a typical day Selling on it would have missed gains: a year later the price had changed by a median +124%, against +79.4% for a typical day of the same cycles; 3 of 22 signals were on within 90 days of a cycle top, catching 2 of the 4 tops in its record. |
| Bitcoin funding rate funding at 0.05% per eight hours or more (five times the usual 0.01%) | 8 | 1 of 8 | +14.3% all days +6.5% | +166% all days +49.1% | Worse than a typical day Selling on it would have missed gains: a year later the price had changed by a median +166%, against +65.9% for a typical day of the same cycles; 1 of 8 signals was on within 90 days of a cycle top, catching 1 of the 2 tops in its record. With 3 independent signals, chance cannot be ruled out. |
| Puell Multiple the Puell Multiple below 0.5 | 11 | 5 of 11 | +23.1% all days +10.5% | +118% all days +87.5% | Mixed Mixed: 5 of 11 signals were on within 90 days of a cycle bottom, catching 4 of the 5 bottoms in its record; a year later the price had changed by a median +118%, against +120% for a typical day of the same cycles. |
| NUPL NUPL below 0 (capitulation) | 7 | 4 of 7 | −2.8% all days +13.9% | +15.4% all days +94.9% | Worse than a typical day Buying on it did worse than buying on a typical day: a year later the price had changed by a median +15.4%, against +79.4% for a typical day of the same cycles; 4 of 7 signals were on within 90 days of a cycle bottom, catching 4 of the 5 bottoms in its record. |
| Puell Multiple the Puell Multiple at 4 or above | 4 | 2 of 4 | +36.6% all days +10.5% | +202% all days +87.5% | Worse than a typical day Selling on it would have missed gains: a year later the price had changed by a median +202%, against +120% for a typical day of the same cycles; 2 of 4 signals were on within 90 days of a cycle top, catching 2 of the 4 tops in its record. With 2 independent signals, chance cannot be ruled out. |
| Mayer Multiple the Mayer Multiple below 0.8 | 15 | 6 of 15 | −0.5% all days +11.1% | −17.5% all days +87.9% | Worse than a typical day Buying on it did worse than buying on a typical day: a year later the price had changed by a median −17.5%, against +79.4% for a typical day of the same cycles; 6 of 15 signals were on within 90 days of a cycle bottom, catching 5 of the 5 bottoms in its record. |
| MVRV Z-Score MVRV Z-Score below 0 | 9 | 6 of 9 | −6.0% all days +13.9% | +66.0% all days +94.9% | Worse than a typical day Buying on it did worse than buying on a typical day: a year later the price had changed by a median +66.0%, against +120% for a typical day of the same cycles; 6 of 9 signals were on within 90 days of a cycle bottom, catching 4 of the 5 bottoms in its record. |
How to read the table
Each row is one signal at the level people quote: a cycle-top or cycle-bottom call. "Near a cycle turn" counts the signals that were on within 90 days of an actual cycle top (for top signals) or bottom (for bottom signals). The two median columns show what the Bitcoin price did 90 and 365 days after the signals, beside the same change from every day the indicator has a reading. The rows are sorted by how far each signal's 365-day change differed from that of a typical day of the same four-year cycle, in the direction the signal suggests; rows with fewer than three signals a year old sort last.
Most of these indicators fire rarely: three or four cycles stand behind every cycle-level result, so a perfect record can still be luck. The rules that held up run live, with a dated paper record, on Strategies.
Method
Every past reading uses only data that existed on its day: expanding or trailing windows, and the rainbow and power-law fits each year had, never ones fitted on later prices. A signal starts on the first day its condition holds after at least 30 days without it. Outcomes are the change of the BTC daily close from the signal day to 7, 30, 90 and 365 days later. Cycle tops are all-time-high closes followed by a fall of at least 75%; each cycle's bottom is its lowest close. Each indicator's page lists every signal, the method and the sources.
Questions
Which Bitcoin indicator is the most accurate?
Do on-chain indicators predict the Bitcoin price?
Some of the cycle extremes lined up with past tops and bottoms, but each rests on three or four cycles, so a clean record can be chance. Most single-chart readings, tested over every day, showed no reliable edge over the next weeks or months.
How is "held up" decided?
A signal held up when its price change a year later beat a typical day of the same four-year cycle by a median of at least 20 percentage points in the direction it suggests, the 90-day change agreed, and at least half of its decided signals were on within 90 days of a cycle turn. The same rule is applied to every indicator.
How often are these pages updated?
Every day after the daily close: the statistics are recalculated from our own node and price data, and each page shows its indicator's reading where the chart's plan allows.
Signals and outcomes are calculated by CryptoKeyhole from our own Bitcoin node and price data, using only data that existed on each day. Nothing here is a forecast or investment advice.