Bitcoin Mining · Chart

Bitcoin Hash Ribbons (Capriole 30/60 crossover)

The Hash Ribbons indicator plots the 30-day moving average of Bitcoin hashrate against the 60-day moving average. When the 30 falls below the 60 the network is in miner capitulation (shaded red). When the 30 crosses back above the 60 after a confirmed capitulation episode (10+ continuous days), a Hash Ribbon buy signal fires (green BUY marker on the chart). Coined by Charles Edwards / Capriole Investments in 2019, it has historically produced one of the highest hit-rate cycle-bottom signals in the Bitcoin indicator stack. Hover any day for the exact MA values and current state classification.

Chart

Log-scale chart of the 30-day MA hashrate (green) vs the 60-day MA hashrate (yellow) from 2014 onwards. Periods where the 30 sits below the 60 are shaded red (miner capitulation). Green BUY markers fire on each qualifying post-capitulation crossover. Hover any day for the exact MA values and current state classification.

Loading data...

What are Hash Ribbons?

Hash Ribbons is a Bitcoin cycle-bottom indicator developed by Charles Edwards of Capriole Investments in 2019. The construction is simple:

  • 30-day MA of network hashrate (responsive short-term).
  • 60-day MA of network hashrate (less responsive, smoother).

The relative position of the two MAs classifies the current state of the mining economy:

  • 30 above 60 = expansion. Hashrate is growing; miners are profitable and deploying more capacity.
  • 30 below 60 = capitulation. Hashrate is contracting; high-cost miners are switching off. Forced selling of any remaining BTC inventory is happening.
  • 30 crosses up through 60 after sustained capitulation = buy signal. The capitulation phase has ended. The worst sellers (capitulating miners liquidating inventory) have exhausted their flow. Price typically follows.

The thesis is mining-economic rather than technical: hashrate is the most direct measure of miner financial stress, and miner-stress periods are also forced-selling periods. When the stress ends, the forced selling ends.

How the buy signal fires

The signal has three components, applied in strict sequence:

  1. Capitulation onset. The 30D MA crosses below the 60D MA. The chart begins shading red.
  2. Sustained capitulation. The 30D MA stays below the 60D MA for at least 10 continuous days. This duration filter rejects short-term block-time-noise crossings.
  3. Recovery cross. The 30D MA crosses back above the 60D MA. The Hash Ribbon buy signal fires on this day.

Some implementations add a fourth confirmation rule (BTC price must be above its 10-day MA at the moment of cross) for extra filter strength. The base 3-rule version is the most-cited "Capriole Hash Ribbons" signal.

Historical hit rate

Capriole's published research (Edwards 2019, refreshed periodically) claims approximately 90 percent win rate at 1-year forward holding periods. Capriole's framing: "If you had bought BTC at every Hash Ribbon buy signal and held for 365 days, ~9 out of 10 entries would have been profitable." The list of historical signals at the 10-day capitulation threshold:

  • Late 2014. Post-Mt-Gox capitulation. BTC was ~A$220 at signal; recovered to A$500+ within 12 months.
  • Mid 2015. Continuation of the late-2014 bear. Modest forward return; entered just before the genuine 2015 bottom.
  • Early 2019. Post-ICO-bear capitulation. BTC was ~A$5,000 at signal; recovered to A$15,000+ within 12 months (3x).
  • March 2020 (brief). COVID-crash capitulation. Capriole's strict implementation did not register this one because the capitulation lasted under 10 days; the 14-day implementation did.
  • July-August 2021. China mining ban recovery. The highest-conviction Hash Ribbon signal in BTC history. BTC was ~A$50,000 at signal; rallied to A$95,000+ within 4 months.
  • 2022-2023 bear. Multiple closely-spaced signals during the FTX-collapse trough. Final qualifying signal in mid-January 2023 marked the cycle bottom within weeks.

The 2024-2025 cycle did not produce qualifying buy signals. Crossovers occurred (block-time-noise driven) but no capitulation episode lasted 10+ days. This is consistent with the cycle's relatively smooth uptrend post-halving.

