Model Documentation

The Bitcoin Supply
Shock Framework

A structural flow and stock model for Bitcoin liquidity analysis. This document explains the math, the assumptions, and the reasoning behind every input in the calculator.

SATA extension August 2026
9 Sections
Not financial advice
Section 01

Core Identity

The model is a flow and stock depletion framework. It does not predict price directly. Instead it tracks the relationship between coins that are structurally removed from circulation and coins that remain available for sale on exchanges. When structural holders absorb more than exchanges can replenish, price must rise to coax sellers back in.

All refinements to the original model are additive. The core accounting identity is unchanged.

Effective Accessible Supply

S_eff = S_mined − S_satoshi − S_lost // The realistic pool of BTC that could theoretically participate in markets

S_mined is circulating supply (~19.85M). S_satoshi (1.1M) and S_lost (3–5M) are treated as permanent removals. S_lost uses a slider because the true figure is unknowable — estimates range from 3M to 5M BTC.

Structural HODL Sink

H_sink = H_strategy + H_strive + H_other + (h_etf × H_etf) // BTC permanently or semi-permanently removed by structural buyers

H_strategy is Strategy's total confirmed holdings. H_strive separates Strive's confirmed holdings so SATA can be modelled without double-counting. H_other contains the remaining corporate treasuries. H_etf is total spot ETF holdings, multiplied by h_etf (the stickiness rate — the fraction unlikely to be redeemed).

Cold Storage Float

ColdFloat = S_eff − CoX − H_sink // Off-exchange, price-sensitive coins. The market's self-correcting buffer.

Exchange Dominance Ratio — The Core Metric

R(t) = H_sink / CoX // When R ≥ 1.0, structural HODLers hold more than the entire exchange float

Supply Concentration

D(t) = H_sink / S_eff // Rising D amplifies price reflexivity once ColdFloat refill slows
Section 02

Inputs and Defaults

The calculator exposes every meaningful variable as a slider. Treasury and ETF holdings load from live data where available; the SATA extension was added in August 2026.

InputDefaultRangeNotes
S_mined19.85MFixedPost-halving circulating supply
S_satoshi1.1MFixedPermanently dormant, treated as lost
S_lost4.0M3.0–5.0MGenuine uncertainty — use slider to stress test
H_strategyLive (720k+)Floor = liveAuto-fetched. Drag right to project future buys
H_striveLive / 21,356 fallbackConfirmedSeparated from other corporates; 21 Aug 2026 SEC baseline
H_otherLive200–900kCoinGecko corporates excluding Strategy and Strive
H_etf1.287M baselineAdjustableMaintained ETF reference; not a live CoinGecko feed
h_etf0.780.50–0.90Empirically supported — see Section 4
CoX (Bull)1.80MManualGlassnode tight definition
CoX (Base)2.10MManualMidpoint estimate
CoX (Bear)2.70MManualCryptoQuant broad definition
ΔH_year750k400k–1.1MBase absorption rate, excluding preferred pipelines
STRC rate50k/yr0–200kAdditional annual capacity via STRC — feeds ΔH_year
SATA rate15k/yr0–75kNeutral Strive accumulation scenario — not company guidance
ε0.0050.001–0.015ColdFloat elasticity coefficient — see Section 5
P_nowLive BTCUSDManual overrideCoinGecko price with timestamp; cached fallback when unavailable
Section 03

R as a Range, Not a Number

The single most important methodological decision in this model is reporting R as a three-scenario band rather than a point estimate. This reflects genuine disagreement between data providers on what CoX actually is.

Glassnode clusters exchange wallets behaviorally. CryptoQuant uses a broader definition including some OTC desks. Neither is wrong — they measure slightly different things. With H_sink in the denominator, a 50% spread in CoX estimates produces a 50% spread in R.

R ValueRegimeInterpretation
R < 0.50NormalNo structural stress on exchange float
0.50 – 0.80TighteningStructural sinks growing relative to float
0.80 – 1.00FragileFloat under meaningful pressure
R ≥ 1.00Shock UnlockedStructural HODLers hold more than exchange float
High Conviction Signal

If all three CoX scenarios agree on a regime simultaneously, that is a high-conviction reading. If they straddle two regimes, treat it as transitional. Never rely on a single CoX source.

Current snapshot (March 2026) with H_sink ~1.64M BTC:

CoX ScenarioCoXR(t)Regime
Bull (Glassnode tight)1.80M0.91Fragile
Base (midpoint)2.10M0.78Tightening
Bear (CryptoQuant broad)2.70M0.61Tightening
Section 04

ETF Stickiness (h_etf)

The stickiness rate h_etf represents the fraction of ETF holdings unlikely to be redeemed — coins that are effectively as illiquid as HODLer wallets despite being technically redeemable.

