Does the Bitcoin rainbow chart work?
The price 2σ or more above trend (the Blow-off band and above). 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.
The price more than 1σ below trend (the Discount bands). 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.
- The price 2σ or more above trend (the Blow-off band and above): 3 signals; 2 of 3 decided were on within 90 days of a cycle top (1 false alarms); it caught 2 of the 4 cycle tops in its record.
- The price more than 1σ below trend (the Discount bands): 8 signals; 3 of 7 decided were on within 90 days of a cycle bottom (4 false alarms); it caught 3 of the 4 cycle bottoms in its record.
What followed the signals
The price 2σ or more above trend (the Blow-off band and above)
| After | Signals | Median change | Mean change | Share up | All days: median | All days: share up | Same cycles: median |
|---|---|---|---|---|---|---|---|
| 7 days | 3 3 independent | −2.3% | −8.6% | 33% | +0.8% | 55% | +1.1% |
| 30 days | 3 3 independent | +1.9% | +22.1% | 67% | +3.3% | 58% | +4.2% |
| 90 days | 3 3 independent | −41.1% | −25.0% | 33% | +10.4% | 60% | +7.4% |
| 365 days | 3 2 independent | −1.4% | +5.9% | 33% | +85.4% | 71% | +120% |
The price more than 1σ below trend (the Discount bands)
| After | Signals | Median change | Mean change | Share up | All days: median | All days: share up | Same cycles: median |
|---|---|---|---|---|---|---|---|
| 7 days | 7 7 independent | −1.7% | +4.1% | 43% | +0.8% | 55% | +0.6% |
| 30 days | 7 7 independent | −2.4% | +3.8% | 29% | +3.3% | 58% | +2.0% |
| 90 days | 7 6 independent | +15.0% | +21.7% | 71% | +10.4% | 60% | +12.3% |
| 365 days | 6 4 independent | +143% | +300% | 100% | +85.4% | 71% | +72.6% |
Every signal
The price 2σ or more above trend (the Blow-off band and above)
| First day | Reading | BTC close | 7 days | 30 days | 90 days | 365 days | Nearest cycle top | Near a turn |
|---|---|---|---|---|---|---|---|---|
| 9 Apr 2013 | +2.23σ | $230.00 | −70.3% | −51.0% | −67.0% | +98.8% | 239 days before the 2013 top (4 Dec 2013); price −81.4% from it | False alarm |
| 13 Nov 2013 51 days in signal | +2.12σ | $434.85 | +46.7% | +115% | +33.1% | −1.4% | 21 days before the 2013 top (4 Dec 2013); price −64.9% from it | Hit |
| 7 Dec 2017 11 days in signal | +2.05σ | $16,850 | −2.3% | +1.9% | −41.1% | −79.7% | 9 days before the 2017 top (16 Dec 2017); price −12.9% from it | Hit |
| Cycle top | BTC close | Signal on within 90 days |
|---|---|---|
| 4 Dec 2013 | $1,238 | Yes: the signal from 13 Nov 2013, which began 21 days before it |
| 16 Dec 2017 | $19,345 | Yes: the signal from 7 Dec 2017, which began 9 days before it |
| 8 Nov 2021 | $67,549 | No signal on within 90 days |
| 6 Oct 2025 | $124,766 | No signal on within 90 days |
The price more than 1σ below trend (the Discount bands)
| First day | Reading | BTC close | 7 days | 30 days | 90 days | 365 days | Nearest cycle bottom | Near a turn |
|---|---|---|---|---|---|---|---|---|
| 3 Jan 2015 502 days in signal | −1.11σ | $287.13 | −4.8% | −16.8% | −11.4% | +50.0% | 11 days before the 2015 bottom (14 Jan 2015); price +74.1% from it | Hit |
| 31 Jul 2016 145 days in signal | −1.03σ | $621.87 | −5.0% | −7.2% | +15.0% | +364% | 564 days after the 2015 bottom (14 Jan 2015); price +277% from it | False alarm |
| 12 Mar 2020 6 days in signal | −1.12σ | $4,917 | +25.8% | +40.1% | +101% | +1065% | 453 days after the 2018 bottom (15 Dec 2018); price +52.1% from it | False alarm |
| 28 Aug 2022 149 days in signal | −1.01σ | $19,554 | +2.3% | −2.4% | −15.9% | +33.5% | 85 days before the 2022 bottom (21 Nov 2022); price +24.1% from it | Hit |
| 14 Jun 2023 | −1.02σ | $25,126 | +19.4% | +20.7% | +2.8% | +166% | 205 days after the 2022 bottom (21 Nov 2022); price +59.4% from it | False alarm |
| 17 Aug 2023 63 days in signal | −1.04σ | $26,630 | −1.7% | −0.2% | +42.3% | +121% | 269 days after the 2022 bottom (21 Nov 2022); price +69.0% from it | False alarm |
| 2 Jun 2026 80 days in signal | −1.03σ | $66,670 | −7.5% | −7.8% | +17.8% | – | 28 days before the current cycle's bottom so far (30 Jun 2026); price +13.9% from it | Hit |
| 30 Oct 2026 2 days in signal | −1.01σ | $77,220 | – | – | – | – | 122 days after the current cycle's bottom so far (30 Jun 2026); price +31.9% from it | Pending |
| Cycle bottom | BTC close | Signal on within 90 days |
|---|---|---|
| 14 Jan 2015 | $164.92 | Yes: the signal from 3 Jan 2015, which began 11 days before it |
| 15 Dec 2018 | $3,233 | No signal on within 90 days |
| 21 Nov 2022 | $15,760 | Yes: the signal from 28 Aug 2022, which began 85 days before it |
| 30 Jun 2026 | $58,532 | Yes: the signal from 2 Jun 2026, which began 28 days before it |
Method and sources
Signals. Top signal: the price 2σ or more above trend (the Blow-off band and above); Bottom signal: the price more than 1σ below trend (the Discount bands). The levels are the ones commonly quoted for this indicator, fixed before any result was looked at. A signal starts on the first day the condition holds after it has been off for at least 30 days, so a run of days counts once (the same rule as the signal lab).
Point in time. The published rainbow chart is refitted every 1 January on every close up to the end of the year before and draws that fit over all history, so its past bands use prices that came later. Here each year is read against the fit it had that year (the same least-squares line of log price on log days since 3 January 2009, from the same code), starting once a fit has a full year of closes. Daily readings are closed UTC days from 1 January 2012 to 26 October 2026; the open day is never used.
Outcomes. The change of the BTC daily close from the close of the signal's first day to the close 7, 30, 90 and 365 days later, against the same change from every day the indicator has a reading (the base rate). Signals whose windows overlap share the same price moves, so the tables also count independent signals: windows that do not overlap, counted from the first. Recent signals wait for their outcomes.
Cycle tops and bottoms. A cycle top is an all-time-high close followed by a fall of at least 75% before any higher close; the latest all-time high starts the current cycle. A cycle bottom is the lowest close between two tops; the current cycle's bottom is its lowest close so far, so it can still move. A signal is a hit when a turn of its kind came while it was on or within 90 days either side (from 90 days before its first day to 90 days after its last), and a false alarm otherwise; a signal still on, or ended less than 90 days ago, waits. The verdict compares each signal with the median change of every day in the same four-year halving cycle, so the outsized early years neither flatter nor penalise later signals.
Plans. The chart is Free, so every signal and today's reading are shown to everyone.
Sources. Our own Bitcoin node and BTC/USD price record, through the published chart linked below. Past signals describe what happened; they are not a forecast and nothing here is investment advice.
Questions
Does the Bitcoin rainbow chart work?
How accurate is the Bitcoin rainbow chart?
Has the Bitcoin rainbow chart given false signals?
Is the Bitcoin rainbow chart signalling now?
How is this backtest calculated?
Each signal is the first day the rainbow chart meets its level after at least 30 days without it, using only data that existed that day. We measure the BTC price change 7, 30, 90 and 365 days later against the same change from every day and from the days of the same four-year cycle, and the distance to the nearest cycle top or bottom.
Open the Rainbow chart chartAll free tools
Signals and outcomes are calculated by CryptoKeyhole from our own Bitcoin node and price data, using only data that existed on each day. Past signals describe what happened; they are not a forecast, and nothing here is investment advice.