Methodology

  1. Inputs. Daily hashrate from /assets/data/btc-hashrate.json (mempool.space live + seed fallback).
  2. Moving averages. 30-day and 60-day simple moving averages of daily hashrate.
  3. State classification. capitulation (30D < 60D), recovery (30D > 60D, within first 30 days post-capitulation), expansion (30D > 60D, sustained 30+ days).
  4. Buy signal rule. Fires on the day the 30D crosses above the 60D, provided the immediately prior period was a continuous capitulation of at least 10 days.
  5. Static-first. Snapshot is re-derived on every build by scripts/fetch-btc-hash-ribbons.mjs from the freshest hashrate file. If hashrate is stale or missing, the existing snapshot is preserved.

Frequently asked questions

Hash Ribbons is a Bitcoin cycle-bottom indicator developed by Charles Edwards of Capriole Investments in 2019. It plots the 30-day moving average of network hashrate against the 60-day moving average. When the 30 falls below the 60, the network is in miner capitulation. When the 30 crosses back above the 60 after a sustained capitulation episode, a buy signal fires. The thesis: miners that capitulate (switch off) are forced sellers of any remaining BTC inventory; once the capitulation ends and hashrate recovers, the worst sellers have exhausted and price is set up to recover.

Three rules must hit in sequence: (1) the 30D MA must cross below the 60D MA, marking the start of a capitulation episode; (2) that capitulation must persist for at least 10 continuous days (this filters out short-term block-time noise crossings); (3) the 30D MA must then cross above the 60D MA. The signal fires on day-3 of the crossover above (Capriole's original definition uses a 3-day confirmation to avoid whipsaws). Some implementations also require BTC price to be above its 10-day MA at the moment of cross-over for extra filter strength. The conservative buy signal is the rarer, higher-quality version.

Roughly 8-12 times across Bitcoin's full price history. The exact count depends on which capitulation-duration threshold the implementation uses (5 days vs 10 days vs 14 days). At the 10-day threshold used here, you get approximately 9-10 historical signals: late 2014, mid 2015, early 2019, March 2020 (briefly), July-August 2021 (post-China-ban), and 2022-2023 bear (multiple closely-spaced signals). The signal is intentionally rare so each one is information-dense, but it also means you cannot use it for short-term trading - only for cycle-positioning entries.

Capriole's published research (2019, refreshed periodically) claims approximately 90 percent win rate at 1-year forward holding periods. Meaning if you bought BTC at every Hash Ribbon buy signal and held for 365 days, roughly 9 out of 10 entries were profitable. Some signals were modestly profitable; others (late 2018 / early 2019) preceded 5-10x rallies. Edge cases: signals very close to other signals (clustered) tend to share outcomes. The single highest-conviction signal historically was the July-August 2021 cluster following the China mining ban.

The most recent confirmed buy signal at the 10-day capitulation threshold was during the 2022-2023 bear-market trough. The exact date depends on the data provider and confirmation rule but most implementations dated it to mid-January 2023 (after the November 2022 FTX collapse capitulation). Subsequent crossovers in 2024-2025 did not qualify because the prior capitulation episodes were shorter than 10 days (block-time noise crossings, not genuine miner switch-offs). The chart marks every qualifying signal across the full history.

Hash Ribbons is one of three high-precision cycle-bottom indicators tracked on SatoshiMacro. The other two are: Puell Multiple below 0.5 (mining-revenue based) and the Bitcoin Pi Cycle Bottom Indicator (price-MA-based). When all three agree, the cycle-bottom call is high confidence. Each indicator has a different precision/recall tradeoff: Hash Ribbons is the rarest and most precise; Puell sub-0.5 covers slightly longer windows; Pi Cycle Bottom is the most agile. Use them together for confluence.

About the author

Govind Satoshi
Former Institutional Trader. Founder, SatoshiMacro.
Traded allocated institutional capital at a Sydney proprietary trading firm.