The default of 0.78 is not an assumption. It is empirically supported by 26 months of observed ETF behaviour through January 2024 to March 2026, including three significant stress events:

Stress EventBTC DrawdownETF Redemption Response
April 2024~35%Modest outflows, recovered within weeks
August 2024 flash crash~30% in daysBrief outflows, correlated with Yen carry unwind
Oct 2025 ATH → current~50%No sustained structural redemption wave

This behavioural profile reflects the institutional nature of the ETF buyer base — wealth management platforms, pension-adjacent capital, and long-horizon allocators who entered via ETF precisely for passive exposure, not as a trading vehicle. A 50% BTC drawdown is painful but does not trigger forced liquidation mandates at these allocators.

Stress Floor

The slider minimum of 0.50 represents a tail-risk scenario: a regulatory shock, major exchange collapse, or macro forced liquidation event. This is not a base case. The credible range for normal market conditions is 0.70–0.85.

Section 05

ColdFloat Elasticity

Every prior Bitcoin cycle has been capped by the same mechanism: as price rises, dormant holders hit their threshold and sell back into exchanges. The model captures this with a price-responsive CoX refill term.

CoX(t+1) = CoX(t) − net_outflows + ε × (ΔPrice% / 10%) × ColdFloat(t) // ε = fraction of ColdFloat returning to exchanges per 10% price move

The ε coefficient is non-linear in reality — it accelerates as price moves further above prior cycle highs into price discovery territory. The slider default of 0.005 is a conservative midpoint based on observed cycle behaviour.

Price Move Post R=1ε = 0.005 (default)ε = 0.010 (high)
+25%+150k BTC refill+300k BTC refill
+50%+300k BTC refill+600k BTC refill
+100%+600k BTC refill+1.2M BTC refill

Inverse Clearing-Price Snapshot

When a scenario has R > 1, the calculator can invert the same refill relationship to estimate the price rise required to return CoX to H_sink and therefore restore R to exactly 1.0.

refill_needed_i = H_sink − CoX_i ΔP_i = 10% × refill_needed_i / (ε × ColdFloat_i) P_clear_i = P_now × (1 + ΔP_i) // Calculated independently for regime-adjusted Bull, Base and Bear CoX

H_sink, S_eff and ε are held fixed during this snapshot. When R ≤ 1, no higher clearing price is shown. If the necessary refill exceeds the available ColdFloat, the scenario is marked insufficient rather than extrapolated. Results above +300% are displayed but flagged as extreme sensitivity outputs.

Interpretation

This is a model-implied clearing price, not a target, prediction or fair-value estimate. At R = 1.0, ShockScore returns to zero. Continued STRC, SATA, ETF or treasury absorption during the move would increase the required price.

Key Insight

The supply shock does not eliminate the price ceiling — it raises the price required to find one. ColdFloat still refills CoX eventually, but at progressively higher prices as H_sink grows. The shock raises the clearing price; it does not remove the clearing mechanism.

Section 06

Market Regime Toggle

The most important structural insight about ΔH_year is that its two largest components — ETF inflows and Strategy equity-funded buying — are procyclical. They are strongest when price is rising and weakest when price is falling. This means the absorption rate and CoX do not move independently in the real world.

The regime toggle adjusts both simultaneously in their naturally correlated directions, rather than allowing users to set bullish absorption with bearish CoX (a combination that is not realistic).

ToggleΔH_year Adj.CoX Adj.What It Represents
Bull+30%−10%Momentum environment. Inflows accelerating.
NeutralBaseBaseCurrent conditions continue.
Risk-Off−45%+15%Macro shock. Inflows stall, weak hands sell.

In Risk-off, R can actually decline in the near term because ΔH_year slows (numerator grows slower) while CoX rises (denominator grows larger) simultaneously. The model shows this honestly — R can move backwards, not just plateau.

Preferred Capital Exception

The STRC and SATA components use a smaller regime adjustment than ETF and equity absorption: 115% in Bull, 100% in Neutral and 75% in Risk-Off. This reflects capital sourced from income markets rather than only BTC price momentum — a structurally different buyer psychology, while still recognising that preferred issuance can slow.

Section 07

STRC, SATA and the Fixed Income Bridge

Strategy's STRC and Strive's SATA turn perpetual preferred equity into a capital pipeline from income markets into Bitcoin accumulation. Investors can seek a variable cash yield through listed securities while the issuers use balance-sheet capital to acquire Bitcoin.

This matters because preferred demand is partially decoupled from BTC price cycles. Unlike ETF inflows, which can slow sharply when momentum breaks, preferred demand is also driven by yield appetite in credit and income markets — a different investor psychology operating on a different cycle.

