accumulate −1σ 0σ
hold +1σ
trim 10–25% +2σ
trim 50–75% +3σ
Directional Forecasts
BTC/USD
Daily OHLC · Log scale · Volume (USD)
Bitcoin sits at $63,475 as of 2026-06-20 — 49.1% below the October 2025 ATH of $124,720, trading below the power-law floor band ($74,403, -14.7% vs spot). Quantile position is the 2.6th percentile on the power-law model (median path $124,385).
HMM regime: Bear at ~100% confidence. Bear wk 37 | 20% of past bears were shorter.
Caveat: HMM is a lagging top-confirmation model (typically flags BULL→BEAR 5-10 weeks after actual cycle tops) and structurally blind to cycle bottoms (0% hit rate at known bottoms in the alignment eval). Use it for regime context, not bottom timing.
26-week return forecast: XGBoost reads 42.7% P(+6M return), L1 logistic at 90.5%. Mixed read across the two models. The high-capacity n=500 diagnostic variant reads 27.8%. Walk-forward stats: XGB Sharpe 0.96 / hit 72.5%, L1 Sharpe 0.96 / hit ~78%.
Cycle detection — binary heads: L1 cycle (union feature set) reads P(top) 17.9% / P(bot) 70.8%. XGB cycle reads top 3.0% / bot 72.1%. Ensemble: top 10.4%, bot 71.5% — the bottom side is firmer than the top side, and neither crosses the 70% conviction bar.
Cycle detection — regression head (squarederror loss, 260w target cap). Top reads 15.1%; bot reads 89.1% (predicted ~19 weeks to next bottom). Honest-LOEO validation: TOP 2/2 events flagged at peak 0.92 (Spearman +0.88), BOT 20/20 in-window hits at peak 0.90. Limitation: the bot head's training data ends at the last known bottom (2022-11-21), so 2024+ predictions are extrapolations and the bot indicator drifts up over time — best read as confirmation when binary heads also fire, not as a standalone proximity signal.
Bottom line: deep bear regime (Bear wk 37), valuation at the 2.6th percentile (49.1% drawdown, spot below the power-law floor). The 6-month return models are mixed (XGB 42.7% / L1 90.5%); the regression bot signal is 89.1% (~19w to a projected bottom) but binary cycle heads remain sub-70 (ensemble bot 71.5%). Kelly 10.4% long.
[Auto-generated from metrics.json by the daily refresh job — factual summary, not hand-written analysis.]
BTC Price — Quantile Model
Daily · Log scale · 999-quantile bands · Oscillator
Cycle Probabilities
L1 Logistic · P(top forming) · P(bottom forming) · Power-law channel · HMM states
26-Week Return Forecast
Production: XGB walk-forward + L1 expanding-window · 7 features · 13W retrain · early stopping. Variants (overlays) test alternative feature sets and model architectures including 1W retrain with fixed n_estimators (no early stopping).
Cycle Top/Bottom Detection
XGB walk-forward + L1 expanding-window + XGB regression (PCT score)
Realized Price
Price vs aggregate holder cost basis · Daily · Log scale · RP = Price / MVRV
What do these mean?
- MVRV — Market Value to Realized Value
- Price ÷ the average cost basis of every coin (the “realized” price). >1 = holders in profit, <1 = underwater. ~1.0 = value/capitulation zone, 3+ = euphoria. The top level drifts down each cycle (4.7 in 2017 → 2.7 in 2021), so it’s a guide, not a fixed trigger.
- SOPR — Spent Output Profit Ratio
- For coins that moved on-chain that day, the price sold at ÷ the price acquired at. >1 = spending at a profit, <1 = at a loss. Sustained <1 = capitulation (loss-taking), which clusters near bottoms. Noisy day-to-day; it confirms, it doesn’t predict.
- NUPL — Net Unrealized Profit/Loss
- The whole supply’s paper profit as a share of market cap. Bands: <0 capitulation · 0–0.25 hope/fear · 0.25–0.5 optimism · 0.5–0.75 belief · >0.75 euphoria. Derived as 1 − 1/MVRV (the exact identity) from CoinMetrics MVRV, so it spans every cycle — the BGeometrics NUPL feed only starts 2022. Matches that feed at 0.9999 corr over the overlap. Same signal as MVRV; same cross-cycle drift.
- Funding — perpetual funding rate (per 8h)
- The recurring payment between perp longs and shorts. Positive = longs pay (bull leverage crowded); negative = shorts pay (bears crowded / longs flushed). Deep-negative near washouts, persistently high near froth. A positioning gauge, not valuation.
- DVOL — Deribit implied volatility
- The options market’s expected 30-day BTC volatility — a “VIX for Bitcoin.” <40 calm · 40–60 elevated · 60–80 fear · 80+ a vol blow-off that usually accompanies capitulation. Measures fear, not direction.
- Weekly RSI(14)
- Momentum oscillator on weekly closes. >70 overbought, <30 oversold. The value is divergence: price higher-high while RSI lower-high = fading momentum — the one signal that flagged the Nov-2021 top in real time. Discretionary; can be early or late.
- Power-law σ (and the causal pane)
- Where price sits vs BTC’s long-run power-law trend, in standard deviations. <−1σ deep value, >+2σ extreme. The gauge uses the production channel (fine for today); the tab pane uses a causal expanding-window fit (refit only on past data) — the honest version, because the live channel is refit on all history and over-states how extreme past dates looked.
- Pi-Cycle Top — 111d MA ÷ 2×350d MA
- A cross above 1.0 has marked tops within ~1 day (2013 / 2017 / Apr-2021). But it failed the Nov-2021 top — the summer −50% dip reset the 350-DMA so high the slower second top never crossed. Famous but fallible; shown here as a caution.
- Trim / Add Ladder
- Not an indicator — a decision aid. Maps current power-law σ onto a pre-committed plan: accumulate below −1σ, hold in the middle, trim in steps (10 → 25 → 50 → 75%) above +0.5σ. You can’t call the exact top, but a rules-based ladder set before euphoria lightens you into strength. Illustrative, not advice.
MVRV
Market value ÷ realized value · cap 1.0 / euphoria 3.0
SOPR
Spent Output Profit Ratio · <1.0 = loss-taking / capitulation
NUPL
Net Unrealized P/L · <0 capitulation → >0.75 euphoria
Funding rate
Perp funding %/8h · <0 = shorts pay (longs flushed)
DVOL
Deribit implied volatility · 80+ = vol blow-off / capitulation
Weekly RSI(14)
Momentum · 70 overbought / 30 oversold · watch divergence
Pi-Cycle Top
111d ÷ 2×350d MA · cross >1.0 = top (failed the 2021 double-top)
Power-law σ (causal)
Leak-free expanding-window channel position · <−1 deep value
What do these mean?
- Fear & Greed Index
- Alternative.me’s 0–100 crowd-sentiment gauge (volatility, momentum, social, surveys, dominance). <25 extreme fear has historically clustered near bottoms; >75 extreme greed near tops. Sentiment, not valuation.
- Mayer Multiple — price ÷ 200-day MA
- How far price sits above/below its 200-day moving average. <1.0 = below the 200-DMA (historically cheap), ~2.4+ = historically overheated. A simple, widely-watched valuation oscillator that complements power-law σ.
- Puell Multiple — miner revenue stress
- Daily miner revenue (USD) ÷ its 365-day average. <0.5 = miner capitulation (revenue far below normal — clusters near cycle bottoms); >4 = miner euphoria near tops. A different actor (miners) than holder cost-basis.
- Hash Ribbons — 30-day ÷ 60-day hashrate
- When the 30-day hashrate MA falls below the 60-day, miners are capitulating (switching off); the cross back above 1.0 has historically marked recoveries / good accumulation windows. A miner-health signal.
- Macro & Liquidity backdrop (landing strip)
- DXY (dollar), 10y real yield, VIX (equity vol), M2 YoY (USD liquidity), and stablecoin supply (dry powder). Together they answer “is BTC weakness the whole risk complex or crypto alone?” — e.g. BTC down with VIX calm = crypto-idiosyncratic, not macro contagion.
Fear & Greed
Crowd sentiment 0–100 · <25 extreme fear / >75 extreme greed
Mayer Multiple
Price ÷ 200-day MA · <1 below trend / >2.4 overheated
Puell Multiple
Miner revenue vs 1-yr avg · <0.5 miner capitulation / >4 euphoria
Hash Ribbons
30d ÷ 60d hashrate · cross back >1.0 = miner recovery
What do these mean?
- LTH / STH supply
- Long-Term Holder supply = coins last moved >155 days ago (the classic "smart money" threshold); Short-Term Holder = everything younger. LTH supply rising = accumulation/conviction; falling = old coins distributing (often near tops).
- % supply held > 1 year
- Share of circulating supply that hasn’t moved in over a year (from HODL waves). Climbs during bears as holders wait, peaks near cycle bottoms, and rolls over as coins are spent into a bull top. A patience/illiquidity gauge.
- LTH realized price
- The aggregate cost basis of long-term holders. Spot price falling to / below it has historically marked deep capitulation; it acts as a slow-moving support. Shown against spot price.
- Dormancy
- Average age (in days) of the coins that moved each day, 30-day smoothed. Low = mostly young coins changing hands; spikes = long-dormant coins waking up, i.e. old supply distributing.
% Supply Held > 1 Year
Age-based HODL signal · rises in bears, rolls over into tops
LTH vs STH Supply
Long-term (>155d) vs short-term holder supply
LTH Realized Price vs Spot
Long-term holders' cost basis (a support floor) vs price · log
Dormancy
Avg age of coins moving (30d) · spikes = old supply distributing
What do these mean?
- Wallet-size bands (address balance)
- Each on-chain address is bucketed by its BTC balance at each weekly snapshot, and the supply it holds is summed per band: shrimp <1 · crab 1–10 · fish 10–100 · dolphin 100–1,000 · shark 1,000–10,000 · whale >10,000. Rising large-band supply into weakness = accumulation by big holders.
- How it’s built
- From the self-hosted chain-walker: per-address running balance over time → size band → per-band weekly supply. Address ≠ entity (one exchange = many addresses; one person = many addresses), so read it as on-chain balance distribution, not literal headcount.
- Caveat
- Outputs with no decodable address (early P2PK incl. Satoshi-era coins, bare multisig, non-standard) can’t be balance-attributed, so band totals are ~8% below true circulating supply — concentrated in the early era. Recent-cycle coverage is near-complete.
Supply by Wallet Size
Address-balance cohorts · click a band to filter · chain-walker derived
What do these mean?
- Exchange Net Flow
- Weekly BTC inflow minus outflow for exchange-tagged wallets. Positive = net inflow (coins arriving to be sold — sell-side pressure, often spikes at capitulation); negative = net outflow (coins leaving to self-custody — accumulation / reduced sell-side supply). Noisy week-to-week; read the trend.
- Exchange Reserve Trend
- Cumulative net flow = a relative proxy for the balance held on exchanges. A sustained fall means supply is leaving exchanges (illiquidity / squeeze backdrop, broadly bullish); a rise means supply is building up ready to sell. The absolute level is arbitrary (anchored at the series start); the slope is what matters.
Exchange Net Flow
Weekly net BTC to(+)/from(−) exchanges · >0 inflow (sell pressure) / <0 outflow (accumulation)
Exchange Reserve Trend
Cumulative net flow ≈ relative balance on exchanges · falling = supply leaving exchanges
What do these mean?
- ETF Net Flow (weekly)
- Weekly sum of daily net creations minus redemptions across all US spot BTC ETFs, in USD. Positive = net new money buying BTC through ETFs (demand); negative = money leaving. Price-independent (it's fund-share flows, not AUM), so unlike "ETF holdings $" it isn't distorted by BTC's price moving. Spiky day-to-day; the trend is the signal.
- Cumulative ETF Flow
- Running total of all net flows since the Jan-2024 launch ($B). A steadily rising line = sustained institutional accumulation absorbing supply; a flattening/falling line = demand stalling or reversing. One of the clearest structural-demand signals unique to this cycle.
Spot ETF Net Flow (weekly)
Net creations−redemptions across US spot BTC ETFs · >0 inflow (demand) / <0 outflow
Cumulative ETF Flow
Total net institutional capital since Jan-2024 launch ($B) · slope = demand trend
extract_supply_profit.py → rebuild_dashboard_supply_profit.pyWhat do these mean?
- % Supply in Profit
- Of all spendable supply, the fraction whose cost basis (price at the coin’s last on-chain move) is below the current price. Falls in bear markets as recent buyers go underwater; <50% has marked every major bottom and >95% every blow-off top — thresholds far more stable across cycles than MVRV’s. Recomputed daily against the live price from the latest cost-basis distribution; the weekly history comes from a full per-UTXO chain walk.
- Supply in Profit vs Loss (BTC)
- The same split in absolute BTC: coins above water (profit) vs underwater (loss). The loss line climbing into the millions is the supply an eventual capitulation would have to flush; it collapses toward zero as price makes new highs and nearly all coins return to profit.
% Supply in Profit
Share of supply above its on-chain cost basis · <50 capitulation / >95 euphoria
Supply in Profit vs Loss (BTC)
Coins above water (profit) vs underwater (loss)
What does this mean?
- 25Δ Risk Reversal (put IV − call IV)
- Take the ~30-day options equally far out-of-the-money on each side (25-delta) and subtract the call's implied volatility from the put's. Positive = downside protection costs more than upside calls — traders paying up to hedge a fall (fear). Negative = calls are bid — traders chasing upside (greed). Tops typically show flat/negative skew (nobody fears a drop); bottoms show elevated positive skew (everyone's hedged). A positioning read the spot-only indicators can't see.
Options 25Δ Skew (put IV − call IV)
Downside-protection demand · >0 = fear (puts bid) / <0 = greed (calls bid)
What do these mean?
- Composite Cycle Index (0–100)
- The mean of the percentile ranks of 9 cycle-position metrics (each scored 0–1 vs its own full history, then averaged ×100). All inputs read high at tops / low at bottoms, so the average is directly "where in the cycle." <15 = cycle-bottom zone, >85 = cycle-top zone. Averaging cancels any single metric's noise — the one objective bull/bear navigator. (Full-history normalization, like CBBI; read relative, not as fixed lines.)
- MVRV Z-Score
- (Market cap − realized cap) ÷ the standard deviation of market cap. The classic cycle top/bottom oscillator: deeply negative = price below aggregate cost basis (capitulation), high = euphoric overvaluation. Std-normalization is provider-dependent, so the absolute scale here is its own — read the shape and extremes.
- Stablecoin Supply Ratio (SSR)
- BTC market cap ÷ total stablecoin supply. A "buying power" gauge: low SSR = lots of stablecoins relative to BTC = more dry powder on the sidelines (historically bullish); high SSR = sideline capital exhausted. From 2018 (stablecoins barely existed before).
- 2-Year MA Multiplier
- Price ÷ its 730-day moving average. A long-horizon cousin of the Mayer Multiple: <1 = historically cheap (below the 2-year mean), >~5 = historically overheated. One of the simplest, most-watched cycle top/bottom references.
Composite Cycle Index
Mean percentile-rank of 9 cycle metrics · <15 bottom zone / >85 top zone · the objective navigator
MVRV Z-Score
Market vs realized value, std-normalized · <0 below cost basis / high = top
Stablecoin Supply Ratio (SSR)
Market cap ÷ stablecoin supply · low = more dry powder (bullish)
2-Year MA Multiplier
Price ÷ 730-day MA · <1 historically cheap / >5 historically hot