Why STRC Risk Is Lower Than It Appears

Strategy maintains a 2–3 year USD dividend reserve at all times. This means the failure mode that would reverse the STRC capital pipeline requires a very specific sequence:

BTC drops hard → stays down 2+ years → Strategy cannot raise new capital → burns through entire USD reserve → misses dividend

If that sequence plays out, the entire Bitcoin investment thesis is under existential threat — making the STRC contribution to the supply shock model the least of anyone's concerns.

What SATA Adds

Strive held 21,356 BTC as of 21 August 2026. During the preceding week it bought 1,110 BTC while SATA shares outstanding increased by 441,313. Strive also issued common shares in that period, so the filing does not support attributing the entire BTC purchase to SATA alone.

The calculator therefore uses a deliberately explicit scenario rather than pretending to know the financing split: 15k BTC per year by default, adjustable from zero to 75k. SATA adds to annual absorption, while Strive's confirmed 21,356 BTC is separately included in the current HODL sink.

No Double Counting

When CoinGecko identifies Strive, its holdings are removed from H_other and displayed as H_strive. If the API misses Strive, the calculator uses the SEC-confirmed fallback. SATA's annual slider adds only future capacity.

Important Distinction

Already-completed STRC- and SATA-supported purchases sit in H_strategy and H_strive. Their rate sliders project additional future annual capacity and feed ΔH_year, not the current holdings balance.

Section 08

Time to Milestone and ShockScore

Time to R = 1.0

T_years = (CoX − H_sink) / ΔH_year // Valid only if CoX does not materially rise. Regime toggle adjusts both inputs.

The calculator converts each month estimate into a projected calendar date using the viewer's current local date when the tool is opened. The timeline therefore rolls forward automatically rather than remaining anchored to the model's original March 2026 publication date.

The calculator displays this across all three CoX scenarios simultaneously. The range communicates honest uncertainty — a base case of ~6 months can be 2 months in the bull CoX reading or 13 months in the bear reading from the exact same set of assumptions.

RegimeCoXΔH_yearT_yearsProjected
Bull1.80M1.235M0.13~6 weeks
Bull2.10M1.235M0.37~4–5 months
Neutral1.80M950k0.17~2 months
Neutral2.10M950k0.49~6 months
Neutral2.70M950k1.12~13 months
Risk-off2.10M522k0.88~10–11 months
Risk-off2.70M522k2.07~25 months

ShockScore

ShockScore = max(0, R−1) × (−d/dt CoX) × RegimeMultiplier // Only activates when R > 1.0. Multiplier: Bull=1.3, Neutral=1.0, Risk-off=0.6

The ShockScore is deliberately zero until R crosses 1.0 — preventing false positives in the tightening regime. It multiplies two conditions that must be present simultaneously: structural dominance (R > 1) AND active exchange outflow (negative d/dt CoX). The regime multiplier reflects that a shock in bull conditions (demand surging into constrained supply) is more intense than the same R reading in risk-off (where demand is absent).

Section 09

Core Thesis

Price must rise when H_sink growth exceeds the rate at which ColdFloat refills CoX. The supply shock is nonlinear and occurs after duration, not at a single price level. The revised model adds that the shock raises the price required to find a ceiling rather than eliminating the ceiling — and that STRC and SATA create repeatable preferred-capital channels that partially decouple institutional BTC absorption from BTC price cycles.

BTC Supply Shock Model — SATA Extension, August 2026

The model now makes the incremental preferred-capital effect visible. If STRC and SATA continue scaling into income allocations, the timeline may compress. If a macro risk-off event materialises, R can retreat and the timeline extends — but the structural trend resumes once conditions normalise, as H_sink growth is largely irreversible.

Model Invariant

The shock is not a single event. It is a regime shift. Once R crosses 1.0, even average demand faces asymmetric seller scarcity — turning reflexive as price must clear higher to coax ColdFloat back in. The nonlinearity kicks in hardest post-R=1, not at it.

Data sources: Strategy, Strive and corporate treasury holdings use CoinGecko's public treasury API where available. Strive's 21 Aug 2026 holdings and SATA-share baseline are from its 24 Aug 2026 SEC filing. ETF holdings use a maintained 1,287,494 BTC reference because CoinGecko's treasury API covers companies and governments rather than ETF aggregates. CoX inputs are manual — cross-reference Glassnode, CryptoQuant, CoinGlass.

Limitations: This is a flow/stock depletion model. It does not model macro shocks, regulatory risk, or black swan events. It captures the structural supply dynamic only. Use in conjunction with on-chain analysis, macro context, and your own research.

SATA extension August 2026  ·  labs.node.org.nz  ·  Not financial advice.