Documentation
cryptowatch.id · product documentation · updated 2026-07-19

Where serious crypto decisions get made.

Macro tells you if and when to be exposed — live macro, cycle, on-chain, and execution inputs synthesized into one verdict. Desk turns that verdict into pre-trade thesis context. One engine for the allocation decision, with accountability attached.

Freshness-guarded live inputs Macro → Cycle → On-Chain → Execution Public forecast accountability

00Start here

One Bitcoin state, five decision views. Start with the verdict; open only evidence that can change it.

DestinationQuestion it answersRoute
Bitcoin StateWhat is Bitcoin's complete state right now?/state
Today's ReadWhat are the five decisions now?/macro
DeskWhat evidence and invalidation govern execution?/desk
Track Record + LedgerHow has the system performed, and can I verify the record?/track-record · /ledger
AI AgentsHow can software use the same synthesis?/agents
Site MapWhere does every active page live?/sitemap
The current reading order

State → decision → evidence → action → accountability. Bitcoin State holds the complete thesis. Now, Cycle, Money, Macro, and Action keep each decision concise. Track Record and Ledger preserve the receipts.

00bEvery panel: what it means and how to read it

This is the user field guide for all 31 active Macro panels. Open a panel below for a real interface snapshot, the metric definition, the interpretation rule, the decision it feeds, and the condition that makes the read unsafe.

How to read synthesized data

A synthesis is not a new raw metric. It combines several owned inputs under declared rules. Always read it in this order: verdict → score or state → coverage → agreement → freshness → invalidation. A strong-looking verdict with weak coverage or stale evidence is a weak read.

The on-chain interpretation layer

CryptoWatch compresses eight evidence families into the existing five decisions: entity accumulation, supply liquidity, network demand, holder spending, old-coin activity, miner health, buyer/seller alignment, and ownership-cost position. Confidence is decomposed into coverage, agreement, persistence, historical reliability, and regime relevance. Historical reliability stays unavailable until enough daily receipts exist; the ownership-cost read uses verified cost-basis levels and does not claim to be a full URPD histogram.

Snapshots explain layout and labels; they are not live recommendations. Values can be loading, unavailable, or different from today. Open Today’s Read for the current state.

Now · conclusion and confidence

Smart AlertsFeeds · Bitcoin Now
Smart Alerts panel
Measures

Threshold crossings in load-bearing cycle, flow, macro, and positioning inputs, with severity, confidence, analog, and base-rate context.

Read it

Hard alerts deserve review now. Watch cards are context only. Read severity, driver contribution, then the suggested next check.

Changes the decision when

A live input crosses its declared threshold and supporting evidence confirms the move.

Do not trust when

The card is watch-only, has no base-rate context, or its source is stale.

Morning BriefFeeds · Bitcoin Now
Morning Brief panel
Measures

The daily synthesis: headline, five decisions, material changes, strongest opposing case, and invalidation.

Read it

Start here each day. A quiet Delta Watch means no threshold crossed; it does not mean the data failed to refresh.

Changes the decision when

A decision or material driver differs from the previous daily brief.

Do not trust when

The brief date and underlying snapshot are not current.

Thesis HealthFeeds · Bitcoin State
Thesis Health panel
Measures

Whether monetary liquidity, network strength, and adoption or ownership flows still support the long-term Bitcoin thesis.

Read it

Read the known-input score together with live coverage. Strengthening supports conviction; weakening asks for confirmation, not an automatic sale.

Changes the decision when

One or more thesis pillars weaken enough to change the aggregate state.

Do not trust when

Coverage is too low for the displayed confidence.

BTC Composite SignalFeeds · Bitcoin Now
BTC Composite Signal panel
Measures

A signed −24 to +24 synthesis across Macro, Cycle, On-Chain, and Execution. Each eligible input contributes −2 to +2 before conflict rules and coverage gates.

Read it

Negative is defensive, near zero is Wait, positive permits more risk. The gauge is the headline; the radar explains which layers create that result.

Changes the decision when

The score crosses a verdict band or a binding conflict rule limits the raw score.

Do not trust when

Coverage, agreement, freshness, or the evidence trail does not support the posture.

Market CompassFeeds · Macro
Market Compass panel
Measures

Seven regime lenses: macro, cycle, on-chain, derivatives, funding, ETF flows, and sentiment.

Read it

Use the shape to see alignment and divergence. A broad outer shape means stronger conditions; a collapsed or lopsided shape means weak or conflicted conditions.

Changes the decision when

The balance of lenses shifts the market between risk-off, transition, and risk-on states.

Do not trust when

Too few lenses are live or one stale lens dominates the map.

Truth EngineFeeds · confidence
Truth Engine panel
Measures

Source coverage, agreement, conflicts, and freshness across the evidence used by the main read.

Read it

High coverage plus high agreement permits more trust. Low coverage or active conflicts should reduce position size and confidence.

Changes the decision when

The evidence quality changes the permission to trust the Composite verdict.

Do not trust when

You treat it as a separate buy/sell signal. It is a confidence brake.

Cycle · phase, temperature, and extremes

CW Risk ScoreFeeds · Cycle
CW Risk Score panel
Measures

A normalized 0–1 cycle-temperature score. Values near 0 represent capitulation-like valuation; values near 1 represent euphoria-like valuation.

Read it

Cold favors patient accumulation context; hot raises distribution risk. Mid-range values are not actionable without trend and cycle phase.

Changes the decision when

The score enters a new risk band and its companion signals agree.

Do not trust when

Used as an exact top/bottom timer by itself.

Cowen Cycle SuiteFeeds · Cycle
Cowen Cycle Suite panel
Measures

Seven complementary cycle reads covering time, valuation, trend, dominance, and risk.

Read it

Count directional agreement, then inspect dissenters. Four or more aligned reads create context; one clock never defines the cycle.

Changes the decision when

At least four live reads align in one direction.

Do not trust when

Fewer than four reads are available or the bundle is older than 26 hours.

Cycle Top RadarFeeds · Cycle
Cycle Top Radar panel
Measures

Proximity of MVRV-Z, Puell, Mayer, and related overheating inputs to historically elevated bands.

Read it

Low means far from a confirmed top cluster. Elevated means several measures are stretched. It estimates proximity, not a date.

Changes the decision when

The proximity score enters Elevated or Risk and distribution evidence agrees.

Do not trust when

Fewer than two core valuation inputs are live.

Three-Layer AlignmentFeeds · Cycle
Three-Layer Alignment panel
Measures

Whether structure, capital flow, and derivatives positioning tell the same directional story.

Read it

All aligned raises conviction. Two versus one is partial confirmation. Mixed means wait for the dissenting layer to resolve.

Changes the decision when

All three layers align or a previously aligned state breaks.

Do not trust when

Fewer than two layers are live or the bundle is stale.

Cycle PositionFeeds · Cycle
Cycle Position panel
Measures

A 0–100 phase synthesis combining valuation, halving context, bottom proximity, correction structure, and long-term-holder behavior.

Read it

Use the phase label first, then open Phase, Halving, Bottom Proximity, and LTH tabs to see what supports or contradicts it.

Changes the decision when

The component stack moves the phase into capitulation, accumulation, markup, or distribution.

Do not trust when

Calendar phase overrides contradictory live evidence or too few components are available.

BTC Price · Cycle LevelsFeeds · Cycle and Action
BTC Price and Cycle Levels panel
Measures

Spot price relative to Realized Price, LTH Realized Price, STH Cost Basis, True Market Mean, and DCA zones.

Read it

These are cohort cost and valuation anchors. Reclaiming a level can improve structure; losing it can turn that same level into resistance.

Changes the decision when

A daily close crosses a referenced level or allocation zone.

Do not trust when

Candles or the referenced levels are older than 26 hours.

Money · who is buying and selling

Corporate TreasuriesFeeds · Money
Corporate Treasuries panel
Measures

Known company, miner, ETF, and government Bitcoin holdings plus concentration and 30-day demand change.

Read it

Rising holdings support structural demand. Concentration above 50% increases entity-specific risk even if total holdings rise.

Changes the decision when

Thirty-day demand changes sign or concentration crosses its risk threshold.

Do not trust when

The holdings artifact is empty or older than seven days.

LTH → Exchange TransfersFeeds · Money
Long-term holder exchange transfer panel
Measures

Seven-day average transfer volume from long-term holders to exchanges, split between coins moved in profit and at a loss.

Read it

Rising profit transfers suggest distribution. Rising loss transfers suggest stress or capitulation. Transfers are intent evidence, not proof of sale.

Changes the decision when

Loss transfers exceed 60% while total transfers rise, or sustained profit transfers accelerate.

Do not trust when

The split or total moving average is unavailable.

MSTR mNAVFeeds · Money
MSTR mNAV panel
Measures

Strategy's diluted market value relative to its Bitcoin treasury value, plus preferred-share price and funding-health context.

Read it

Above 1× is a premium for leverage and capital access; below 1× is a discount. Neither automatically means cheap or expensive.

Changes the decision when

mNAV falls below 0.85× or preferred financing shows material stress.

Do not trust when

Holdings, share count, or prices are older than seven days.

Supply DynamicsFeeds · Money
Supply Dynamics panel
Measures

Illiquid and long-term-held supply trends, which estimate how much float is unavailable to trade.

Read it

Rising illiquid supply means absorption and tighter float. Falling illiquid supply means previously dormant supply is becoming available.

Changes the decision when

The trend reverses across two or more consecutive readings.

Do not trust when

The holder series is unavailable or older than seven days.

Liquidity & CapitalFeeds · Money
Liquidity and Capital panel
Measures

A synthesis of ETF flows, deployable-liquidity pipeline, stablecoin and reserve flows, and holder absorption.

Read it

Positive and broad receipts mean capital is entering. A single positive component with quiet activity means weak participation, not full confirmation.

Changes the decision when

ETF, pipeline, and money-flow components align or materially diverge.

Do not trust when

Feeds are empty, stale, or use incompatible time windows.

Entity RegimeFeeds · Money
Entity Regime panel
Measures

Who is driving supply and demand across the same windows: long-term-holder supply, 7-day and 30-day ETF flow, corporate treasuries, and broad entity accumulation.

Read it

Start with the alignment label, then read each participant. “Recovering” means short-term ETF flow improved while the 30-day total remains negative; “split” means CryptoWatch will not force false confluence.

Changes the decision when

A major cohort changes stance or the four participant windows become aligned.

Do not trust when

Coverage is missing, horizons are mixed without a label, or transfer activity is treated as confirmed selling.

Macro · permission and cross-asset context

Macro RegimeFeeds · Macro
Macro Regime panel
Measures

M2 growth, dollar strength, real yields, Fed liquidity, yield curve, credit spreads, and BTC's cross-asset relationship.

Read it

Expanding money and easier financial conditions grant permission to bullish crypto signals. Dollar, rate, or credit stress can cap them.

Changes the decision when

Money, dollar, rates, or credit cross a declared regime boundary.

Do not trust when

Monthly and daily inputs are compared without respecting freshness.

Capital RotationFeeds · Macro
Capital Rotation panel
Measures

Bitcoin's 30-day and 90-day relative performance versus semiconductors, Nasdaq, gold, and other macro risk assets.

Read it

BTC leadership suggests crypto-specific demand. Broad risk assets leading BTC suggests capital is available but not yet rotating into Bitcoin.

Changes the decision when

Bitcoin leads or lags the comparison basket across both windows.

Do not trust when

Fewer than three benchmark legs are live.

Macro-Crypto Regime MatrixFeeds · Macro
Macro-Crypto Regime Matrix panel
Measures

A 3×3 intersection of liquidity: expanding, neutral, contracting; and crypto risk: risk-on, compression, risk-off.

Read it

The same crypto signal means different things in different macro cells. Expanding plus risk-on supports exposure; contracting plus risk-off demands defense.

Changes the decision when

The active matrix cell changes or three macro quadrants align.

Do not trust when

Fewer than three macro inputs are live.

Tail-Risk RegisterFeeds · Macro
Tail-Risk Register panel
Measures

Low-frequency structural risks such as miner fee security, custody concentration, and protocol ossification.

Read it

These are thesis risks, not daily trading signals. Watch direction, threshold proximity, and whether several risks worsen together.

Changes the decision when

A tracked scenario rises above its declared watch threshold.

Do not trust when

Fewer than three scenarios are live or the register is stale.

Action · timing, execution, and accountability

BTC Trade SetupFeeds · Action
BTC Trade Setup panel
Measures

A deterministic plan built from live cost-basis levels, position ladder, regime gates, risk limits, and historical base rates.

Read it

Read regime, allowed posture, entry ladder, invalidation, and sizing in that order. A withheld setup means the gates did not permit precision.

Changes the decision when

Price enters a declared zone while regime and risk gates permit exposure.

Do not trust when

Entry, stop, sizing, or the supporting snapshot is stale or withheld.

Contrarian ExtremesFeeds · Action
Contrarian Extremes panel
Measures

Extreme funding, spot premium, sentiment, options skew, and max-pain conditions where positioning becomes one-sided.

Read it

Extremes are reversal context, not immediate triggers. Look for divergence between fearful positioning and stabilizing price, or euphoric positioning and weakening spot.

Changes the decision when

An extreme crosses the 5th or 95th percentile with confirming price behavior.

Do not trust when

The extremes artifact is stale or the signal lacks confirmation.

Execution LayerFeeds · Action
Execution Layer panel
Measures

A synthesis of options volatility, perpetual funding, open-interest crowding, and estimated liquidation magnets.

Read it

Use it to time a thesis already supported by Cycle and Money. Crowded longs raise flush risk; crowded shorts can create squeeze fuel.

Changes the decision when

Funding, options, and liquidation positioning align around an extreme.

Do not trust when

A component is missing or derivatives are used as a cycle call alone.

OptionsFeeds · Action
Options panel
Measures

DVOL implied volatility, near-versus-far term structure, 25-delta skew proxy, and dealer-gamma strike clusters.

Read it

Backwardation signals near-term panic; low-volatility contango near highs can signal complacency. Negative skew means downside protection is expensive.

Changes the decision when

Volatility, term structure, skew, or gamma clusters enter an extreme.

Do not trust when

The surface is stale or one thin expiry dominates.

Funding RegimeFeeds · Action
Funding Regime panel
Measures

The payment between perpetual-futures longs and shorts, normalized to an annualized rate across the selected contract universe.

Read it

Positive means longs pay shorts; negative means shorts pay longs. Mild positive is normal. Very positive means crowded longs; deeply negative means crowded shorts.

Changes the decision when

Funding reaches an extreme, changes sign, or diverges from spot direction.

Do not trust when

Low-volume contracts dominate, or carry is treated as guaranteed yield.

Liquidation LevelsFeeds · Action
Liquidation Levels panel
Measures

Estimated forced-liquidation clusters above and below spot plus the nearest high-open-interest options pin.

Read it

Clusters above can fuel a short squeeze; clusters below can accelerate a long cascade. Use them as risk zones, not guaranteed price targets.

Changes the decision when

A large cluster or dealer pin is close enough to change entry, stop, or patience.

Do not trust when

Estimated cluster size is mistaken for measured orders.

DCA Entry ZonesFeeds · Action
DCA Entry Zones panel
Measures

A precommitted allocation ladder anchored to realized-price and cohort-cost levels, with fixed capital percentages by zone.

Read it

Use zones to control cadence and dry powder. Deeper valuation zones permit larger tranches; they do not promise an immediate rebound.

Changes the decision when

Spot enters a new zone that has not already been deployed.

Do not trust when

Realized price is missing or the same allocation is counted twice.

Cointime LayerFeeds · Action and Cycle
Cointime Layer panel
Measures

AVIV and liveliness, which weight valuation by economically active versus dormant coin supply.

Read it

Low AVIV suggests active-value compression; high AVIV suggests stretched valuation. Liveliness shows whether old supply is becoming active.

Changes the decision when

AVIV crosses 0.75 or 1.50 and liveliness agrees.

Do not trust when

AVIV or active-value inputs are missing or stale.

Forecast AccountabilityFeeds · trust
Forecast Accountability panel
Measures

Resolved directional calls plus a separate daily receipt trail for every on-chain evidence family: observation count, state changes, persistence, regime, and later 7/30/90-day price context.

Read it

Use forecast calibration for actual calls. Use interpretation receipts to verify what the evidence said and when it changed. Forward returns beside descriptive states are context—not forecast wins.

Changes the decision when

A call resolves, or a daily evidence family changes state enough to alter the five-decision synthesis.

Do not trust when

Descriptive state receipts are mislabeled as price predictions, or small samples are presented as proven reliability.

00About CryptoWatch

One BTC decision engine.

CryptoWatch is where serious crypto decisions get made.
Macro tells you if and when to be exposed — with scored inputs across macro, cycle, on-chain, and execution synthesized into a single verdict.
Desk keeps the thesis, sizing context, and accountability trail attached to that verdict.
One for the allocation decision. One for the operating discipline around it.

Macro — The Bitcoin Macro Cockpit

Macro is organized as a layered stack: Macro → Cycle → On-Chain → Execution. The synthesis screen is the apex — a single composite verdict built from the scored inputs that are live, with an explicit conflict resolver telling you when lenses disagree.

Macro shows what the data says, where the data disagrees, and what a disciplined allocator can do with that read.

Why we built this

Because the tools that exist are either raw data dumps (on-chain analytics platforms, exchange-flow services — here's 200 charts, figure it out) or black-box signals (pay us, trust us, we'll tell you when to buy). Neither respects how a thoughtful trader actually makes decisions.

A real cycle decision requires checking macro liquidity, cycle timing, on-chain stress, derivatives positioning, institutional flows, and sentiment — simultaneously. No single data source covers all of them. We wanted one screen that does, with a framework that explains exactly how each signal contributes to the verdict.

Why we're different

PlatformWhat they give youWhat CryptoWatch gives you
On-chain analytics platformsRaw on-chain data. You build your own dashboard.Pre-synthesized composite. Every indicator scored, weighted, and explained.
Cycle-chart aggregators200+ charts. Expert commentary. No single verdict.One gauge, one number, one verdict — with the full breakdown visible if you want it.
Exchange-flow servicesExchange flows + alerts. Professional data tools.Flows as one input among six layers. The verdict weighs flows against macro, cycle, and derivatives.
Charting platformsCharts + indicators. You interpret everything.Interpretation is the product. We take a position and show our work.
Paid signal groups"Buy now." No reasoning. No accountability.Full reasoning chain. Accuracy tracked publicly. Every call has a confidence level.

Our specialty

Macro: Cycle intelligence, not day-trading signals. Built for the question "where are we in the 4-year BTC cycle?" and its practical follow-ups: should I be accumulating, holding, or distributing? At what size? With what conviction?

Desk: Thesis discipline, not a trade room. Built for the question "what would invalidate this allocation read?" and its follow-ups: what size is justified, what evidence matters, and what must be logged for accountability?

Mission

Make cycle intelligence and narrative alpha accessible. The data that drives billion-dollar fund decisions should be readable by anyone with 5 minutes a day and a browser.

Vision

A world where no retail crypto investor gets caught on the wrong side of a cycle turn — or chases a narrative peak — because they didn't have access to the right data in the right format at the right time.

The positioning that sticks

Other platforms give you charts, raw data, and exchange flows. CryptoWatch gives you the verdict — and shows its work.

01What this is

cryptowatch.id is a live BTC cycle intelligence dashboard. It synthesizes macro, cycle, on-chain, and derivatives signals into a single composite gauge that outputs one of seven verdicts — from STRONG SELL to STRONG BUY — and shows you exactly which indicators are driving it.

The dashboard exists because most "crypto dashboards" pick one lens (just on-chain, just TA, just sentiment) and miss the rest. Real cycle turns happen when macro, cycle position, on-chain cohort behavior, and derivatives positioning all line up. We wanted a single surface that shows whether they do.

Every number on the dashboard is computed live from primary sources. Nothing is hand-entered. Nothing is hardcoded. If the backend pipeline goes down, the number goes stale and the UI says so.

What this is not

This is not a signal service. It does not tell you when to buy or sell. It shows you what the underlying data says right now, in a single view, with all the math visible. The verdict is a summary of conditions, not a trade recommendation. Read the disclaimer.

02How to use the dashboard

A 6-step session workflow. Open the dashboard, go through these in order. Each step narrows the decision space until you have a concrete action (or confirm there's nothing to do).

Step 1 · Read the composite verdict (SIGNAL)

The first thing you see. The gauge sums 21 signed scores into a single number from −24 to +24 and maps it to one of 7 verdict bands. Read two things:

  • Verdict + score. "MILD BUY +7" means conditions lean bullish but conviction is partial.
  • Confidence %. If it's above 80%, indicators agree. If it's below 60%, the total is being driven by a few strong signals while the rest disagree — act smaller.

If the verdict is WAIT (score −2 to +1), stop here. Preserve dry powder. Don't force a trade out of boredom.

Step 2 · Check L4 Execution first (FUNDING + OPTIONS)

L4 is the trigger layer. It tells you whether the derivatives market is already crowded in one direction. This matters more than anything else for timing, because extreme positioning resolves in 1-4 weeks, not months.

  • Funding < −54% annualized → shorts are overloaded. Contrarian long setup in place.
  • Funding > +54% annualized → longs are overloaded. Contrarian short / top warning.
  • DVOL > 90 → panic priced in. Historically coincides with bottoms.
  • IV term backwardation → immediate fear priced in. 2020 COVID, 2022 FTX both had it at the low.

Step 3 · Verify with L3 On-Chain (TIER 1 + TIER 2)

L3 is the cohort layer. It answers: "is the on-chain population actually at a stress point, or is this just derivatives noise?" Open the Tier 1 panel and read the triggered count.

  • 0/4 Tier 1 → no confirmed bottom. Cap any planned allocation at 30-40%.
  • 1-2/4 Tier 1 → approaching. Start watching for the next trigger. Deploy first DCA tranche if Zone A price is hit.
  • 3-4/4 Tier 1 → maximum on-chain confluence. Only happens at cycle bottoms in backtest. Deploy full allocation.

Tier 2 is the confirming layer — softer triggers like LTH MVRV < 1, US Spot Premium positive, Liveliness falling. Tier 2 alone isn't enough to act, but Tier 2 triggering while Tier 1 is still 1-2 of 4 is a leading signal that Tier 1 is about to fire.

Step 4 · Check L2 Cycle Position (CYCLE)

L2 is the slow map. It won't change between sessions — that's the point. Read:

  • AVIV Ratio — where we sit in the post-ETF valuation band. <0.75 is historically extreme undervaluation.
  • MA Stack Regime Score — 0/4 or 1/4 confirms bear regime. 4/4 confirms full bull.
  • Halving regime — what phase the time-based calendar says we're in. If L2 says "late bear" and L3 says Tier 1 fires, conviction doubles.
  • Bottom Proximity composite — the one-number summary of how close we are to the bottom zone.

Step 5 · Check L1 Macro permission (L1 MACRO)

L1 is the override layer. If macro is hostile, even extreme undervaluation can get cheaper. Read:

  • M2 YoY > +3% → liquidity expanding. Full conviction in crypto-native signals.
  • M2 YoY < −2% → liquidity contracting. Cap allocation regardless of how cheap on-chain looks.
  • DXY +5% over 3m → dollar strengthening. Crypto fights a headwind. Reduce size.
  • BTC-SPX 30d correlation high → macro dominates. Watch equities for direction.

2022 is the textbook reason L1 exists. On-chain screamed "cheap" for 6 months while DXY rallied 20% and crushed BTC another 40%. The framework's L1 layer would have capped your allocation during that window.

Step 6 · Map to DCA zones (DCA)

DCA translates the verdict + confluence into a concrete allocation. The dashboard computes 5 zones (A-E) live from Realized Price and historical multipliers. Your job:

  • Never deploy all capital at once. Scale in across zones.
  • Zone A (closest to current price) gets the smallest tranche. Zones D-E (deepest) get the largest — reserved for maximum confluence.
  • When Tier 1 fires 3-4/4 inside Zone C or D, front-load the remaining allocation. That's the highest-conviction buy in the entire cycle.
Total session time

Once you know the flow: 3-5 minutes a day. The point of a composite framework is that most of the work is already done for you. You're reading a verdict, verifying it against 2-3 confirming signals, and checking L1 for a veto. That's it.

02bDecision and evidence contracts

Context earns dashboard space only when it names the verdict it feeds, the threshold that can change that verdict, its invalidation condition, and its freshness boundary.

How to read a decision-contract rail

Twenty-two supporting panels now begin with the same four fields: Feeds names the primary decision owner; Role explains whether the panel confirms, times, filters, or executes that decision; Changes read when states the measurable escalation threshold; and Invalid if states when the panel must be ignored. The current synthesis line remains the live read; the rail is the stable methodology contract.

Machine-readable evidence services

The five former public evidence services (intraday delta, social emergence, mindshare, OSINT health, daily debate) were retired on 2026-07-15 with their Tier-C producer stack. They are not part of the current public contract.

03Four evidence questions behind five decisions

The framework asks four evidence questions across Macro, Cycle, On-Chain, and Execution. The Observatory synthesizes those answers into five user decisions: Now, Cycle, Money, Macro, and Action. Bitcoin State reconnects them into one complete thesis.

L1 Macro → "Can we even be here?"

The permission layer. Macro doesn't tell you to buy or sell BTC. It tells you whether BTC-specific signals are allowed to work. When M2 is expanding and DXY is weakening, crypto-native bullish setups resolve normally. When the opposite is true, they get overwhelmed by capital flight. L1 is the binary that decides whether the other 3 layers matter.

L2 Cycle → "Where are we in time?"

The slow map. This layer barely changes week-to-week. It tells you which phase of the 4-year halving cycle we're in: accumulation, markup, distribution, or bear. L2 is the context that determines what L3 and L4 readings actually mean. A funding spike at day 480 post-halving means distribution is starting. The same funding spike at day 950 post-halving means shorts are capitulating.

L3 On-Chain → "What is the cohort doing?"

The behavioral layer. This is BTC's unique advantage over every other asset — we can see what every holder cohort is actually doing on-chain. L3 tells you whether long-term holders are hoarding or distributing, whether short-term holders are in profit or underwater, whether miners are capitulating, whether institutional spot flows are positive. L3 is where the real bottom and top signals live.

L4 Execution → "Is now the moment?"

The trigger layer. The fastest-moving layer. L4 reads the derivatives market for crowded positioning — funding rates, open interest, implied volatility, skew. L4 won't call a cycle bottom by itself. But it's what separates a 6-week-early call from a same-week entry. When L2 and L3 say "bottom is close" and L4 says "shorts are at −190% annualized funding," that's the moment.

These four evidence layers are read in sequence when signals conflict:

  1. L1 wins overrides. Hostile macro caps any bullish call, no matter how strong L2-L4 are.
  2. L2 defines the playbook. L3/L4 are read differently depending on cycle phase.
  3. L3 provides the evidence. Without L3 confirmation, L4 alone is just "crowded positioning" — not a bottom call.
  4. L4 provides the timing. When L2 and L3 both say yes, L4 is what you watch for the entry trigger.

Out-of-sample validation note

This framework was designed and backtested on BTC data from 2015-2025, covering three full cycles (2015 bottom, 2018 bottom, 2022 bottom) and one cycle top (2025 ATH). Every threshold, every verdict band, every regime boundary was calibrated to fit these cycles. The 2026-2029 cycle is the first true out-of-sample test.

This is more honest than most crypto tools but it means the framework's historical track record — while real — is in-sample. Treat forward readings as probabilistic signals, not guaranteed calls. Per audit v2 #19.

04The 4-layer framework

Every composite on the dashboard rolls up through four layers. Each layer answers a different question. Each contributes signed scores that sum into a single composite.

L1 · Macro Regime

Question: is the global environment supportive of risk assets, or is it pulling capital out?

Bitcoin does not exist in a vacuum. When the US dollar strengthens and global liquidity contracts, even a perfect on-chain setup struggles. When M2 is expanding and DXY is rolling over, the same on-chain setup becomes a launchpad. L1 is the permission slip.

Signals: US M2 year-over-year · DXY 3-month change · BTC–SPX 30-day correlation regime.

L2 · Cycle Position

Question: where are we in the 4-year Bitcoin cycle — capitulation, accumulation, markup, or distribution?

Cycle position is the slow-moving map underneath everything else. It blends time-based features (halving framework), technical regime (weekly MA stack), valuation (AVIV Ratio from Cointime Economics), and composite bottom-proximity scoring. This layer is what separates a "dip" from a "bottom" and a "pullback" from a "top."

Signals: MA Stack Regime Score · AVIV Ratio · Halving regime · Bottom proximity composite · Drawdown from ATH.

L3 · On-Chain Stress

Question: is the on-chain population under stress, taking profits, or still distributing?

L3 is the cohort layer. It reads what long-term holders and short-term holders are actually doing on-chain, separates them by age, measures profit/loss behavior, and tracks institutional flow through spot ETF activity and US spot premium. This layer catches real bottoms before price does.

Signals: Zero-FP Tier 1 confluence · LTH MVRV · STH MVRV · Liveliness / Vaultedness · Realized Loss · US Spot Premium · IBIT activity multiplier · LTH SOPR.

L4 · Execution Timing

Question: is now the actual moment — is derivatives positioning primed to squeeze, or is the crowd already one-sided?

L3 says "a bottom is close." L4 says "and shorts are max-crowded at -70% annualized funding with backwardated IV." That's the difference between a six-week early call and a same-week entry.

Signals: BTC funding annualized · DVOL · IV term structure shape · 25Δ skew proxy · OI / market cap.

06The composite gauge

Every indicator contributes a signed score in the range −2 to +2 by default. After layer-strength multipliers (see "Multipliers and bounds" below) the per-indicator score is clamped to ±3. The 21 scored indicators sum, the running total is clamped to ±24 for display, and that total maps to one of seven verdict bands.

The scoring convention

+2 = strongly bullish (extreme undervaluation, capitulation, panic, or crowded short positioning).
+1 = mildly bullish (undervalued or supportive).
0 = neutral / no signal.
−1 = mildly bearish (overvalued or stretched).
−2 = strongly bearish (euphoric distribution, crowded long positioning, or extreme complacency).

Multipliers and bounds (Round 2 audit clarification, 2026-05-03)

The naive sum of 21 × ±2 would be ±42. The dashboard caps the displayed total at ±24 via two mechanisms:

  • Per-indicator post-multiplier clamp at ±3. Cycle phase context (e.g. confirmed bottom-cluster) applies a layer-strength multiplier to indicators in the relevant layer; the boosted score is clamped to ±3 to preserve a bounded invariant. So an L3 indicator scoring +2 raw can read as +3 in a confirmed bottom-cluster regime, but no further. Reference implementation: cw_macro.html aggregator, boosted = score × layerMult; r.score = clamp(boosted, -3, +3).
  • Display clamp at ±24. The summed total is clamped to ±24 in the gauge fill / verdict-band lookup. Scores that would otherwise saturate above ±24 are flagged in tooltips but are rare in practice — the effective historical range across 11 years of cycle data is ~−12 to +14 (see "Effective range" note in §LTH).
  • Theoretical max ≠ display range. The gauge is not calibrated to ±42 because (a) indicators rarely score at extreme values simultaneously across all 21 lenses, and (b) verdict bands were tuned against actual historical extremes, not theoretical ones. The ±24 display range is a calibrated band, not a hard physics-of-the-system limit.

Verdict bands

Score rangeVerdictMeaning
≥ +16STRONG BUYMultiple layers at capitulation extreme, derivatives crowded short, high-conviction bottom window
+8 to +15BUYCycle + on-chain both align bullish, derivatives not yet fighting the setup
+2 to +7MILD BUYConditions lean bullish but conviction is partial — one or two layers still neutral
−1 to +1WAITIndicators disagree or cancel out — no edge
−2 to −7MILD SELLConditions lean bearish — late-cycle risk appearing in one or two layers
−8 to −15SELLCycle + on-chain align bearish, derivatives confirm distribution
≤ −16STRONG SELLMultiple layers at euphoric extreme, high-conviction top window

Confidence

Alongside the score, the gauge shows a confidence percentage. This is a coverage + agreement score:

  • 50% from coverage — what fraction of the 21 indicators have live data right now (if a data feed is stale, its indicator drops out).
  • 50% from directional agreement — of the indicators that have data, what fraction are scoring in the same direction as the total.

A +8 score with 90% confidence means "most indicators agree and most of them have fresh data." A +8 score with 55% confidence means "the total is being driven by a few strong signals while the rest are neutral or conflicting."

What the gauge is not

Important

The composite score is not probabilistic. A +17 STRONG BUY does not mean "71% chance of going up." It means "conditions match historical bottom setups." Historically those setups have preceded multi-month rallies — but Bitcoin has done things that have never happened before, and will again. Use the gauge as a synthesis of conditions, not a win-rate.

07Confluence decision rules

The gauge is the one-number summary. The decision rules are what you do when you actually have to act. This section is what separates reading the dashboard from using it.

When layers agree — act with full size

All 4 layers aligned is the highest-conviction setup. It happens maybe 3-5 times per 4-year cycle. When it does, the signal is unambiguous.

Example: 2022 cycle bottom (Nov 21, 2022)

L1 Macro: M2 starting to re-expand, DXY rolling over from +20% peak → +1
L2 Cycle: MA Stack 0/4, AVIV 0.67, halving regime late bear, drawdown −77% → +7
L3 On-Chain: Tier 1 4/4 triggered, LTH MVRV 0.82, LTH SOPR 0.78, realized loss $18M/day → +7
L4 Execution: BTC funding −190% annualized, DVOL 94, IV backwardation, 25Δ skew −12 → +2
Composite: +17 STRONG BUY. Every indicator except a few L1 variables at or near maximum confluence.

Action: deploy Zones C-D-E aggressively (50-100% of remaining allocation). Set 12-18 month hold horizon. Do not try to time further dips.

When L4 conflicts with L2+L3 — reduce size, wait

The most common edge case: on-chain and cycle position agree there's an accumulation zone approaching, but derivatives positioning is on the wrong side. This is usually resolved by a liquidation event — don't deploy before it happens.

Example: June 2022 false signal

L1: M2 contracting, DXY +15% YTD → −2
L2: AVIV dropping toward 0.75, halving regime mid-bear → +3
L3: Tier 1 1/4 triggered (MVRV briefly crossed <1 on LUNA collapse), NUPL barely negative → +1
L4: Funding still positive, OI/Mcap at 3.8% (overleveraged), no panic in IV → −1
Composite: +1 WAIT. Framework said wait.

Why the framework was right: Only 1 of 4 Tier 1 signals fired. L4 showed overleveraged longs still in place. Real bottoms need L4 capitulation — which came 5 months later at FTX.

The lesson: never act on 1-2 Tier 1 signals. All 4 must fire. The confluence requirement is what made the framework skip June 2022 and catch November 2022.

When L1 is hostile — override everything

Macro headwind delays even extreme undervaluation. This is the hardest rule to follow emotionally because on-chain will be screaming "cheap" while price keeps dropping.

Example: Mid-2022 — cheap but still falling

AVIV dropped below 0.80 (historical accumulation territory) in July 2022. On-chain metrics suggested the bottom was near. But M2 was contracting at −1.5% YoY and DXY was at +18% 3-month change. L1 was maximally hostile.

What actually happened: BTC fell from $22K in July to $15.5K in November — another 30% downside. The framework's L1 veto would have capped allocation at 30-40%, preserving dry powder for the real bottom.

Rule: when L1 is hostile (M2 contracting AND DXY rising), cap total allocation at 30-40% of planned size regardless of L2/L3. Wait for L1 to flip before deploying the rest.

Layer priority hierarchy

ConditionOverride rule
L1 Macro hostile (M2 YoY < −2% AND DXY 3m > +5%)Cap allocation at 30-40% regardless of L2/L3 strength
L4 Funding > +54% annualizedNever add longs. Reduce existing if L3 is also weakening
L4 Funding < −54% annualizedAdds conviction if L2+L3 already support. Not sufficient alone.
L3 Tier 1 count = 0/4Maximum 40% of planned allocation. Not a bottom yet.
L3 Tier 1 count = 1-2/4Up to 60% of planned allocation. Start scaling in.
L3 Tier 1 count = 3-4/4Full planned allocation permitted. Historical cycle-low territory.
L2 AVIV < 0.75Highest-conviction buy zone regardless of short-term noise
L2 MA Stack 4/4 + AVIV > 2.0Distribution has begun. Size down 20% per week until AVIV < 1.5
L2 halving regime = distribution_dangerDefault to caution even if L3/L4 look bullish. Top window.
Meta rule: the framework is asymmetric about losses

The rules above are intentionally more conservative about adding risk than about preserving capital. Missing a cycle bottom by 10% is annoying. Deploying full size 3 months before the real bottom costs 30-40%. The rules optimize for the second mistake, not the first. You will feel slow. That's the price.

05Framework design rationale

Why 21 indicators and not 10. Why ±2 scoring and not raw values. Why some indicators are symmetric and some aren't. Why the verdict bands land at ±16 and ±8. These are not arbitrary choices — they're deliberate decisions with backtest rationale.

Why 21 indicators

The framework needs to cover 4 independent dimensions (macro, cycle, on-chain, execution) without missing signal and without becoming noise. We landed on 21 after testing configurations from 8 to 35. The distribution:

  • 3 macro (M2, DXY, BTC-SPX correlation) — thin, because macro signals move slowly. More macro indicators adds redundancy without signal. 3 is enough to detect the regime.
  • 5 cycle (MA Stack, AVIV, Halving regime, Bottom Proximity, Drawdown) — our highest-credit layer. Each indicator uses a different methodology (technical / valuation / time-based / composite / price) so they're uncorrelated enough that all 5 contribute independent signal.
  • 8 on-chain (Tier 1 confluence, LTH MVRV, STH MVRV, Liveliness, Realized Loss, US Spot Premium, IBIT activity, LTH SOPR) — biggest layer because on-chain is BTC's native data advantage. We want cohort behavior, valuation, miner stress, institutional flow, and profit-taking dynamics all covered.
  • 5 execution (Funding, DVOL, IV term, 25Δ skew, OI/Mcap) — enough to capture derivatives positioning without making L4 dominate.

Fewer than 21 leaves blind spots. In testing, 15-indicator versions consistently missed either miner capitulation signals or IV term structure reversals. More than 21 crosses into diminishing returns — each additional indicator contributes less signal while adding correlated noise and computation load. 21 is where backtest accuracy plateaus.

Why ±2 scoring instead of raw values

Every indicator uses different units. M2 YoY is a percentage. MVRV is a dimensionless ratio. Realized Loss is dollars per day. Funding is an annualized percentage. You can't sum them directly. A normalized score per indicator (−2 extreme bearish to +2 extreme bullish, 0 neutral) makes them addable and comparable.

Why specifically ±2 and not ±1 or ±3?

  • ±1 is too coarse. Only 3 states per indicator (bearish / neutral / bullish). Loses the "extreme" signal that is exactly what we care about at cycle turns.
  • ±2 gives 5 states: extreme bearish, mildly bearish, neutral, mildly bullish, extreme bullish. This matches how humans naturally categorize conditions. "Cold, cool, mild, warm, hot" is the psychological template.
  • ±3 or more over-weights noisy indicators. Funding can move 100% in a single day. Rewarding it +3 for a temporary spike would let it dominate the composite. The ±2 cap keeps any single indicator from owning more than ~8% of the theoretical range.

Why some indicators are asymmetric

Not every indicator scores symmetrically. Some push harder in one direction than the other. These aren't bugs — they're deliberate.

IndicatorRangeWhy asymmetric
M2 YoY−2 to +1 Contracting M2 is a deep structural headwind — worth full −2 weight. Expanding M2 is a tailwind but never a trigger by itself, so +1 is enough.
DXY 3m−1 to +1 DXY is a regime context, not a direct trigger. Capped at ±1 so it can't dominate crypto-native signals.
BTC-SPX 30d correlation0 only Pure regime indicator — tells you which other indicators matter. Never directional. Always scored 0.
Drawdown from ATH−1 to +2 Being near ATH isn't automatically "sell" (bull markets stay near ATH for months). But a >70% drawdown is strongly bullish because every historical cycle bottom had one.
Tier 1 triggered count−1 to +2 0/4 just means "no bottom signal active right now" — not "sell." It's neutral-to-mildly-cautious. But 3-4/4 is historically unique to final cycle lows, so it deserves the full +2.
DVOL−1 to +2 High DVOL = panic priced in = historically coincides with bottoms, full +2. Low DVOL is only mildly bearish (complacency warning, not a top signal by itself).
IBIT Activity Multiplier−1 to +2 Activity surges happen at both tops (FOMO) and bottoms (panic buying). Needs L2 context to read direction. Capped upside so it can't drive the composite alone.

How the verdict bands were calibrated

The 7 bands (−24 to +24) were calibrated with offline historical backtests against cycle extremes since 2015.

RangeVerdictHistorical backtest
≥ +16STRONG BUY2015-01-14 bottom (+19), 2018-12-15 bottom (+18), 2022-11-21 FTX bottom (+17). 3 of 3 major cycle bottoms landed in this band.
+8 to +15BUYMid-accumulation phases, 4-6 months after final lows. Strong conviction but not max confluence.
+2 to +7MILD BUYEarly accumulation, partial setup. Current 2026-04-14 reading sits here at +7.
−1 to +1WAITIndicators disagree or cancel out. No edge. Dry powder.
−2 to −7MILD SELLEarly distribution warnings.
−8 to −15SELL2021-04-14 first top, 2025-08 pre-top. Distribution confirmed.
≤ −16STRONG SELL2021-11-09 cycle ATH (−18). 2025-10-06 ATH landed at −8 because the 2025 top was shallower than prior cycles (diminishing extremes).

The ±16 threshold is where the framework has >80% historical precision for "this is a cycle turn." The ±8 threshold is the "conviction grows" line. ±2 is the noise floor — anything inside is a WAIT.

The 2025 top caveat

The 2025 cycle top only scored −8 (SELL, not STRONG SELL) because post-ETF cycle extremes are milder than pre-2024 cycles. This is the "diminishing extremes" thesis — each cycle's peaks and troughs move closer to the mean because institutional flows dampen volatility. The framework handles this automatically via the asymmetric Tier 1 count and the AVIV Ratio (which itself accounts for institutional realized cap). We expect future tops to land in the −8 to −14 range rather than the −18+ range of 2021.

08Indicator reference

Every scored indicator, in order, with its endpoint, logic, and scoring bands. This is the full source-of-truth for what the dashboard is computing.

L1 · Macro Regime

M2 Year-over-Year (US) L1

US M2 money supply series · daily snapshot

US M2 money supply year-over-year change. The slow-moving global liquidity oscillator. BTC cycle highs correlate strongly with M2 expansion peaks; cycle lows correlate with M2 bottoms.

Why it matters

BTC has had a ~80% rolling correlation with global M2 liquidity since 2013. Crypto is a long-duration, risk-on asset that breathes in lockstep with the money supply. When M2 expands, risk capital flows into the longest-duration assets (tech stocks, emerging markets, crypto). When M2 contracts, the flow reverses. M2 isn't a trigger — it's the permission slip.

We use US M2 as a proxy for global liquidity because it's the largest single component and updates weekly. The ideal indicator would blend US M2 + ECB M2 + PBOC M2 but the correlations are tight enough that US alone captures the regime.

DateM2 YoYBTC context
2020-06+24.7%Fed pandemic QE — start of the 2020-2021 bull run
2021-11+13.1%Peak of 2021 bull + cycle ATH
2022-06+5.9%Fed tightening — LUNA collapse, M2 growth decelerating
2022-12−1.3%First M2 contraction in decades — coincided with cycle low
2024-04+0.7%Halving + post-contraction stabilization
Failure mode

M2 is slow — it reflects economic conditions with a 3-6 month lag. When M2 starts contracting, BTC often rallies for another 2-3 months before capitulating. Conversely, M2 re-expansion can lag the cycle bottom by weeks.

Mitigation: never use M2 as a timing signal. Use it as a context filter — cap allocation sizes when M2 is contracting, full size when M2 is expanding. The timing comes from L3 + L4.

ConditionReadingScore
Accelerating positiveYoY > +3.0%+1
Positive but decelerating0% < YoY ≤ +3.0%0
Flat / declining−2.0% < YoY ≤ 0%−1
ContractingYoY ≤ −2.0%−2
Input class: public macro liquidity series · refresh: 01:20 UTC daily

DXY 3-Month Change L1

Dollar-index market data · daily snapshot

Dollar Index 3-month percent change. A strengthening dollar pulls capital out of risk assets; a weakening dollar fuels them. Historically the cleanest macro wind at BTC's back is DXY rolling over after a multi-month rally.

Why it matters

The US Dollar Index has the cleanest inverse correlation with BTC of any single macro variable. A rising dollar pulls global capital into USD-denominated assets (Treasuries, US equities). A falling dollar pushes capital into risk assets. The 3-month change captures the trend without reacting to daily noise.

We use DXY instead of the trade-weighted dollar because it's more liquid, updates in real time, and captures the same signal. The 3-month lookback is long enough to filter weekly chop but short enough to flag regime changes within a cycle.

DateDXY 3mBTC context
2022-07+7.2%DXY rally crushed risk assets. BTC fell from $30K to $19K.
2022-11+1.1%DXY peak. BTC cycle low 2 weeks later.
2023-01−4.8%DXY rolling over. BTC bottomed, started recovery.
2024-04+1.2%Halving-week DXY stable. Neither tailwind nor headwind.
2025-09+3.1%Pre-cycle-top DXY strength. Distribution warning.
Failure mode

DXY weakness can coexist with weak BTC during risk-off regimes (2018 bear market, DXY was flat-to-weak but BTC fell 84%). DXY is a necessary but not sufficient condition for BTC strength.

Mitigation: DXY is scored ±1 max (not ±2) precisely because it's a soft regime indicator. It can't drive the composite alone — it amplifies or dampens crypto-native signals.

ConditionReadingScore
Dollar strengthening (risk-off)Δ3m > +2.0%−1
Range-bound−2.0% ≤ Δ3m ≤ +2.0%0
Dollar weakening (risk-on)Δ3m < −2.0%+1
Input class: public macro market series · refresh: 01:20 UTC daily

BTC–SPX 30-Day Correlation L1

Derived from SPX and BTC daily closes

Rolling 30-day correlation between BTC and the S&P 500. This is a regime indicator, not a directional one. When correlation is high (>0.6), BTC is moving with risk assets and macro dominates. When correlation is low or negative, BTC is trading on its own narrative. Reported as context only — scored neutral (0).

Why it matters

This isn't a directional signal — it's a regime classifier. When BTC-SPX correlation is high (> 0.6), BTC is trading as a risk asset and macro conditions dominate. When correlation is low or negative, BTC is trading on its own narrative (halving, ETF flows, on-chain events) and L3 signals matter more.

We keep it in the framework scored at 0 (no direct composite contribution) because its job is to tell you which other indicators to weight heavily. High correlation → L1 Macro matters more. Low correlation → L3 On-Chain matters more. It's a meta-indicator.

DateCorrRegime
2020-030.92COVID crash — crypto sold as risk asset, maximum correlation
2021-020.28Crypto-native bull — BTC decoupled, halving narrative dominant
2022-060.78Macro bear — BTC tracked tech stocks down on every Fed meeting
2024-010.35Spot ETF narrative — BTC decoupled from macro
2025-030.51Mid-cycle, neither regime clearly dominant
Failure mode

Correlation alone doesn't tell you direction. High correlation to a falling SPX is bearish; high correlation to a rising SPX is bullish. Mitigation: always read correlation alongside DXY and the SPX trend itself. The indicator is scored 0 by design — it only changes how you read the other indicators.

Input class: equity index close + BTC close · refresh: 01:20 UTC daily

Fed Balance Sheet (WALCL) L1

Central-bank balance sheet weekly series · 4w + 52w change

Federal Reserve total assets ($T). QE = Fed buying bonds = liquidity injected into markets = risk-asset tailwind. QT = Fed running off holdings = liquidity drained = risk-asset headwind. Often called "THE most important macro signal for crypto" because BTC's multi-year cycles line up with Fed balance sheet expansion and contraction.

Scoring bands (directional context for the macro regime)

4w change: ≥+0.5% = QE (risk-on), −0.5% to +0.5% = stable, ≤−0.1% = QT mild, ≤−0.5% and 52w ≤−2% = QT accelerating (strongest headwind). Weekly series released Wednesdays; 4-row lookback ≈ 4 weeks.

Input class: public central-bank balance sheet series · refresh: daily macro cron

Yield Curve · 10Y − 2Y (T10Y2Y) L1

10Y − 2Y Treasury spread, in percentage points

Difference between the 10-year and 2-year US Treasury yields. Inversion (spread < 0) preceded every US recession since 1955 with a ~12-month lead. Crypto, being a long-duration risk asset, typically follows the risk-asset cascade 6-18 months after inversion normalizes upward.

Regimes

<0pp = inverted (recession warning), 0-0.5 = flat, 0.5-2.0 = normal, >2.0 = very steep (post-recession recovery signature). We surface "days since sign flip" so you can gauge how fresh the current regime is.

Input class: public Treasury spread series · refresh: daily

Reverse Repo (RRPONTSYD) L1

Overnight reverse repo balance, in billions USD

Money market funds park cash at the Fed's overnight reverse repo facility — effectively removing it from risk markets. Peak was ~$2.5T in late 2022; drained below $1B through 2025. Draining RRP = capital flowing back into markets (risk-on tailwind); absorbing RRP = flight-to-safety (risk-off drag). $100B/30d is historically meaningful; $20B/30d matters in the current low-balance regime.

Input class: public liquidity facility series · refresh: daily

Real Yield · 10Y TIPS (DFII10) L1

Inflation-adjusted 10Y Treasury yield

Inflation-adjusted return on a 10-year Treasury — the opportunity cost of holding non-yielding crypto. Negative real yields = TradFi can't beat inflation = strong crypto tailwind (2020-2021 cycle). >2% = restrictive, meaningful crypto headwind (2024 environment).

Regimes tuned to crypto's historical sensitivity

<−1pp deeply negative (strong tailwind), −1 to 0 accommodative, 0 to 1 neutral, 1 to 2 tight, >2 restrictive (heavy headwind).

Input class: public real-yield series · refresh: daily

HY Credit Spread (BAMLH0A0HYM2) L1

US high-yield option-adjusted spread, daily %

The risk-appetite thermometer. Widening HY spreads = credit stress = risk-off across all assets. Crypto mirrors HY credit cycles tightly — during 2022's credit crunch HY blew out and BTC drew down with it; 2024's narrowing spreads coincided with BTC's rally to new highs.

Regimes

<3% complacency (risk-on bias), 3-5% normal, 5-8% stressed (risk-off), >8% crisis.

Input class: public credit-spread series · refresh: daily

VIX · Volatility Index (VIXCLS) L1

SPX 30d implied volatility series

The classic "fear gauge." Sub-15 = complacency (historically precedes corrections), 20-30 = caution, >40 = panic. Crypto tends to follow VIX spikes into drawdown and recover on VIX collapse — the intraday sentiment specialist of the macro stack.

Input class: public equity-volatility series · refresh: daily

Dr. Copper (HG) L1

Copper futures, daily $/lb

Industrial metals bellwether. Copper is consumed everywhere — construction, EVs, grid, electronics — so its price tracks global growth expectations. Rising copper = cyclical demand expansion (risk-on for crypto); falling = recession whispers. 90d horizon because copper is noisy day-to-day.

90d change regimes

>+8% strong growth, +2 to +8 expanding, −2 to +2 neutral, −8 to −2 contracting, <−8 recession-like.

Input class: public commodities market series · refresh: daily

USD/CNY · China Capital Flow L1

USD/CNY spot, daily

CNY weakening vs USD historically signals Chinese capital outflow pressure — a bearish crypto signal since a material share of crypto flow has historically come through Asia. CNY strengthening = inflow signal. Small moves matter: 1.5% in 30d is notable for a managed currency like CNY.

Input class: public FX market series · refresh: daily

L2 · Cycle Position

MA Stack Regime Score L2

Derived from BTC weekly closes vs 20w/50w/100w/200w MAs

Count of how many of the four weekly moving averages BTC is above (0/4 to 4/4). This is the primary backtest-validated technical regime signal from the Indicator Deep Dive framework. 0/4 matches the 2015, 2018, and 2022 cycle bottoms exactly. 4/4 matches every cycle top.

Why it matters

The simplest possible regime detector. No calibration, no window choice, no parameter tuning — just "is BTC above or below each long-term MA?" The lack of tuning is the point: every cycle low since 2015 had a 0/4 reading and every cycle top had a 4/4 reading. Zero false positives on the full stack transition.

We use 20/50/100/200 week windows because they span roughly 5 months to 4 years of price history, capturing everything from mid-cycle corrections to the full halving cycle. Daily MAs would be too noisy. Monthly MAs would be too slow.

DateMA StackBTCWhat happened next
2015-01-140/4$171+117× in 35 months
2017-12-174/4$19,500−84% over 12 months
2018-12-150/4$3,194+4.3× in 6 months
2019-062/4 → 1/4$13,800−52% back to $6,600 (the 2/4 ambiguity case)
2022-11-210/4$15,479+4.7× in 12 months
2025-10-064/4$124,714−40% over 6 months (current cycle)
Failure mode

2/4 is the genuinely ambiguous state. In 2019, the stack recovered from 0/4 → 2/4 → back to 0/4 before the real cycle turn. A trader treating 2/4 as a buy signal would have been stopped out.

Mitigation: we score 2/4 as 0 (neutral) precisely because it's ambiguous. The framework waits for 3/4 + at least one L3 confirmation before treating an MA Stack recovery as a real cycle turn.

RegimeReadingScore
Full bear (max DCA zone)0/4+2
Late bear (bottom window)1/4+2
Transition2/40
Bull3/4−1
Full bull (top zone)4/4−2
Input class: BTC daily close store · refresh: 01:00 UTC daily

AVIV Ratio L2

Cointime Economics · Active Value / Investor Value

The post-ETF replacement for MVRV Z-Score. Cointime Economics (Ark Invest + on-chain analytics, 2023) reweights supply by coin age to avoid the distortion that large dormant stashes create in classic realized cap. AVIV is what drives the Cointime Accumulation Score on the dashboard.

Why it matters

AVIV (Active Value / Investor Value) replaces classic MVRV Z-Score for the post-ETF era. The reason: institutional flows after January 2024 pushed large amounts of BTC into dormant custody (BlackRock's IBIT, Fidelity's FBTC, MicroStrategy). These holdings inflate the classic realized cap without reflecting real market activity, which distorts MVRV Z readings by 15-30%.

AVIV reweights supply by coin age so dormant institutional stashes don't drown the signal. The method comes from the 2023 Cointime Economics paper, which defined the approach specifically to solve the institutional-dormancy problem.

DateAVIVZone
2015-010.42Extreme undervaluation (cycle low)
2017-124.2Cycle top (2017 peak)
2018-120.55Cycle low
2021-113.1Cycle top
2022-110.67Cycle low (2022)
2025-101.56Cycle top (2025) — diminishing extremes!
2026-040.953Current (accumulation zone)
Failure mode

The 2025 top only reached AVIV 1.56 — far short of the 2.5 "top zone" threshold derived from pre-ETF cycles. This is the diminishing extremes problem: post-ETF cycles will likely never see AVIV above 2.0 again because institutional flows dampen the volatility.

Mitigation: treat AVIV > 2.0 as the new "late bull warning" threshold (not 2.5). When AVIV crosses 2.0 + other distribution indicators fire, that's the real top signal now. Don't wait for 2.5.

ConditionReadingScore
Extreme undervaluationAVIV < 0.55+2
Deep accumulation0.55 ≤ AVIV < 0.75+2
Accumulation zone0.75 ≤ AVIV < 1.00+1
Mid bull / hold1.00 ≤ AVIV < 1.500
Late bull / trail stops1.50 ≤ AVIV < 2.50−1
Cycle top zoneAVIV ≥ 2.50−2
Input class: cointime valuation metrics · refresh: 01:00 UTC daily

Halving Regime L2

Days since last halving → regime bucket

Time-based cycle phase. Maps days-since-halving to one of eight phases from early markup through distribution danger to late accumulation. This is pure time-of-cycle context; it's not price-dependent. When the halving regime and on-chain regime agree, conviction is highest.

Why it matters

BTC's supply schedule is the only deterministic structural feature of the asset. Every ~4 years the block subsidy halves, creating a predictable supply shock. Every cycle since 2012 has followed the same phase sequence: markup → distribution → bear → accumulation, anchored to halving day.

The exact phase boundaries (in days post-halving) were fit to the 2012, 2016, and 2020 halving cycles. The 2024 cycle is currently tracking inside the historical envelope for all three phases so far — peak at day 534 matched the 480-600 window, bear started on schedule.

CycleHalvingPeak (day)Bottom (day)
Cycle 12012-11-28day 367 (Dec 2013)day 793 (Jan 2015)
Cycle 22016-07-09day 529 (Dec 2017)day 892 (Dec 2018)
Cycle 32020-05-11day 548 (Nov 2021)day 928 (Nov 2022)
Cycle 42024-04-20day 534 (Oct 2025)projected day ~940-980 (Nov 2026 - Jan 2027)
Failure mode

This is a time-based model — it's right about the window, not the exact date. Real cycle turns can be 30-60 days early or late. And the pattern could break in any single cycle (that's the nature of a 4-point regression).

Mitigation: pair with data-driven signals (Bottom Proximity, Tier 1, AVIV). When the halving regime and on-chain evidence agree, conviction is highest. When they disagree — specifically when data says "bottom" but time says "still early" — wait for data to catch up rather than front-running the clock.

PhaseScore
early markup−1
markup−1
late markup−2
distribution danger−2
early bear0
mid bear+1
late bear+2
accumulation extended+2
Input class: Bitcoin protocol schedule · refresh: daily

Bottom Proximity Composite L2

/cycle · bottom_proximity.pct (0–100%)

A composite score (0–100%) that synthesizes multiple cycle-bottom signals — realized price proximity, MVRV/NUPL levels, drawdown depth, and cohort behavior — into a single "how close are we to a cycle bottom" reading. 0% = euphoric top. 100% = max capitulation confluence. Historical 2022-11-21 reading: 71%. Historical 2025-10-06 ATH reading: single digits.

Why it matters

A single 0-100 number that synthesizes every bottom-relevant signal we track: MVRV ratio, NUPL, Puell Multiple, Supply-in-Profit, drawdown depth, cohort behavior (LTH MVRV, Liveliness), realized price proximity. Each subscore is weighted by its historical reliability at calling cycle lows.

The goal is one-glance orientation. The ±24 gauge tells you the verdict; Bottom Proximity tells you how close we are to the bottom zone on a pure "cheapness/stress" axis. At cycle bottoms the value hits 80-95%. At cycle tops it drops to 5-15%.

DateBottom ProximityZone
2015-01-1494%Max capitulation
2018-12-1589%Bottom zone
2021-11-097%Top zone (distribution)
2022-06-1854%Mid bear — the June false signal (flagged "approaching" not "bottom")
2022-11-2182%Bottom zone
2025-10-066%Top zone (2025 ATH)
2026-04-1434.4%Current (early bear)
Failure mode

As a composite, Bottom Proximity inherits the failure modes of its components. During June 2022 it read 54% — "approaching" but not "bottom zone" — which correctly flagged that confluence wasn't complete. A naive reader could still over-interpret the number.

Mitigation: Bottom Proximity > 65% is the minimum threshold to treat as "approaching bottom." > 80% is required for "in bottom zone." Below 50% is mid-cycle — no bottom call.

Historical forward-return read

The Macro historical-outcomes panel bins prior Bottom Proximity readings and reports what BTC did 7d / 30d / 90d later. Treat those medians as base rates for the current score range, not as a price forecast.

ZoneReadingScore
Deep bull / top zone0–15%−2
Bull / late bull15–35%−1
Neutral / mid-cycle35–50%0
Accumulation approaching50–65%+1
Bottom zone65–80%+1
Max capitulation confluence80–100%+2
Input class: cycle metrics composite · refresh: 01:00 UTC daily

Drawdown From ATH L2

BTC spot vs trailing 2-year high

How far below the 2-year ATH price currently sits. Deeper drawdowns historically precede higher forward returns — not because drawdown itself is bullish, but because it's a cleanest-possible proxy for cycle washout depth.

Why it matters

The simplest possible cycle position metric. Deeper drawdowns historically correlate with higher forward returns — not because drawdown itself is bullish, but because it's the cleanest proxy for "how washed out is the market." Every cycle bottom since 2015 had a drawdown > 70%. Every mid-cycle correction was < 55%.

We use a 2-year trailing high as the ATH anchor to avoid "fake drawdowns" during long bear markets where an old ATH is no longer the relevant reference. This aligns with how most traders think about drawdown intuitively.

CyclePeak → TroughDrawdown
Cycle 1 (2011-13)$32 → $2−94%
Cycle 2 (2013-15)$1,163 → $171−85%
Cycle 3 (2017-18)$19,500 → $3,194−84%
Cycle 4 (2021-22)$69,000 → $15,479−77%
Cycle 5 (2025-26)$124,714 → $74,339−40% (current, in progress)
Failure mode

Mid-cycle corrections can hit −30% to −55% without being cycle bottoms. 2021 had a −55% drawdown in May 2021 that fooled many into thinking the cycle was over — then BTC rallied to $69K in November.

Mitigation: Drawdown is scored +2 only at > 70%. Mid-cycle corrections never hit that threshold. The scoring band is deliberately asymmetric (−1 max near ATH, +2 max at deep drawdown) because shallow drawdowns aren't automatically bearish but deep ones are structurally bullish.

DepthReadingScore
Near highs0–25% below ATH−1
Normal pullback25–40% below0
Deep correction40–55% below+1
Bear market55–70% below+1
Cycle washout> 70% below+2
Input class: BTC daily close store · refresh: 01:00 UTC daily

L3 · On-Chain Stress

Zero-FP Tier 1 Confluence L3

/cycle · tier1_confluence.triggered_count

The "zero false positive" Tier 1 framework — four indicators that have never fired together outside of the 2015, 2018, and 2022 cycle bottoms: MVRV < 1.0, NUPL < 0, Puell Multiple < 0.5, Supply-in-Profit < 50%. The triggered count is how many of the four are currently firing.

Why it matters

The four indicators (MVRV < 1, NUPL < 0, Puell Multiple < 0.5, Supply in Profit < 50%) were selected by exhaustive backtesting: which combination of on-chain signals, when all firing simultaneously, has historically only occurred at cycle bottoms? These four passed the test. Individual triggers happen during corrections; all four simultaneously has only happened at the deepest cycle lows.

"Zero false positive" refers to the all-four-simultaneously confluence requirement. Partial triggers (1-3 of 4) happen throughout mid-cycle corrections and mean nothing by themselves. The framework's entire value proposition is the requirement that confluence be complete before acting.

DateCountWhat it meant
2015-01-144/4Cycle 2 bottom — exact
2018-12-154/4Cycle 3 bottom — exact
2022-06-181/4False signal — only MVRV fired, framework said WAIT
2022-11-214/4Cycle 4 bottom — exact
2026-04-140/4Current — no bottom confluence yet
Failure mode

June 2022 had MVRV briefly cross below 1.0 during the LUNA/3AC cascade at ~$18,500. That was 1/4 Tier 1 — the framework correctly flagged it as "not confluence, wait." Price fell another 19% to $15,476 over the next 5 months before the real 4/4 bottom in November.

Mitigation: the confluence requirement is the mitigation. Never deploy maximum allocation on 1-2 Tier 1 signals. Historically the jump from 2/4 to 4/4 has taken 2-6 weeks — size up gradually as signals trigger, not all at once.

CountReadingScore
0 triggeredNo stress−1
1 triggeredEarly stress0
2 triggeredApproaching bottom+1
3 triggeredBottom zone+2
4 triggeredFull cycle bottom confluence+2
Known false positive

In June 2022, all four triggered briefly during the LUNA/3AC cascade at ~$18.5K — then BTC fell another 19% into the FTX collapse at $15,476. Tier 1 confluence is necessary but not sufficient for the final low. The dashboard surfaces this warning inline on the Tier 1 panel.

Input class: cycle metrics composite · refresh: 01:00 UTC daily

LTH MVRV L3

on-chain analytics feed · market/mvrv_more_155

Market Value / Realized Value for coins held more than 155 days — the long-term holder cohort. Because LTHs bought at much lower prices on average, LTH MVRV is typically well above 1.0 even in neutral regimes. When LTH MVRV drops below 1.0, it means the average long-term holder is underwater — historically only at the deepest capitulation lows.

Why it matters

Long-term holders (coins held > 155 days) are the patient cohort. They rarely spend unless forced. LTH MVRV below 1.0 means even patient holders are underwater on average — historically this has only happened at the deepest capitulation lows. It's the single strongest individual on-chain signal in the framework.

The 155-day threshold comes from long-term-holder research and was formalized in the Cointime Economics framework. See §14 cohort convention for the full derivation.

DateLTH MVRVMeaning
2015-010.55Deep capitulation — all LTHs underwater
2018-120.82Cycle low — most LTHs near breakeven
2021-116.5Cycle top — LTHs at peak profits
2022-110.82Cycle low — confirmed
2025-103.2Cycle top — still strong cohort profits
2026-041.642Current — LTHs still +64% in profit
Failure mode

LTH MVRV can be slow to reflect late-cycle changes — the cohort composition shifts slowly because new LTHs are constantly being created as STH coins age past 155 days. A freshly-minted LTH cohort entering the 155-day threshold at high prices can dilute the reading upward.

Mitigation: read LTH MVRV alongside Liveliness. If LTH MVRV is falling AND Liveliness is falling, LTHs are genuinely hoarding. If LTH MVRV is falling but Liveliness is rising, the drop is from new-LTH dilution, not real stress.

ZoneLTH MVRVScore
Full capitulation (LTHs underwater)< 0.85+2
LTH stress0.85 – 1.00+1
Normal / accumulation1.00 – 2.000
Late bull distribution> 2.00−2
Input class: cohort metrics feed · refresh: 01:00 UTC daily · see 155-day convention

STH MVRV L3

on-chain analytics feed · market/mvrv_less_155

Market Value / Realized Value for coins held less than 155 days — the short-term holder cohort. STHs bought at much more recent prices, so their MVRV swings faster than LTH MVRV. STH MVRV below 1.0 means recent buyers are underwater on average — a classic late-bear-or-correction signal.

Why it matters

Short-term holders (coins held < 155 days) are the reactive cohort. They bought recently, usually during the late stages of a bull market. STH MVRV tracks how underwater or profitable they are on average. STH MVRV < 1.0 happens during every sharp drawdown — not just cycle bottoms — making it a faster-reacting but weaker-confluence signal than LTH MVRV.

We keep it in the framework because it's the single best early-warning signal for "new buyer stress." When STH MVRV drops below 1 for more than 14 days, a local bottom is typically within 4-8 weeks.

DateSTH MVRVOutcome
2018-060.91Mid-bear, still 6 months from bottom
2018-120.68Cycle low
2021-070.94Mid-cycle capitulation, led to +120% rally
2022-110.75Cycle low (with LTH MVRV)
2025-101.28Cycle top
2026-040.918Current — STHs −8% underwater
Failure mode

STH MVRV below 1 is too common to use as a confluence trigger alone. It fires during 30%+ corrections even in the middle of bull markets. Treating it as a buy signal in isolation produces many premature entries.

Mitigation: use STH MVRV as Tier 2 (confirming) rather than Tier 1 (confluence). It supports the case when Tier 1 is firing, but it doesn't cause action alone.

ZoneSTH MVRVScore
Capitulation< 0.85+2
Stress (recent buyers underwater)0.85 – 1.00+1
Normal1.00 – 1.500
Elevated1.50 – 2.00−1
Euphoric> 2.00−2
Input class: cohort metrics feed · refresh: 01:00 UTC daily · see 155-day convention

Liveliness / Vaultedness L3

Cointime Economics · liveliness ratio

Liveliness measures how "active" the total BTC supply is — the ratio of coindays destroyed to coindays created. When liveliness falls, LTHs are hoarding and vaultedness rises (coins aging on-chain). When liveliness rises, LTHs are distributing. Falling liveliness during a drawdown is one of the strongest accumulation signals on-chain.

Why it matters

Liveliness is a Cointime Economics metric that measures how "active" the total BTC supply is. Technically it's the ratio of coindays destroyed to coindays created. In plain English: when long-term holders move their coins, Liveliness rises. When they hoard (let coins sit dormant), Liveliness falls.

Falling Liveliness during a drawdown is one of the strongest accumulation signals available — it means the most patient cohort is not just holding but actively increasing dormancy. Rising Liveliness during a bull run is a top warning — LTHs are distributing.

DateLivelinessDirection
2018-120.58Falling — peak hoarding at bottom
2021-040.73Rising — first top warning
2021-110.79Peak — cycle top
2022-110.56Falling — hoarding peak at bottom
2025-100.71Rising — distribution at top
2026-040.637Neutral/falling (36% vaulted)
Failure mode

Liveliness moves slowly. Changes of 0.02-0.03 per month are normal. It's more useful as a confirmation signal than a trigger. By the time Liveliness has clearly shifted, price has usually moved already.

Mitigation: use Liveliness as a sanity check on other signals. If LTH MVRV is dropping (suggesting accumulation) but Liveliness is rising (suggesting distribution), the two contradict and neither should be acted on.

ConditionLivelinessScore
Deep hoarding< 0.55+2
LTH accumulation0.55 – 0.62+1
Neutral0.62 – 0.700
LTH distribution starting0.70 – 0.78−1
Heavy distribution> 0.78−2
Input class: cointime valuation metrics · refresh: 01:00 UTC daily

Realized Loss L3

on-chain analytics feed · indicators/realized_loss (USD/day)

Daily realized loss in USD — the dollar amount of BTC moving at a loss on-chain. Sustained readings under $25M/day are the capitulation-exhaustion signal: sellers are done, the bid has absorbed the panic. Readings >$1.5B/day are active panic.

Why it matters

Realized Loss measures dollars moving at a loss on-chain each day. It's the capitulation meter. At cycle bottoms, daily realized loss drops to historic lows — not because no one is selling, but because everyone who was going to panic-sell has already done so. The exhaustion reading is the signal.

The < $25M/day threshold was derived from the 2015, 2018, and 2022 cycle bottoms — all three had sustained realized loss below this level in the final weeks before price reversed. Conversely, > $1.5B/day indicates active panic, usually mid-capitulation rather than end.

DateRealized LossState
2015-01$8M/dayExhausted — cycle bottom
2018-12$18M/dayExhausted — cycle bottom
2020-03$2.1B/dayActive panic (COVID crash peak)
2022-06$1.2B/dayLUNA cascade — peak panic, not yet bottom
2022-11$22M/dayExhausted — cycle bottom
2026-04~$180M/dayNormal (current)
Failure mode

Exhaustion is a necessary but not sufficient condition. The 2019 Q2-Q3 period had sustained low realized loss but BTC then dropped another 45% into December. Realized loss exhaustion can happen multiple times during a long bear market.

Mitigation: only score +2 when combined with > 55% drawdown and at least 1 Tier 1 trigger. Exhaustion in isolation is a 0 score.

RegimeUSD/dayScore
Capitulation exhausted< $25M+2
Calm$25M – $100M+1
Normal$100M – $500M0
Stress$500M – $1.5B−1
Active panic> $1.5B−2
Input class: on-chain cohort metrics · refresh: 01:00 UTC daily

US Spot Premium L3

(US spot BTC quote − offshore BTC quote) / offshore BTC quote × 100

Live spread between a US institutional spot quote and an offshore/global spot quote. Sustained positive premium means US institutions are aggressively bidding — one of the cleanest institutional demand signals. Sustained negative premium means offshore / retail is dominating flow.

Why it matters

A US institutional spot venue and offshore/global venues serve different flow cohorts. The price spread between them is the cleanest proxy for US institutional demand versus offshore/retail flow. Sustained positive premium means institutions are aggressively bidding. Sustained negative premium means offshore is dominant and institutions are disengaged or selling.

Post-ETF approval (January 2024), this signal became weaker because IBIT and other ETFs now account for much of US institutional demand — bypassing direct spot-venue flow. We still track it but weight it less than pre-2024 cycles.

DateCB PremiumContext
2020-12+0.45%Peak institutional buying — 2021 bull lift-off
2021-11−0.28%Distribution at cycle top
2022-11+0.12%Institutions bidding the low
2024-01+0.18%ETF launch week — sustained institutional bid
2025-10−0.18%Institutional distribution at top
2026-04−0.007%Current — neutral, just flipped slightly negative
Failure mode

Post-ETF, US institutional demand routes through spot ETFs (IBIT, FBTC) which settle off-exchange. US Spot Premium no longer captures the full institutional signal. In 2024 we saw strong ETF inflows without corresponding US spot premium — the old relationship broke.

Mitigation: read US Spot Premium alongside IBIT Activity Multiplier. When both agree, institutional flow is confirmed. When they disagree, IBIT is now the more reliable signal.

ConditionPremiumScore
Sustained institutional buying> +0.10%+2
Mild premium+0.02% to +0.10%+1
Neutral−0.02% to +0.02%0
Mild discount−0.10% to −0.02%−1
Offshore-dominated flow< −0.10%−2
Input class: US/offshore BTC spot quotes · refresh: every 5 minutes

IBIT Activity Multiplier L3

IBIT daily volume / 30-day SMA

iShares Bitcoin Trust (IBIT) is the world's largest spot BTC ETF and the cleanest proxy for US institutional spot demand. The multiplier is today's volume divided by the 30-day average. Surges (>2x) happen at both panic bottoms and FOMO tops — context matters.

Why it matters

IBIT (iShares Bitcoin Trust) is the largest US spot BTC ETF, typically the top 1-2 in daily volume. Post-January 2024 it became the cleanest single proxy for US institutional spot demand — surpassing the information content of US spot premium.

The "activity multiplier" is today's IBIT volume divided by the 30-day SMA. A reading of 2.0× means volume is twice normal — either FOMO buying (tops) or panic selling (bottoms). The metric is directionally ambiguous alone; it requires L2 context to interpret.

DateMultiplierContext
2024-01-11N/AETF launch day — no 30d history yet
2024-032.4×First ATH breakout — FOMO surge
2024-080.6×Mid-cycle lull
2025-10-063.1×Cycle top — peak FOMO volume
2026-041.09×Current — slightly elevated
Failure mode

Activity surges happen at BOTH tops (FOMO) and bottoms (panic buying). Without L2 context, the signal is directionally meaningless. In 2025-10 the 3.1× surge was a clear top signal; in a hypothetical future 2026-Q4 a 3.1× surge during capitulation would be a bottom signal.

Mitigation: scored asymmetrically (−1 max, +2 max) and only read in combination with L2 halving regime. Bullish interpretation requires the surge to coincide with bear/accumulation phase.

ConditionMultiplierScore
Huge surge (FOMO or panic)> 2.0x+2
Elevated activity1.3x – 2.0x+1
Normal0.7x – 1.3x0
Muted / disengaged< 0.7x−1
Input class: spot ETF market activity feed · refresh: 01:20 UTC daily

LTH SOPR L3

on-chain analytics feed · indicators/sopr_more_155

Spent Output Profit Ratio for coins held >155 days. Measures the average profit multiple on long-term holder coins that are being spent. SOPR = 1.0 is breakeven. Below 1.0 means LTHs are realizing losses — historically extremely rare and only at cycle lows.

Why it matters

SOPR (Spent Output Profit Ratio) = price when spent / price when created. For long-term holders (> 155 days), SOPR measures the average profit multiple when LTHs do decide to sell. LTH SOPR < 1.0 means LTHs are spending at a loss — historically extremely rare and only seen at cycle lows.

LTH SOPR > 1.5 means LTHs are taking > 50% profits on average — this is the distribution signal. It's a cleaner top signal than STH SOPR because LTHs need strong motivation to spend at all (tax, rebalancing, profit-taking) and the distribution decision is more deliberate.

DateLTH SOPRMeaning
2015-010.76LTHs at a loss — cycle bottom
2018-120.88LTHs at a loss — cycle bottom
2021-042.1First 2021 top
2021-112.8Cycle top — heavy distribution
2022-110.78Cycle bottom — LTHs spending at loss
2025-101.58Cycle top (diminishing extreme)
2026-041.228Current — LTHs in normal profit zone
Failure mode

LTH SOPR has naturally shifted upward post-2020 because the LTH cost basis has risen with each cycle. Pre-2020 "bottom" readings were ~0.76; 2022 bottom was 0.88. The 2026 bottom may not drop below 0.95. The absolute threshold needs periodic recalibration.

Mitigation: we track the rate of decline as much as the absolute level. A 20%+ drop in LTH SOPR within 30 days is a stronger signal than the absolute value at any given day.

ConditionLTH SOPRScore
LTHs spending at loss< 0.80+2
Stress0.80 – 1.00+1
Normal1.00 – 1.300
Elevated profit-taking1.30 – 1.60−1
Heavy distribution> 1.60−2
Input class: on-chain cohort metrics · refresh: 01:00 UTC daily

L4 · Execution Timing

BTC Funding (Annualized) L4

BTC perpetual funding × 8760

Live BTC perpetual funding rate, annualized. Deeply negative funding means shorts are paying longs a massive premium — the crowd is positioned bearish, which is a contrarian bottom signal. Deeply positive funding means longs are paying shorts — overheated, crowded-long top warning.

Why it matters

Perpetual futures funding is the most sensitive crowded-positioning gauge in crypto. When longs dominate, funding goes positive and longs pay shorts. When shorts dominate, funding goes negative and shorts pay longs. Extreme readings (> ±54% annualized) are almost always resolved within 1-4 weeks by a liquidation event — which is exactly when the opposite-side trade has the highest expected value.

We use a high-liquidity on-chain perpetual venue as the primary feed because it settles hourly, updates faster than the legacy 8-hour CEX cycle, and has cleaner venue-level flow than broad exchange aggregates.

DateFunding (ann.)Outcome
2021-04+420%Extreme longs crowded — first top followed within 2 weeks
2021-11+180%Cycle top
2022-06+45%LUNA cascade — still positive (premature bottom)
2022-11−190%Extreme shorts crowded — cycle bottom within days
2025-10+180%Cycle top confirmation
2026-04−257%Current — extreme shorts crowded (contrarian signal)
Failure mode

Funding can stay extreme in one direction for 2-3 months during strong trends. In 2020 Q4, funding stayed deeply positive for 10 weeks while BTC continued rallying from $12K to $28K. Contrarian shorts based on "funding too high" would have been annihilated.

Mitigation: funding is a confirming signal, not a trigger. Require L2 + L3 support before treating extreme funding as actionable. Extreme negative funding + Tier 1 at 3/4 = bottom signal. Extreme negative funding alone = wait.

ConditionAnnualizedScore
Extreme crowded short< −54%+2
Crowded short−54% to −15%+1
Neutral−15% to +15%0
Crowded long+15% to +54%−1
Extreme crowded long> +54%−2
Input class: BTC perpetual funding feed · refresh: every 5 minutes

DVOL L4

BTC implied-volatility index · live

BTC's implied-volatility index — the "crypto VIX". High readings indicate panic and are often bottom signals; extreme low readings indicate complacency and are a warning in any phase.

Why it matters

DVOL is a BTC implied-volatility index — essentially the "crypto VIX." It measures the market's expected 30-day volatility. Low DVOL (< 35) means complacency — the market isn't pricing any near-term drama. High DVOL (> 90) means panic — traders are paying extreme premiums for protection.

Historically, sustained high DVOL coincides with cycle lows (panic buying is a precursor to reversal) and sustained low DVOL precedes tops (complacency means no one is hedged). It's a lagging contrarian indicator — useful when combined with L3 confluence.

DateDVOLRegime
2020-03180COVID crash panic — 10× forward return
2021-1078Late bull — elevated but not panic
2022-0694LUNA collapse — peak fear
2022-1187Cycle bottom — sustained high
2024-Q232Post-halving calm
2025-1044Near cycle top — low (complacency)
2026-0444.1Current — still mild
Failure mode

DVOL spiked multiple times during the 2022 bear without being the final bottom (June 2022 hit 94 — correct fear reading but premature bottom). DVOL can also stay low for extended periods without a top imminent.

Mitigation: score asymmetric (−1 max, +2 max) because high DVOL is a stronger bottom signal than low DVOL is a top signal. Complacency can last; panic can't.

ConditionDVOLScore
Extreme panic> 90+2
Elevated fear70 – 90+1
Normal35 – 700
Complacency warning< 35−1
Input class: BTC options volatility feed · refresh: every 5 minutes

IV Term Structure L4

Front-month vs 90-day BTC options IV

Shape of the implied volatility term structure. Backwardation (front IV > back IV) means immediate panic is priced in — historically a bottom-coincident condition. Steep contango (back IV much higher) is a blow-off top warning.

Why it matters

The shape of the implied volatility curve across expiries — front-month vs 90-day — reveals where traders expect the next move to come from. Normal contango (back-month > front-month) means no immediate concern. Backwardation (front-month > back-month) means immediate panic is priced in, usually bottom-coincident. Steep contango (back >> front) means traders expect continued calm but long-dated uncertainty — often a top warning.

Backwardation in particular is one of the highest-signal events in the framework. It's rare, it's bottom-coincident, and it typically resolves within days of the actual low.

DateShapeContext
2020-03Deep backwardationCOVID crash — bottom-coincident
2022-05Flat → brief backLUNA cascade — premature panic
2022-11BackwardationFTX collapse — exact bottom
2021-10Steep contangoLate bull — top warning
2025-09Steep contangoPre-cycle top
2026-04FlatCurrent — neutral
Failure mode

Backwardation can be brief (hours to days) and easy to miss if you only check daily. The May 2022 LUNA event had intraday backwardation that closed back in contango — a premature signal.

Mitigation: require sustained backwardation (> 24 hours) combined with Tier 1 activity. Pair with realized loss exhaustion to filter out short-lived panic events.

ShapeScore
Backwardation (panic)+2
Flat0
Normal contango0
Steep contango (top warning)−2
Input class: BTC options volatility feed · refresh: every 5 minutes

25Δ Risk-Reversal Skew (Proxy) L4

Front-month 25Δ call IV − 25Δ put IV

Approximation of the 25-delta risk reversal on front-month options. Positive skew = calls more expensive = bullish positioning dominant (danger at extremes). Negative skew = puts more expensive = bearish hedging dominant (bottom signal at extremes).

Why it matters

The 25-delta risk reversal is the options market's directional bet. Positive skew means calls cost more than puts (bullish positioning dominant). Negative skew means puts cost more (bearish hedging dominant). Extreme readings on either side are contrarian — extreme positive skew = FOMO peak, extreme negative = maximum fear.

We use a proxy derived from front-month 25-delta IV rather than the strict risk-reversal to keep the compute simple and the fetch fast. The signal quality is equivalent for regime detection.

DateSkewState
2020-03−22COVID crash — extreme put demand
2021-04+16Peak FOMO — first top 2 weeks later
2022-06−14LUNA — fear but not cycle bottom
2022-11−12Cycle bottom — heavy put demand
2025-10+14Cycle top — extreme call demand
2026-04+0.5Current — neutral
Failure mode

Skew can flip rapidly (within hours) during news events. A single large trade can move the front-month skew meaningfully, creating false readings. The feed can also lean toward Western institutional flow, while Asian options desks may have different positioning.

Mitigation: read skew on a 3-day average, not daily. Treat extreme readings as confirming signals, never as sole triggers.

ConditionSkewScore
Extreme bullish positioning> +10−2
Bullish bias+3 to +10−1
Neutral−6 to +30
Hedging / late bear−15 to −6+1
Extreme fear< −15+2
Input class: BTC options volatility feed · refresh: every 5 minutes

OI / Market Cap L4

(BTC futures OI × price) / BTC market cap × 100

Aggregate BTC futures open interest as a percentage of market cap — the leverage regime. Historically, >3.5% has been the "overleveraged, large liquidation risk" zone. <1.5% is cleanly deleveraged, often after a washout, and constructive.

Why it matters

Total BTC futures open interest divided by total market cap. This is the leverage regime gauge. Low readings (< 1.5%) mean the market is deleveraged — usually after a washout — and structurally constructive. High readings (> 3.5%) mean the market is over-leveraged and any small move will trigger cascading liquidations. Historical cycle tops all had OI/Mcap > 3.5%; historical cycle bottoms all had it < 1.8%.

This signal is faster than funding because it measures total leverage rather than the directional bet. It doesn't care who's long or short — it cares how big the overall derivative stack is relative to spot.

DateOI / McapRegime
2020-121.4%Deleveraged post-COVID — launch pad for 2021 bull
2021-043.8%First top — leverage saturated
2021-114.1%Cycle top
2022-063.8%LUNA pre-cascade — over-leveraged, snapped
2022-111.6%Cycle bottom — deleveraged
2025-103.8%Cycle top
2026-042.32%Current — mid-range
Failure mode

The threshold has drifted upward as BTC's financialization has increased. Pre-2020 cycle tops had OI/Mcap around 2.5-3.0%. 2021 and 2025 tops required 3.5-4%. Each cycle the "dangerous" level has risen as institutional leverage products (CME futures, ETF options) add new supply.

Mitigation: focus on relative change rather than absolute level. A 40% increase in OI/Mcap over 30 days is a warning regardless of absolute level. At > 3.5% current readings, that's danger regardless of history.

RegimeOI/McapScore
Deleveraged / washed out< 1.5%+2
Neutral1.5% – 2.5%0
Elevated2.5% – 3.5%−1
Dangerous> 3.5%−2
Input class: aggregated BTC futures open interest · refresh: every 5 minutes

09How the Market Heat thermometer works

The heat thermometer is a separate composite from the ±24 gauge. Where the gauge outputs a verdict, the thermometer outputs a 0-100 temperature. They measure different things. This section explains what it is, what it blends, and when it diverges from the main gauge.

What the thermometer measures

The thermometer is a valuation + positioning state, not a directional signal. It answers the question "how stretched is the market right now?" on a scale from frozen (0) to overheated (100). The gauge answers "is the setup bullish or bearish?" The two are related but not identical.

Think of it this way: the gauge is a verdict, the thermometer is a pressure reading. A neutral gauge (WAIT) can coexist with a very high or very low thermometer reading — the gauge is waiting for confluence, but the thermometer is already telling you the market is tightly wound one way or the other.

Components and weights

The thermometer blends four subscores, each normalized 0-100:

  • Valuation (35% weight) — MVRV ratio, NUPL, Puell Multiple, Supply-in-Profit. Maps "how far above realized price are we?"
  • Momentum (25% weight) — BTC vs 20w/50w/100w/200w MAs, weekly RSI, 30d price change. Maps "how stretched is trend?"
  • Derivatives (25% weight) — annualized funding rate, OI/market-cap ratio, 25Δ skew. Maps "how leveraged is positioning?"
  • Activity (15% weight) — active addresses, transaction volume, realized cap velocity, US spot premium. Maps "how engaged is the user base?"

Reading the zones

RangeZoneWhat it means
0 - 20CapitulationEverything cold. Valuation at extremes, no leverage, no activity, LTHs hoarding. Historical: 2015-01, 2018-12, 2022-11 all hit 5-15.
20 - 40CoolRecovery phase. Early accumulation. Weak momentum but improving. Low derivatives risk.
40 - 60NeutralMid-cycle operation. No extremes in either direction. 2024 post-halving ranged here.
60 - 80WarmMomentum stretched, valuation elevated, leverage building. Late bull phase.
80 - 100OverheatDistribution risk. 2021-11 hit 88, 2025-10 hit 79. Historical tops cluster here.

When the thermometer diverges from the gauge

Divergences are signal, not noise. The two most common patterns:

Warm thermometer + MILD BUY gauge

The market is stretched but indicators disagree on direction. Usually means momentum and derivatives are frothy while on-chain hasn't confirmed distribution yet. Read: don't add new longs, trail stops on existing. The thermometer is warning about a pullback the gauge hasn't seen yet.

Cool thermometer + WAIT gauge

The market is cold but the framework isn't calling a bottom. This is the classic "early is indistinguishable from wrong" zone. Valuation is attractive, derivatives are clean, but Tier 1 hasn't triggered and AVIV hasn't hit accumulation territory. Read: stay patient. The thermometer is showing the setup is building, but the gauge needs evidence of actual cohort stress before it signals buy.

Use case: confirmation, not replacement

The thermometer is best used as a gut-check on the gauge. If the gauge says STRONG BUY and the thermometer is at 12, both signals agree — maximum conviction. If the gauge says STRONG BUY and the thermometer is at 45, the framework sees confluence but the market isn't actually at a capitulation extreme — treat it as a softer buy. The thermometer's job is to tell you whether the verdict has historical precedent or is being driven by one unusual layer.

09bCryptoWatch Desk — pre-trade workspace

The Desk is a pre-trade decision-support surface, not a signal feed. You don't get pinged when a setup triggers; you sit down at the Desk when you're ready to trade and the page shows you what the engine sees right now across multiple personas and risk profiles. Lives at /desk.

What Desk is and why

Cards default to BTC, ETH, SOL, HYPE plus up to 4 user-added tickers (saved in your browser's localStorage). Cards refresh every 60 seconds (server cache); WebSocket-driven indicators (per-coin liquidations) update in near-real-time.

The page is curation, not auto-execution. The engine generates up to 10 candidate setups per ticker per render — you decide which (if any) to take, and the system grades only the ones you commit to via the pin button.

Reading a card

Each card has three regions:

  • Header — ticker, current price, regime tag (TREND-UP/DOWN/RANGE/CHOP/EVENT-RISK), killzone tag (Asia/London/NY-AM/NY-PM), a neutral Shield N/A compatibility label, and an ALIGNED ribbon if all directional personas agree.
  • Indicator grid (left) — ten tiles: funding rate + z-score, OI notional + 4-hour delta, liquidations 1h/24h, macro-calendar status, HTF bias, ATR%, CVD 4h, VWAP distance, options skew (BTC only — 25Δ skew with regime label), and 24h liquidation clusters (top long-cluster below price + top short-cluster above price with USD notional).
  • Setup grid (right) — up to 10 cells: 3 directional personas × 3 risk profiles + 1 quant persona (or 2 on BTC/ETH when stat-arb fires).

Click "why" on any setup to expand the confluence drawer — full bullet list of the score components. The card footer shows a per-card track record (last 5 grades + winrate) with a "See all →" link to the dedicated track record page.

The 10 cells

Personas map to trading horizon and timeframe:

  • SCALP — 5-minute candles, 2-hour horizon. Uses VWAP + 5m EMA21 + 5m swing levels.
  • INTRADAY — 1-hour candles, 12-hour horizon. Uses 1h EMA21/50 + 1h swing levels.
  • SWING — 1-day candles, 7-day horizon. Uses 1d EMA21/50 + 1d swing levels.
  • QUANT — multi-timeframe strategies. Funding-harvest on every ticker; stat-arb on BTC/ETH only (delta-flat pair trade).

Profiles tune entry mechanics and risk per directional persona:

  • CONSERVATIVE — entry on pullback to value, tighter stop, smaller TP multiples.
  • MODERATE — entry near current price, balanced R:R.
  • AGGRESSIVE — breakout entry, wider stop, chases trends.

Each non-quant cell shows direction (LONG/SHORT/NO-TRADE), entry, stop loss, take profits (up to 3), blended R:R, confluence score, and invalidation conditions. Quant cells use a different schema (strategy name, headline, rationale) since they don't think in entry/SL/TP.

ALIGNED ribbon

A gold ribbon with glow appears at the top of the card when all 3 directional personas (scalp/intraday/swing) agree on the same direction with confluence ≥7. Rare-but-powerful signal — multi-timeframe structure stacking with strong confluence on every leg. Server computes; cards just render.

OBSERVATION ONLY

A blue banner appears when the ticker has fewer than 30 daily candles available (typically brand-new HL listings). Indicator tiles still render; setup cells return NO-TRADE because the engine doesn't have enough history for the regime classifier or swing rules to be trustworthy. The page shows you what the indicators say but explicitly declines to call setups.

Pinning a setup

Click the pin button on any cell to commit:

"I'm taking this trade now. Grade me."

What happens behind the scenes:

  1. The setup snapshot (entry, SL, TP, regime, composite score, timestamp) is hashed and written to the Accountability Ledger as a desk_setup row.
  2. The resolver walks forward candle-by-candle (5m for scalp, 1h for intraday, 1d for swing) and grades on first-touched-wins:
    • SL hit (any low ≤ SL for LONG, any high ≥ SL for SHORT) → LOSS.
    • TP_n hit → WIN with that R achieved.
    • Same-bar tie (both SL and TP touched in the same candle) → SL wins (assume worse outcome since intra-bar order is unknown).
    • Neither hit by the persona's validity window → EXPIRED.
  3. Result becomes part of your track record.

Pin is a public commitment — the ledger's hash chain prevents retroactive edits. Pinning a setup you don't actually take inflates your apparent winrate; only pin trades you intend to enter.

Validity windows

Each pin auto-expires after a persona-specific window. Resolver checks for SL/TP hits within this window; un-touched pins resolve EXPIRED.

PersonaProfileWindow
scalp(any)2 hours
intraday(any)12 hours
swing(any)7 days
quantfunding-harvest3 days
quantstat-arb10 days

Older Sprint-2 pins from before April 25, 2026 used a flat 24-hour window for non-scalp pins (a bug). Those have been retroactively corrected via a database migration that preserves the ledger's hash-chain integrity.

Track Record page

/track-record/desk surfaces every pinned desk_setup with:

  • Aggregate strip: total / winrate / avg R / expectancy / open count.
  • By Persona breakdown: which trading style is paying you.
  • By Profile breakdown: which risk profile is paying you.
  • Filters: ticker, persona, profile (URL params, shareable).
  • Paginated table: every pin with date, status, R achieved, max drawdown.

The "See all →" arrow on each Desk card lands here pre-filtered to that ticker.

Signal inputs

  • Candles: liquid spot/perp candle feeds for BTC/ETH/SOL/most majors; HYPE uses a dedicated venue snapshot because it is not listed everywhere. 30-second cache.
  • Funding rate: on-chain metrics /funding (derivatives-analytics-aggregated, hourly refresh).
  • Funding z-score: 7-day rolling z from local desk_funding_history table (hourly cron writes one observation per ticker). Falls back to cross-sectional z across all 230 coins for the first 24 hours after deploy.
  • Open interest: derivatives analytics per-exchange-aggregated for BTC; per-coin oi_usd from /funding for ETH/SOL/HYPE.
  • Liquidations: venue trade stream filtered to liquidation fills for desk tickers; 24-hour in-memory ring buffer; renders read with no HTTP. The derivatives analytics feed remains the input for non-desk tickers.
  • Macro calendar: the previous external catalyst feed is retired. Calendar state is currently unavailable, so Desk fails closed to EVENT-RISK and NO-TRADE instead of assuming the next event is safely distant.
  • Manipulation Shield: retired 2026-07-15. The response field remains as NOT_APPLICABLE for client compatibility, contributes no confluence points, and renders as Shield N/A.

Known gaps

Things the Desk doesn't yet do, in priority order:

  • Setup-age tracking. You can't see how long a setup has been triggering before you pin. A scalp showing for 90 minutes already has only 30 minutes of validity left after pin. (Sprint 3d.)
  • Entry-zone drift indicator. If price has moved past entry while you were deciding, the card doesn't tell you. Pinning a stale setup grades as if you entered at the original entry — inflates apparent winrate. (Sprint 3d.)
  • Pin-time entry-zone validation. Server doesn't reject pins where price has drifted past the zone. (Sprint 3d.)
  • NO-TRADE pin grading. If you pin a NO-TRADE cell ("I'm declining this setup"), it just expires — we don't grade the inverse outcome ("would the trade have worked if you'd taken it"). No scheduled date; needs an inverse-setup model.
  • Track record time-series + heatmap. /track-record/desk shows aggregate stats but no winrate trend over time or per-ticker × persona heatmap. Promotes when 100+ resolved pins exist.

The pin-rejection log (Sprint 3e)

Every time the server returns HTTP 422 for a stale-pin attempt, it writes a row to desk_setup_rejection capturing the would-be pin payload (asset, persona, profile, direction, original entry/SL/TP), the live price at the moment of rejection, and the drift in ATR units that triggered the reject. Nothing about the rejection is hidden from the ledger — the attempt is preserved, just not as a billable pin.

Rejections grade chase-style: the resolver later treats each rejection as if you had market-entered at the live price (the price you would have hit if you'd chased the setup), not the original entry which was already passed. This answers a different question than the pin ledger: "if I'd chased this setup instead of pinning it cleanly, would it have worked anyway?"

Why not grade limit-at-original-entry? Because it's degenerate by construction. The 422 fires precisely when price has drifted past entry by more than the persona threshold — so a hypothetical limit at the original entry would never fill. Every rejection would grade "no fill", which answers nothing. Chase-style is the only honest counterfactual.

Aggregate rejection counts and would-be win-rates per (asset, persona) surface on /track-record/desk in the "Rejected pins" panel above the existing pin table. If chase-style winrate is materially below pin winrate for a given persona, the threshold is doing its job (rejecting the trades that would've lost). If it's similar or higher, the threshold is too tight and you're leaving signal on the floor.

10Reading cycle patterns

BTC's 4-year halving cycle has been the most predictive structural rhythm in the asset's history. This section explains the rhythm, the typical phase durations, the diminishing extremes thesis, and how to spot which phase you're currently in.

The 4-phase rhythm

Every halving cycle since 2012 has followed the same structural sequence, though the amplitudes have changed. A full cycle is ~1,460 days (4 years) post-halving, divided into:

PhaseDurationTypical days post-halvingCharacteristics
Markup (early + main) ~500 days 0 - 500 Trend-following bull. Price grinds higher. MA Stack fills to 4/4. AVIV climbs from ~1.0 to ~2.0. Funding mildly positive throughout. Volatility expansion.
Distribution danger 60 - 120 days 480 - 600 The top window. AVIV crosses 2.5. NUPL crosses 0.55. LTH SOPR climbs above 1.5. Funding gets stretched. MA Stack locked at 4/4. Historical tops always occur inside this window (Dec 2017 = day 558, Apr 2021 = day 367, Nov 2021 = day 576, Oct 2025 = day 547).
Early + mid bear 300 - 450 days 560 - 900 Long grind lower. Drawdown deepens from −30% to −60%. MA Stack drops to 2/4 or 1/4. AVIV falls to 1.0-1.5. Funding stays mildly positive or neutral for most of this phase (the classic "hope" rallies).
Late bear + accumulation 250 - 400 days 900 - 1200 Final capitulation window. MA Stack 0/4 or 1/4. AVIV < 0.80. Tier 1 starts triggering. Drawdown peaks at >60%. Funding goes deeply negative at the final low. Historical bottoms (Jan 2015 day 974, Dec 2018 day 952, Nov 2022 day 938) all fell in the 930-980 day window.
Pre-halving accumulation 200 - 260 days 1200 - 1460 Base-building into the next halving. Price recovers 2-3x from the low. MA Stack rebuilds to 2/4 or 3/4. Institutional accumulation quietly begins. Retail is still disinterested. Best risk/reward zone.

The diminishing extremes thesis

Each successive cycle has had shallower extremes than the last. This is not a bug — it's maturation. Lower volatility at cycle turns is what institutional adoption looks like.

CycleDrawdown from ATHPeak MVRVBottom MVRVPeak NUPL
2011-2015−87%5.80.500.75
2015-2018−84%4.50.740.71
2018-2022−77%3.90.780.66
2022-2025−40% (est.)~2.4~0.90 (est. if cycle holds)~0.56

Notice the consistency: each peak MVRV is ~60-70% of the previous cycle's peak. Each drawdown is ~7-10 percentage points shallower. This is why the framework uses post-ETF thresholds (Tier 1 fires at MVRV < 1.0, not < 0.75 like pre-2022 backtests). The thresholds are calibrated to this decay curve.

The implication for traders: you will never again see 2015 or 2018 style extremes. Waiting for MVRV < 0.80 before deploying means you miss the bottom entirely. The framework's job is to calibrate what "extreme" means in the current regime, not the 2015 regime.

Spotting which phase you're in

Three fast reads:

  1. Days post-halving — open the Halving Regime panel. Time alone puts you in a ±3 month window.
  2. MA Stack score — 4/4 = markup/distribution. 0/4 = late bear. 1-2/4 = early bear or early markup. 3/4 = mid bull.
  3. AVIV Ratio — >2.5 = distribution. 1.5-2.5 = bull. 1.0-1.5 = mid. 0.75-1.0 = accumulation. <0.75 = deep value.

When all three agree on a phase, you know where you are. When they disagree, check the Halving regime calendar — time-based context usually wins in the disagreement (history teaches that cycle timing is more reliable than cycle magnitude).

11Predicting the next bottom

The framework can't tell you the exact bottom price or day. It can tell you when the conditions match historical bottom setups so precisely that acting becomes defensible. This section translates the framework into a forward-looking checklist.

Timing projection

The next cycle bottom, projected purely from the halving calendar:

  • Last halving: April 20, 2024
  • Historical bottom window: day 930-980 post-halving
  • Projected bottom dates: November 2026 - January 2027

This is a time window, not a date. The real bottom could arrive anywhere in this 90-day range, and in exceptional cycles could be 2-3 months early or late. Don't anchor to a single date — anchor to the window.

Checklist: what needs to be true at the real bottom

When all of these are simultaneously true, the framework will read STRONG BUY (+16 to +20). This has only happened three times in BTC's history (2015-01, 2018-12, 2022-11). A fourth occurrence is the target.

ConditionThresholdWhy it matters
L2 Halving regime"late bear" or "accumulation extended"Time-based context. Puts us in the 900+ day post-halving window.
L2 MA Stack0/4 or 1/4Price trading below all long-term MAs. Technical regime confirmed bear.
L2 AVIV Ratio< 0.85Valuation in historical accumulation territory.
L2 Drawdown from ATH> 55%Cycle washout confirmed.
L3 Tier 1 confluence3/4 or 4/4 triggeredMVRV < 1, NUPL < 0, Puell < 0.5, SIP < 50% all firing together. The single most reliable bottom signal.
L3 LTH MVRV< 1.0Even the patient cohort is underwater. Historically rare.
L3 Realized Loss< $50M/day sustainedCapitulation exhausted. Sellers gone.
L3 Livelinessfalling, < 0.62LTHs hoarding, not distributing.
L4 BTC Funding< −54% annualizedShorts crowded. Contrarian long setup in place.
L4 DVOL> 70Fear priced in.
L4 IV term structurebackwardationImmediate panic. Historical: every cycle low had brief backwardation.
L1 MacroNOT hostile (M2 not contracting)Macro permission for crypto-native bull setup.

What early warning looks like

You won't see all 12 conditions trigger at once. The final low forms over 4-8 weeks, with indicators filling in one by one. The early warning sequence, in historical order:

  1. Months out: AVIV drops below 1.0. MA Stack drops to 2/4 or lower. Drawdown passes −50%. Halving regime enters "late bear."
  2. Weeks out: Tier 1 starts firing one signal at a time. Usually MVRV < 1 first (fastest to trigger), then NUPL < 0, then SIP < 50%, then Puell < 0.5 last (miner capitulation is always last).
  3. Days out: Funding goes deeply negative. DVOL spikes. 25Δ skew goes negative. IV term briefly backwardates. L4 layer goes from +2 to +6 in a single week.
  4. At the bottom: Tier 1 4/4 triggered simultaneously with L4 at max bullish confluence. Composite gauge hits +17 or higher. Duration: often 3-7 days of extreme confluence before price turns.

What to do in each phase

Months out (first signal)

Action: Zone A tranche only (10-15% of planned allocation). Don't chase. Set alerts on Tier 1 indicators.

Weeks out (Tier 1 hits 2/4)

Action: Zone B tranche (20-25% of planned allocation). Start scaling. Verify L4 isn't fighting — if funding is still positive, wait.

Days out (Tier 1 hits 3/4, L4 aligned)

Action: Zone C + D tranches (40-50% of planned allocation). High conviction. This is the window where the framework has historically called the bottom within ±5% of price.

At the bottom (Tier 1 4/4 + STRONG BUY)

Action: Zone E tranche (remaining 15-25%). Close out. Set 18-month hold. Do not try to trade the bottom — try to capture it.

The knife-catching warning

Tier 1 at 1/4 or 2/4 is not a buy signal. June 2022 had 1/4 briefly at $18,500 and price fell another 19% to $15,476. Never deploy Zone C or deeper until Tier 1 hits 3/4. The framework's entire value proposition is the confluence requirement — respect it.

12Predicting the next top

Tops are harder than bottoms because distribution is slow and grinding, not a single capitulation event. By the time the top is obvious, 20-30% of the drawdown has already happened. This section explains what to watch for, when to start selling, and how to pace distribution.

Timing projection

The next cycle top, projected from the halving calendar:

  • Last halving: April 20, 2024
  • Historical top window: day 480-560 post-halving
  • Projected top dates: August - October 2025
  • Actual top (in this cycle): October 6, 2025 at $124,714 — inside the projected window at day 534

The 2025 top validated the framework's timing model. Day 534 post-halving matched the historical 480-560 window. All prior cycle tops (Dec 2017 = day 558, Nov 2021 = day 576) also fell in this window. This is one of the few deterministic patterns in crypto — use it.

Checklist: what needs to be true at a real top

ConditionThresholdWhy it matters
L2 Halving regime"late_markup" or "distribution_danger"Time puts us in day 480-600 post-halving window.
L2 MA Stack4/4 for > 30 daysFull bull regime locked in. All long-term MAs below price.
L2 AVIV Ratio> 2.0 (warning), > 2.5 (confirmed)Post-ETF top zone begins at 2.0 (was 3.5+ pre-2022).
L3 NUPL> 0.55Aggregate unrealized profit in distribution zone.
L3 LTH SOPR> 1.5Long-term holders spending at >50% profit margins. Distribution confirmed.
L3 Livelinessrising, > 0.70LTH supply moving — classic top signal.
L3 US Spot Premiumnegative for > 14 daysUS institutions selling into retail demand. Happens at every top.
L4 BTC Funding> +54% annualized for > 14 daysLongs crowded. Leverage overextended.
L4 OI / Market Cap> 3.5%Derivatives leverage in danger zone.
L4 25Δ skew> +10Options positioning heavily bullish. Every dollar of upside already priced.

How distribution unfolds

Tops don't happen in a single day. They unfold over 4-12 weeks as one indicator at a time moves into distribution territory. The sequence is remarkably consistent:

  1. 6-8 weeks before top: AVIV crosses 2.0. Funding starts printing persistently positive. LTH SOPR climbs above 1.3. First MILD SELL readings on the gauge.
  2. 3-4 weeks before top: NUPL crosses 0.55. MA Stack 4/4 locked. US spot premium flips negative. Framework goes to SELL.
  3. 1-2 weeks before top: LTH SOPR crosses 1.5 (heavy distribution confirmed). Funding gets stretched above +100% annualized. OI/Mcap climbs above 3.5%. Framework approaches STRONG SELL.
  4. Final 3-7 days: 25Δ skew goes extreme positive. DVOL low (complacency). Halving regime clock reads "distribution danger." All indicators at or near max bearish scores. STRONG SELL confirmed.

How to sell — the distribution playbook

Tranche 1 (20% of holdings): at MILD SELL gauge reading

First warning. AVIV > 2.0, NUPL climbing toward 0.55. You're almost certainly early, but that's fine — early distribution is cheap insurance.

Tranche 2 (30% of holdings): at SELL gauge reading

Confluence building. NUPL > 0.55, Funding persistent positive, US spot premium negative. Distribution confirmed. Size down hard.

Tranche 3 (40% of holdings): at STRONG SELL gauge reading

Final exit zone. AVIV > 2.5, LTH SOPR > 1.5, OI/Mcap > 3.5%. Every indicator screaming distribution. Reduce to a residual 10% hold for the ride down (optional — most traders should exit completely).

Why tranches, not a single exit

Nobody sells the top. The goal is to exit most of the position before the drawdown gets serious. Historically the first 30% of a cycle top's drawdown happens in the first 3-4 weeks. Scaling out over 6-8 weeks captures ~70-85% of the peak value even if you can't time the exact day. That's the game. Trying to sell the exact top is how people end up holding the whole drawdown.

13Case studies

Four full post-mortems: the 2022 cycle bottom with its June false signal, the 2018 bottom, the 2015 bottom, and the 2025 top. Each one shows the framework's reading evolving through the turn so you can see what confluence looks like in practice.

Case 1 · 2022 bottom (with the June false signal)

The 2022 cycle bottom is the single most instructive case in BTC history because it included a clear false signal 5 months before the real bottom. The framework's confluence requirement is what separated them.

June 2022 — the false signal

DatePriceSignal state
Jun 18, 2022 $18,500 MVRV briefly crossed < 1.0 during LUNA/3AC cascade.
NUPL −0.06 (not yet < −0.15 threshold).
Puell Multiple 0.82 (above 0.50 threshold).
SIP 52% (above 50% threshold).
Tier 1 count: 1 of 4.
MA Stack 1/4. Funding slightly negative.
Framework verdict: +3 MILD BUY (not confluence)

The temptation: "MVRV is below 1! Historical bottom signal!" The framework: "Only 1 of 4 Tier 1 signals fired. Not confluence. Wait."

What happened next: Price fell from $18,500 to $15,476 by November 21. Another −17% for anyone who bought the false signal.

November 2022 — the real bottom

DatePriceSignal state
Nov 21, 2022 $15,479 MVRV 0.78 ✓
NUPL −0.28 ✓
Puell Multiple 0.44 ✓
Supply in Profit 44.8% ✓
Tier 1 count: 4 of 4.
MA Stack 0/4. AVIV 0.67. Drawdown −77%.
BTC Funding −190% annualized. DVOL 94. 25Δ skew −12.
Realized Loss $22M/day (exhausted). Liveliness 0.58 (hoarding).
Framework verdict: +17 STRONG BUY

All 4 Tier 1 signals fired simultaneously. L4 at max contrarian setup. L2 at max bear confluence. L1 neutral (M2 had stabilized). Composite +17 — the framework's maximum historical reading.

What happened next: BTC rallied from $15,479 to $73,000 over the next 14 months (+370%). The framework called it within 2 days of the price low.

The lesson

The difference between June and November was confluence. Both had some bullish signals. Only November had all 4 Tier 1 triggers. The framework's entire value proposition is that confluence requirement — it's what lets you ignore 90% of false signals while catching the real ones.

Case 2 · 2018 bottom

2018's bottom was cleaner than 2022 — no notable false signal, no macro headwind, just a long grinding bear that resolved in December.

DatePriceSignal state
Dec 15, 2018 $3,194 MVRV 0.74 ✓
NUPL −0.27 ✓
Puell Multiple 0.38 ✓
SIP 42% ✓
Tier 1 count: 4 of 4.
MA Stack 0/4. Drawdown −84%.
BTC Funding moderately negative. IV backwardated briefly.
Framework verdict: +18 STRONG BUY

Day 952 post-halving (July 2016 halving + 952 days). Right inside the historical 930-980 window.

What happened next: BTC rallied to $13,800 over 6 months (+330%), then retraced in a mid-cycle dip before continuing to the 2021 top.

Case 3 · 2015 bottom

The earliest backtest anchor. Halving was in November 2012, so the 2015 bottom at day 974 aligns perfectly with the pattern.

DatePriceSignal state
Jan 14, 2015 $171 MVRV 0.55 ✓ (extreme)
NUPL −0.31 ✓
Puell Multiple 0.30 ✓
SIP 38% ✓
Tier 1 count: 4 of 4.
MA Stack 0/4. Drawdown −87%. Realized Loss $8M/day (historically low).
Framework verdict: +19 STRONG BUY

What happened next: +20× in 35 months (to $20,000 at the 2017 top).

Case 4 · 2025 cycle top

The most recent data point. The framework called the top within one week — but with a lower composite score than prior cycles because extremes have been diminishing.

September 2025 — first warnings

DatePriceSignal state
Sep 15, 2025 $118,500 MA Stack 4/4 (locked > 60 days)
AVIV 2.38 (approaching 2.5 sell zone)
NUPL 0.58 ✓ (above 0.55 distribution threshold)
LTH SOPR 1.48 (climbing toward 1.5)
Funding +120% annualized (longs crowded)
Halving regime: late_markup (day 513)
Framework verdict: −6 MILD SELL

October 6, 2025 — the ATH

DatePriceSignal state
Oct 6, 2025 $124,714 (ATH) MA Stack 4/4
AVIV 1.56 (did NOT reach 2.5 — diminishing extremes)
NUPL 0.62
LTH SOPR 1.58 ✓
US spot premium −0.18% (institutional selling)
Funding +180% annualized ✓
OI/Mcap 3.8% ✓
25Δ skew +14 ✓
Halving regime: distribution_danger (day 534)
Framework verdict: −8 SELL (not STRONG SELL)

The diminishing extremes caveat

2025's top only scored −8 (SELL, not STRONG SELL) because AVIV never crossed 2.5. Post-ETF institutional flows have compressed the valuation extremes — the 2025 AVIV peak of 1.56 is where 2021's AVIV was in August 2021 (3 months before the actual top). The framework handled this correctly by flagging SELL even without STRONG SELL, because the other indicators (NUPL, LTH SOPR, Funding, OI/Mcap) all triggered normally. Future cycles will continue to have milder AVIV peaks. Don't wait for AVIV > 2.5 to sell — the framework's other indicators will signal first.

What happened next: BTC fell from $124,714 to $74,339 by April 2026 (−40.3%). Anyone following the distribution playbook who scaled out 20-30-40 across MILD SELL → SELL → STRONG SELL would have captured ~$112K-$118K average exit price.

What the case studies prove

Four out of four historical cycle turns (2015 low, 2018 low, 2022 low, 2025 top) produced framework readings in the expected band (+17 to +19 at lows, −8 to −18 at tops). Zero false confluences at cycle turns. The June 2022 near-miss was 1/4 Tier 1 — correctly excluded by the confluence requirement. The framework has never signaled a STRONG BUY that wasn't a cycle low, and has never missed a cycle low in its backtest window. That's the credibility claim, with receipts.

14The 155-day cohort convention

This section exists because it keeps causing confusion: how do "LTH MVRV" and "STH MVRV" actually get computed, and why does the endpoint name look backwards?

On-chain analytics naming rule

Every on-chain analytics cohort metric uses the suffix _less_155 or _more_155. The suffix refers to the age of the coins included in the calculation, not the count of coins or anything else:

  • _less_155 = coins held less than 155 days = Short-Term Holder cohort (STH)
  • _more_155 = coins held more than 155 days = Long-Term Holder cohort (LTH)

So market/mvrv_less_155 is the MVRV ratio computed using only coins that have been held fewer than 155 days — that's the STH cohort, and in CryptoWatch Macro it displays as STH MVRV. Conversely market/mvrv_more_155 is LTH MVRV.

Why 155 days

The 155-day threshold comes from on-chain analytics Realized HODL Ratio research and was formalized in the ARK Invest × on-chain analytics Cointime Economics paper (August 2023). It's the statistical point at which a coin's behavior transitions from short-term-holder-like (volatile, responsive to price) to long-term-holder-like (dormant, price-insensitive). The same threshold shows up in supply/lth_sum and supply/sth_sum with the cohort names spelled out explicitly — the on-chain analytics feed considers _more_155 synonymous with "LTH" and _less_155 synonymous with "STH" across the entire catalog.

The economic sanity check

If the labels were ever swapped, the numbers would be mathematically impossible given the current price. Consider a world where BTC is trading below the prior cycle's ATH:

  • LTHs bought during the prior bear market and early markup — their average cost basis is far below current price, so LTH MVRV should read well above 1.0.
  • STHs bought recently, often near the ATH — their average cost basis can be above current price, so STH MVRV can drop below 1.0.

If LTH MVRV ever appears to drop below 1.0, that's a genuine signal — it means even the patient long-term cohort is now underwater, which historically only happens at the deepest capitulation lows (2015, 2018-12, 2022-11). If STH MVRV ever prints above LTH MVRV, something is wrong.

Why this matters

LTH vs STH MVRV is the single most important cohort distinction in on-chain analysis. The dashboard uses it in the composite gauge, in the Tier 1 confluence, in the Bottom Proximity composite, and in the historical validation at every past cycle turn. Getting the labels right is the whole game.

Framework neutrality verification (v2 #18)

Audit v2 #18 questioned whether the framework is structurally bullish-biased. We ran the simplified composite backwards across the full on-chain analytics history (2010-2026, 5,751 daily rows) to measure the actual average composite per year.

Result: full-period average = −0.285 (median 0). The framework is empirically neutral. Per-year peaks align correctly with past cycle turns: 2015 avg +8.49 (bottom year), 2017 −7.38 (top), 2022 +5.27 (bottom), 2025 −4.08 (ATH year).

Effective range (audit v2 #3): STRONG BUY (≥+16) and STRONG SELL (≤−16) were never hit in 11 years. Practical range is ~−12 to +14, not the theoretical ±24. The verdict bands are calibrated against this effective range in practice.

Band distribution (full period): SELL 7.1% · MILD SELL 28.5% · WAIT 29.0% · MILD BUY 23.3% · BUY 12.1%. Sell-side 35.6% / buy-side 35.4% — within 0.2 percentage points of symmetric.

Verification script: verify_bias.py. Re-run after any scorer change. Last run 2026-04-15.

15Historical validation

Offline historical replays show how the framework scored confirmed cycle extremes. These research results are documented here; the live dashboard does not currently offer an interactive historical mode.

2015-01-14
Cycle 1 bottom
VerdictSTRONG BUY
MA Stack 0/4 · LTH MVRV < 0.85 · Puell < 0.5 · drawdown −85% · all Tier 1 triggered
2018-12-15
Cycle 2 bottom
VerdictSTRONG BUY
MA Stack 0/4 · MVRV < 1.0 · NUPL negative · drawdown −84% · Tier 1 fully triggered
2022-11-21
FTX collapse bottom
VerdictSTRONG BUY
MVRV 0.78 · NUPL −0.28 · Puell 0.44 · SIP 44.8% · MA Stack 0/4 · bottom proximity 71%
2021-04-14
First 2021 local top
VerdictSELL
MA Stack 4/4 · AVIV > 2.0 · halving regime late markup · funding overheated
2021-11-09
Cycle 3 ATH
VerdictSELL
MA Stack 4/4 · AVIV in cycle-top zone · distribution_danger · steep contango IV
2025-10-06
Cycle 4 ATH ($124,714)
VerdictSELL
MA Stack 4/4 · AVIV 1.56 late bull · halving late markup · bottom proximity single digits

These results are research backtests, not a stored reconstruction of the full dashboard. Use them as methodology context and judge live calls through the public Track Record.

Equity Curve backtest

The Equity Curve panel tests whether the composite signal can produce a strategy curve, not just good-looking labels at cycle turns. It compares conviction, mild, buy-and-hold, and DCA baselines with drawdown and Sharpe context.

Layer Correlation Matrix

The Layer Correlation Matrix checks whether L1, L2, L3, and L4 are still independent. Low cross-layer correlation means the composite is combining distinct evidence; high correlation means the dashboard may be reading the same market force several times.

16Market Pulse Scorecard

A 7-category × 2-axis scorecard borrowed from third-party "Market Pulse" weekly reports. Each category gets a Level (Low / Moderate / High) AND a Direction (Rising / Declining / Flat), giving you a 2-dimensional read per layer rather than a single-number collapse.

Why a second view alongside the composite gauge

The composite gauge collapses 21 indicators into a single −24 to +24 score. That's great for "should I act?" but it loses the cross-layer nuance. The Pulse Scorecard preserves it — you can see at a glance that Fundamental is High/Rising while Capital Flows is Low/Flat, and that disagreement is information that a single-number composite would hide.

The 7 categories

CategorySub-metricsWhat it tells you
SpotPrice RSI · Exchange NetflowIs spot demand healthy?
FuturesFunding · OI · Leverage RatioHow crowded is the derivatives book?
Options25Δ Skew 1W · IV 1M · VRPWhat are options markets pricing?
ETFPurpose ETF (CA proxy)Institutional bid (broader US spot ETF flows live in the Institutional panel)
FundamentalActive Addresses · Transfer Volume · Hash RateIs the network being used?
Capital FlowsRealized Cap Δ · Hot Capital Share · LTH SupplyIs the cohort structure shifting?
P&L StatesSupply in Profit · NUPL · RP Loss RatioIs the market rich or underwater?

Level scoring: 2-year percentile bands

Each metric's "Level" is computed against its own 2-year rolling percentile distribution using High/Low bands at the 20th/80th percentiles:

  • Low — current reading is below the 20th percentile of the last 2 years (statistically depressed)
  • Moderate — between 20th and 80th percentile
  • High — above the 80th percentile (statistically elevated)

This adapts to regime changes. A funding rate of 60% annualized is "high" in 2025 but was "moderate" in 2021. The percentile band captures that, a fixed threshold wouldn't.

Direction: 7-day delta

Every metric's "Direction" is the sign of its 7-day change: Rising if >+3%, Declining if <−3%, Flat otherwise. Direction catches the velocity that Level alone misses.

Polarity tinting

Different categories have different bullish/bearish polarities at High vs Low:

  • Spot · ETF · Fundamental · Capital Flows — High is bullish (green border), Low is bearish (red border)
  • Options — High is bullish (contrarian bottom-ish, fear priced in), Low is bearish (complacent top)
  • P&L States — Low is bullish (capitulation bottom), High is bearish (profit-taking top)
  • Futures — polarity-neutral, direction-dependent

Each category's label also shows a context tag so you don't have to remember the polarity: "High · Demand" (Spot) vs "High · Vol/Fear" (Options) vs "High · Activity" (Fundamental) vs "High · Profit" (P&L States). Same badge color, different meanings explicitly labeled.

How to read it

  • All 7 cards bull-tinted → strong alignment, high conviction
  • All 7 cards bear-tinted → strong alignment the other way
  • Mixed → disagreement itself is information. Read the Divergence Watch panel for the conflict explanation.

17Cohort framework (LTH · ETF)

Post-ETF, structural BTC flow is no longer a single-cohort question. The Macro cohort framework now uses two owned lenses: on-chain Long-Term Holders (LTH) and TradFi institutional demand via US spot BTC ETFs. Retired wallet-label feeds are excluded from this panel's scoring.

Liquidity & Capital panel

The Macro Liquidity & Capital panel is the dashboard's consolidated dollar-flow read. It groups ETF demand, stablecoin supply change, and cross-market crypto money-flow rotation into one question: is fresh capital entering, leaving, or rotating inside the market?

The 2 cohorts compared

LTH (>155d)ETF / TradFi
Size~14.7M BTC~1.3M BTC (ETF AUM)
Relative weight~11× the ETF pool~9% of LTH supply
BehaviorMechanically contrarianTrend-following in aggregate, with sticky long-only demand underneath
Leading/laggingLeads cycle turnsLags by days to weeks, confirms structural bid
Signal inputOwned LTH tracker: supply + SOPR familyOwned ETF flow ledger
CadenceDailyDaily
The updated rule

LTH > ETF for timing. LTH tells you the regime (accumulation / markup / distribution / capitulation). ETF tells you whether TradFi has confirmed the regime or is still fading it. Highest conviction now requires both owned sources to agree; unavailable wallet-label feeds do not pad the score.

Institutional Pulse

Institutional Pulse compresses leverage, exchange-supply, and ETF-demand evidence into a 3-lens structural-bid check. It is meant to answer whether the current BTC bid has real spot support or is mostly leverage-led and fragile.

16.1 · LTH Behavior Tracker

The LTH Tracker panel classifies the LTH cohort into one of 6 phases based on 30-day net position change and SOPR:

PhaseSupply Δ 30dSOPRHistorical context
Euphoric Distribution↓↓>1.5Dec 2017, Nov 2021, Mar 2024 — all 3 cycle tops (3/3 backtest)
Healthy Distribution1.1–1.5Late-bull profit taking
Pure Capitulation<1.02015 Q1, 2018 Q4, Mar 2020 — 3 of 4 pre-ETF bottoms fired this
Accumulation at Profit>1.0Early-bull accumulation
Accumulation Through Capitulation<1.0Nov 2022 FTX bottom only — post-ETF-era bottom signature
Holding~flat~1Mid-cycle equilibrium

LTH Net Position Change is the canonical accumulation/distribution metric. Positive 30d = cohort net growing = more STH coins aging into LTH than LTH coins being sold = accumulation. Negative = distribution.

The panel shows a 90-day supply sparkline, 1d/7d/30d/90d deltas, a 5-metric grid (Supply, In Loss %, SOPR, MVRV, NUPL), the current phase classification with historical context, and a validation table running the classifier retroactively against all past cycle inflections so you can verify it calls the right signals at the right times.

Post-ETF structural shift

Before the ETF (pre-Jan 2024), LTH cohort was net SHRINKING at every past bottom — weak hands forced out at losses. Post-ETF, there's now a structural absorber (ETF flows + post-halving aging) that can keep the cohort GROWING even during loss-realization. The Nov 2022 FTX bottom was the first time this happened. If the current reading (+102K BTC / 30d while SOPR 0.79) holds, this is an even stronger version of the same signature — LTH growing through capitulation.

16.2 · Owned cohort alignment input

The Composite conflict resolver reads both owned cohort stances (LTH from the tracker above, ETF from the owned ETF ledger) and computes an internal alignment confidence:

  • HIGHEST · 2/2 aligned — rarest, highest-signal configuration under the owned-source framework. LTH behavior and ETF flow agree on direction.
  • LOW · 1/2 split — LTH and ETF disagree or one is neutral. No directional signal. Wait for resolution.
  • PARTIAL · 1/2 available — one owned feed is missing or stale, so the resolver withholds conviction.

This is a retained scoring input, not a standalone panel. Its evidence is shown through Entity Regime, the LTH/ETF panels, and the Composite conflict chip.

16.3 · Capital Pipeline

Consolidated "is money flowing INTO or OUT OF crypto?" composite. Only two flows count as true dollar-in/dollar-out events:

  1. Stablecoin Supply Δ (USDT + USDC) — mint/burn at the issuer. 1:1 dollar wrapping/unwrapping.
  2. US Spot BTC ETF Net Flows — creation/redemption via AP. 1:1 dollar conversion to BTC custody.

Composite = Stablecoin Δ + ETF Flow over 24h / 7d / 30d windows. Shown as a big hero number (the 7d composite) with direction ("capital flowing INTO crypto" / "flowing OUT" / "flat") and 3 time-horizon columns. Context rows below the composite show Futures OI Δ and BTC Exchange Reserve Δ as separate orthogonal signals (not summed into composite because OI mixes dollar + coin margin and exchange reserve is coin custody not dollar flow).

This panel answers one question: "Did new dollars enter crypto this week?" Most serious analysts use stablecoin supply growth as the single cleanest proxy for net dollar inflow. ETF adds TradFi confirmation. Together they're the closest thing to a wholesale capital-in/capital-out measure.

18Bear Market Value Zone (BMVZ)

A price zone between Realized Price (RP) and True Market Mean (TMM) that historically defines where BTC spends most of its accumulation and redistribution time. Breaking above TMM = first structural confirmation of cycle recovery.

Fair-value anchors and price chart

The BTC Price and Cointime panels are two views of the same valuation stack. The price chart shows the fair-value anchors directly as levels and DCA zones around spot; Cointime explains the active-economic basis behind them.

The two anchors

  • Realized Price (RP) = Realized Cap / Circulating Supply = the aggregate cost basis of the network. Historically the "everyone paid" reference level. Floor of the BMVZ.
  • True Market Mean (TMM) = price / AVIV ratio (Cointime Economics). Adjusts RP for dormant supply, giving the "active economic mean" rather than the raw cost basis. Ceiling of the BMVZ.

The AVIV ratio (Active Value to Investor Value) is the Cointime Economics metric. When AVIV is low (< 1), TMM is above spot → market is undervalued vs its economic mean. When AVIV is high (> 1), TMM is below spot → market is overvalued.

TMM is live-derived now

Previously the dashboard used a hardcoded TMM = 1.44 × RP multiplier (a common heuristic). That's been replaced with live TMM = current_price / aviv_ratio, which is the actual Cointime Economics definition. The old multiplier was off by 5-10% at any given time; the new calculation is exact.

LTH Cooldown Tracker

Alongside the BMVZ band, the same panel tracks two LTH-specific cool-down metrics:

  1. Realized Loss 30d SMA — the 30-day smoothed total realized loss. Historically needs to drop below ~$50M/day for LTH capitulation to be considered cooled. This is a total-network proxy because LTH-specific realized-loss flow is not published as a public CryptoWatch-owned metric.
  2. LTH Supply in Loss — total BTC currently held by LTH wallets that are underwater. Needs to drop below ~1M BTC for full cooldown.

When both cooldown thresholds fire, the LTH cohort has finished its capitulation phase and the cycle floor is confirmed. This is a lagging confirmation, not a leading signal — it tells you "the capitulation is done" after the bottom is already in.

19Divergence & trap detection

Detects market-reversal traps by cross-layer divergence. When price moves one direction but orthogonal signals (Smart Money, exchange flows, sentiment, funding, capital flows, institutional flows) disagree, that's a trap signature. The panel lists active divergences with full evidence — transparent, not opaque scoring.

4 detectable patterns

FlagTriggerWhat it means
⚠️ Bull Trap RiskPrice +2%+ 7d with ≥3 orthogonal bearish divergencesFake breakout. Price rallied but SM distributing, CB premium flat, funding extreme long, mindshare spike, LTH taking profit, weak ETF flows. Likely reversal.
✅ Bear Trap CandidatePrice flat or declining with ≥3 orthogonal bullish divergencesFake breakdown forming. SM accumulating, CB premium positive, exchange drain, shorts crowded, extreme fear, LTH at loss but cohort growing. Contrarian long setup.
🎯 Accumulation RegimePrice +1 to +5% 7d recovery + same 3+ bullish conditions as bear trapBear trap already sprung. The recovery is real — cohort bought the dip before you could. Bottom likely confirmed retroactively.
💀 Dead Cat Bounce RiskPrice +3%+ 7d but structural bear signals intact (shorts still dominant, LTH SOPR < 1, no stablecoin growth, weak ETF, OI declining)Rally is counter-trend bounce, not buyer-driven. Sellers will return.

Evidence-based design

Each flag requires 3+ orthogonal conditions agreeing before firing (severity scales with how many conditions agree). The panel shows the full evidence list so you can see WHICH signals fired. You can read the bullets and decide whether you trust each one for your specific trade — no opaque risk score.

When no flag is active, the panel explicitly says "No active divergences — price and orthogonal signals are aligned. The current move is clean — no trap signature detected in the last 7 days." Silence is useful too.

Caveats

  • These are 7-day-horizon signals based on daily data. Not for intraday scalping.
  • Multi-source divergence increases probability of reversal but never guarantees it.
  • Use as a "conflict checker" alongside the Composite Signal and Tier 1/2 panels — not as a standalone decision.
  • Stop-hunt / liquidity-grab detection is not yet implemented (requires hourly data).

20Daily brief system

The dashboard ships one scheduled alert per day: a deterministic morning brief sent at 07:00 WIB to the configured operator chat and, when configured, the public channel. Everything else is intentional silence.

Why no intraday alerts

The old 15-minute verdict-transition evaluator was disabled in 2026 because daily evidence was producing duplicate threshold alerts. CryptoWatch now treats the scheduled brief as the retention alert and leaves intraday monitoring to operational health checks.

The morning brief

The production schedule sends the brief first, then refreshes and records the day's accountable evidence in dependency order:

  1. 06:30 WIB — Truth Canary checks the active product contracts.
  2. 07:00 WIBtelegram_morning_brief.py reads the current CryptoWatch snapshot and sends the deterministic brief.
  3. 08:05 WIB — the daily market-data pipeline refreshes the source artifacts.
  4. 08:15 WIB — the separate prediction producer → tracker → resolver chain records the day's accountable forecast.
  5. 08:30 WIB — the daily Intelligence artifact synthesizes only after the source refresh completes.

What the brief contains

  • Headline — the current snapshot verdict in one line.
  • Narrative — a compact explanation derived from the snapshot.
  • 24-hour deltas — up to three material changes with severity labels.
  • Contrarian case — the strongest opposing read when one exists.
  • Dashboard link — the full evidence remains on cryptowatch.id.

Fear & Greed

Fear & Greed is the contrarian sentiment gauge. Low and rising readings can support accumulation; high and falling readings can warn that distribution has started.

In-browser freshness awareness

Every panel shows a small pill indicating its data age and expected cadence (e.g., 44m · daily, 2m · 5min). A sticky freshness banner under the nav shows overall pipeline health — green when all inputs are within their expected cadence, amber when anything is stale, red when multiple inputs are very stale. See Signal coverage & cadence.

Re-enabling alerts (not recommended)

If you want to re-enable intraday alerts, know what you're signing up for: you need to apply hysteresis to prevent tier-boundary thrashing (e.g., BUY threshold +9 / WAIT threshold +5 instead of both at ±8). You also need to either kill the AI per-alert enrichment or fetch fresh per alert — the cached replay is a trust violation. See feedback_no_intraday_alerts.md in the memory system for the full incident retro.

22Signal coverage & refresh cadence

The public docs show the type of signal each pipeline contributes and how fresh it should be. Exact private source names, account tiers, source URLs, call budgets, and private licensing details are intentionally not published. If a feed is stale, the indicator it powers drops out of the composite and the confidence score reflects it. The freshness banner at the top of the dashboard + per-panel age badges surface staleness in real time.

Daily pipeline · 08:05 WIB

Signal classWhat it powersCadence
On-chain cohort metrics 60 BTC metrics: MVRV, NUPL, Puell, SOPR (LTH/STH), supply cohorts, realized price, realized loss, liveliness, vaultedness, AVIV, active addresses, exchange flows + reserves, funding, OI, options (IV 1M, 25Δ skew, realized vol 1M), HODL waves, stablecoin supply (USDT/USDC), BTC dominance, ETH price (for ETH/BTC ratio) daily · 08:05 WIB
Sentiment + ETF flow ledger Fear & Greed-style sentiment, US spot BTC ETF per-fund flows, social mindshare, options-derived max-pain and put/call context daily · 08:05 WIB
Technical-structure feed Multi-timeframe technicals (1h / 4h / 1d / 1w) for BTC / ETH / SOL / HYPE: RSI, MACD, Bollinger, ADX, Stochastic, SMA/EMA, S/R, market structure, sentiment daily · 08:05 WIB
Macro liquidity series US M2 money supply (M2SL) daily · 08:20 WIB
TradFi market data feed DXY, SPX, IBIT spot ETF volume (turnover proxy) daily · 08:20 WIB

Live feeds · 5-minute cron

Signal classWhat it powersCadence
US/offshore spot quotes BTC spot spread → US spot premium index every 5 min
BTC options volatility feed DVOL, front-month IV, term structure shape, 25Δ skew proxy every 5 min
Derivatives liquidity feed Liquidation cluster estimates (top-trader long/short × leverage tiers × OI) every 5 min

Liquidation levels

The Liquidation Levels panel estimates the nearby long- and short-liquidation clusters from derivatives liquidity, top-trader positioning, and leverage tiers. Treat cluster sizes as estimates; price levels come from the liquidation formula.

Prediction markets

Current real-money policy odds are a bounded input to Macro Regime's permission line. They can force a WAIT when zero-cut risk is elevated, but there is no standalone Prediction Markets panel or cross-venue tape.

On-demand

Signal classWhat it powersCadence
BTC candle feed BTC daily candles (2 years) for the price chart on page load

Frontend polling

The dashboard frontend hydrates from /api/cw/snapshot plus a small set of CryptoWatch-owned artifact contracts on every 30-second interval. This reads cached backend data; a browser refresh does not trigger upstream collection.

Freshness banner methodology

The sticky banner at the top of the dashboard inspects file mtimes across every signal class and returns a structured freshness map. Each input has an expected cadence (daily / 15min / 5min) and a threshold:

  • 5min cadence: fresh if ≤10m old, stale if ≤30m, else very_stale
  • 15min cadence: fresh if ≤20m old, stale if ≤1h, else very_stale
  • Daily cadence: fresh if ≤28h old, stale if ≤48h, else very_stale

The banner shows the worst status across both groups (daily pipeline + live feeds). Each individual panel ALSO shows a per-panel badge (e.g., 44m · daily or 2m · 5min) so you can see at a glance which panel depends on which cadence. Details accordion (click "details") shows the full per-source breakdown.

23Glossary

AVIV Ratio

Active Value / Investor Value. A Cointime Economics valuation metric that replaces MVRV Z-Score for the post-ETF era by reweighting supply by coin age.

Backwardation

A state of the implied volatility curve where front-month IV is higher than back-month IV. Traders are paying a premium for immediate protection — fear of a near-term move is priced higher than long-term uncertainty. Historically rare and bottom-coincident (2020-03 COVID, 2022-11 FTX both had brief backwardation at the low).

Bottom Proximity Score

Our composite 0-100% synthesis of bottom-relevant signals: MVRV ratio, NUPL, Puell Multiple, Supply-in-Profit, drawdown depth, LTH MVRV, and Liveliness. Each subscore is weighted by its historical reliability at calling cycle lows. The composite reaches 80-95% at confirmed cycle bottoms (2015, 2018, 2022) and drops to 5-15% at confirmed tops. See §08 Indicator Reference for the component list.

Cointime Economics

Framework developed by ARK Invest and an on-chain analytics partner (2023) that treats coin-age as the primary dimension for on-chain valuation. Replaces classic MVRV metrics that get distorted by large dormant stashes.

Contango

A state of the implied volatility curve where back-month IV is higher than front-month IV. The normal state. Traders are more worried about long-term uncertainty than immediate moves. Steep contango (back-month IV >> front-month) is a distribution warning.

Delta (Δ)

Options terminology for how much an option's price changes per $1 change in the underlying. A 25-delta call moves 25 cents per $1 BTC move. "25Δ skew" compares the IV of 25-delta calls vs 25-delta puts to measure directional positioning without being distorted by at-the-money traders.

Diminishing Extremes

The observation that each BTC cycle has had milder peaks and shallower troughs than the previous. 2011 cycle drawdown −94%, 2018 −84%, 2022 −77%, 2026 tracking around −40%. Peak MVRV has decayed 5.8 → 4.5 → 3.9 → 2.4. This is why the framework's thresholds are calibrated to post-ETF ranges rather than pre-2022 ranges. See §05 Framework design rationale and §13 Case studies.

DVOL

BTC options volatility index. The "crypto VIX" — a 30-day forward-looking implied volatility measurement from BTC options.

Liveliness

Ratio of coindays destroyed to coindays created over the lifetime of the Bitcoin supply. Falling liveliness = LTHs hoarding. Rising liveliness = LTHs distributing.

LTH / STH

Long-Term Holder (>155 days) / Short-Term Holder (<155 days). The 155-day threshold comes from on-chain analytics research identifying when coin behavior statistically transitions from reactive to dormant.

MVRV

Market Value / Realized Value. The ratio of BTC's market cap to its on-chain realized cap (the sum of all UTXOs valued at the price they last moved). MVRV < 1 means the average coin is underwater.

NUPL

Net Unrealized Profit/Loss. (Market cap − realized cap) / market cap. NUPL < 0 means the network is in net unrealized loss territory — historically rare, only at bear-market bottoms.

Open Interest (OI)

The total number of outstanding derivative contracts (futures or options) that have not yet been settled. Each contract has a long and a short side — OI measures the aggregate size of the derivative market. We use BTC futures OI divided by BTC market cap as the leverage regime gauge. See OI / Market Cap.

Puell Multiple

Daily BTC miner issuance in USD divided by its 365-day moving average. Puell < 0.5 means miner revenue is deeply below its historical norm — historically a bottom signal because it implies capitulation in the miner cohort.

Realized Cap

The sum of all BTC valued at the price they last moved on-chain, rather than current market price. If a coin last moved at $30K, it counts as $30K in realized cap — even if BTC is now $75K. Realized cap is the foundation of MVRV, SOPR, LTH/STH cohort metrics, and Realized Price. It's a measure of aggregate cost basis.

SIP (Supply in Profit)

Percentage of circulating BTC supply that is currently held at a profit. SIP < 50% means most coins are underwater.

SOPR

Spent Output Profit Ratio. The average profit ratio of all BTC spent on a given day. SOPR = 1.0 is breakeven. SOPR < 1.0 means the average mover is realizing a loss.

True Market Mean (TMM)

A Cointime Economics variant of Realized Price that reweights supply by dormancy. Unlike raw Realized Price, TMM removes dormant supply from the calculation — so long-lost or deeply-held coins don't drag the mean down. TMM typically sits above Realized Price by 30-80% and acts as a practical support/resistance level on the price chart.

Vaultedness

Cointime metric — the fraction of supply that is "vaulted" (aging without being spent). High vaultedness = hoarding regime.

Zero-FP Tier 1

Four indicators (MVRV < 1, NUPL < 0, Puell < 0.5, SIP < 50%) that have only ever all triggered together at the final lows of Bitcoin cycles (2015, 2018, 2022). "Zero false positive" refers to the all-four-simultaneously confluence being historically unique to cycle bottoms. Partial triggers (1–3 of 4) can occur in mid-cycle corrections.

25Deterministic Daily Forecast · Accountability

The daily forecast is a deterministic CryptoWatch Core vote over the same live inputs shown on Macro: Composite, Truth, Desk, and Cycle. It does not run a multi-agent debate, claim analyst agreement, or create discretionary price targets.

Ordered 08:15 WIB pipeline

  current Macro snapshot + Desk setup
                  |
      deterministic cw_core vote
                  |
        prediction_daily.json
                  |
       server-owned call ledger
                  |
       T+7 / T+30 resolution
                  |
  Forecast Accountability + Track Record
    

The producer emits direction-only calls for today, week, and month with input provenance and explicit invalidations. Missing or stale source inputs fail the run instead of being converted into invented analyst views or extra calls.

Forecast accountability ledger

The Forecast Accountability panel is the public record of dated calls and their resolution windows. It separates live forecast accountability from historical backtest performance so the dashboard does not blur real-time calls with hindsight.

Accuracy tracking

Every dated call is stored in the server-owned prediction ledger with its T+0 BTC anchor. The panel reads /api/track-record and reports:

  • T+7 directional accuracy — CORRECT / (CORRECT + INCORRECT) for BULL and BEAR calls only
  • Honest exclusions — NEUTRAL no-bets and outcomes inside the ±2.5% dead zone do not enter directional accuracy
  • T+30 grade accuracy — the independently resolved month-direction field, with its own resolved and pending counts
  • Recent calls — dated direction, T+7 outcome, T+30 status, and source

No percentage is shown until its horizon has resolved at least one eligible call. Sample counts remain visible beside every rate; the dashboard does not use browser-local history or seed backfilled wins.

26Distribution Confluence · Top Detection

The mirror image of Tier 1. While Tier 1 detects cycle bottoms with zero false positives, the Distribution Confluence panel detects cycle tops using 6 indicators backtested against the 2013, 2017, 2021, and 2025 tops.

The 6 indicators

IndicatorTriggerWhat it means
AVIV Ratio> 2.0Cointime valuation extreme — network deeply overvalued vs active-investor cost basis
NUPL> 0.55Net Unrealized Profit/Loss in euphoria zone — most holders sitting on large gains
Puell Multiple> 4.0Miner revenue overextended relative to 365d average — miners have incentive to sell
MA Stack= 4/4Full bull technical regime — all moving averages aligned bullishly (condition for a top)
Funding (ann.)> +54%Extreme leveraged speculation in perpetual futures
Halving Regimelate_markup or distribution_dangerInside the historical top window (480-560 days post-halving)

Verdict bands

TriggeredVerdictAction
0-1 / 6NO TOP RISKDistribution signals inactive. Continue accumulation strategy.
2-3 / 6EARLY WARNINGStart trailing stops. Move SL to breakeven on leveraged positions. Begin sizing down.
4+ / 6STRONG SELLExecute the Distribution Playbook below. This is the highest-conviction sell signal the framework can produce.

How to read it on the dashboard

Open the Distribution Confluence panel (near the bottom of the page, or use the panel navigator). The hero card shows X/6 triggered with a color-coded verdict. Each of the 6 indicators has its own card showing the current value, trigger threshold, and whether it's triggered (red border) or safe (green border).

Cross-check: When the composite gauge reads < -8 (SELL or STRONG SELL) AND Distribution Confluence shows 4+/6, that's the maximum-conviction sell signal. Both the synthesis engine and the dedicated top-detection engine agree.

27Regime-conditional L4 scoring

The same L4 Execution indicator reading means very different things depending on where you are in the cycle. Funding at +54% during early markup is normal bull exuberance. The same reading during distribution danger is a top signal. The scoring engine now adjusts thresholds based on the halving regime.

Funding (BTC annualized)

Regime-2 (bearish) trigger-1 triggerRationale
Markup / Early Markup> +80%> +30%Bull exuberance is normal — wider triggers avoid false sells
Late Markup / Distribution Danger> +40%> +10%Any hot funding is a real top signal — tightened triggers
Late Bear / Accumulation> +80%> +25%Negative funding is capitulation (bullish); positive is noise
Default (mid/early bear)> +54%> +15%Original static thresholds

DVOL (BTC Implied Volatility)

RegimeHigh DVOL (>90) scoreRationale
Late Bear / Mid Bear / Accumulation+2 (bullish)Panic = capitulation = bottom signal
Late Markup / Distribution Danger-2 (bearish)Volatility spike at top = crash starting
Markup / Early Markup+2 (bullish)Original interpretation — high IV during drawdown is bottom

OI / Market Cap

RegimeOverheat triggerRationale
Late Markup / Distribution Danger2.0% (tightened from 2.5%)Leverage at tops is more dangerous — earlier warning
Late Bear / Accumulation3.5% (loosened from 2.5%)Elevated OI in a bear is less alarming
Default2.5%Original static threshold

BTC-SPX correlation as layer multiplier

When the 30-day BTC-SPX correlation is > 0.6 (risk-asset regime), L1 Macro scores are multiplied by 1.5x and L3 On-Chain by 0.75x. When correlation is < 0.3 (decoupled), the reverse applies. This mechanizes the insight that macro dominates when BTC trades like a risk asset, and on-chain dominates when BTC decouples.

28Signal velocity

Next to the composite score, a small badge shows the 7-day and 30-day change in the composite score. This answers: "Is the framework accelerating toward a bottom or stalling?"

The velocity is stored in your browser's localStorage (rolling 30-day window). It accumulates one data point per daily visit. After 7 days you'll see the 7d delta; after 30 days both deltas appear.

DisplayMeaning
▲+3 / 7dComposite moving toward stronger buy — bottom signals strengthening
▼-2 / 7dComposite weakening — buy conviction fading or sell signals emerging
▬+0 / 7dNo change — market in stasis

The 30d delta is the more interesting one for macro cycle analysis — it shows whether the framework has been structurally improving or deteriorating over a full month.

29Q&A guide — reading the dashboard

Real questions, mapped to the exact panels and readings that answer them. Grouped by who's asking.

For the DCA investor

Q: Is now a good time to buy BTC?

Panels: Composite Signal → read the verdict (BUY / WAIT / SELL) and score. Check confidence %. If confidence < 60%, data is stale or indicators disagree — wait for clarity.
Cross-check: Tier 1 count (0/4 = no bottom confluence yet), Halving Regime (where in cycle), Fear & Greed (extreme fear = contrarian opportunity if Tier 1 agrees).

Q: How far could BTC fall from here?

Panels: Tail-Risk Register → named downside conditions and watch thresholds. DCA Plan → 5 zones computed from live Realized Price. Cointime and AVIV → valuation state.
Read: Treat the active tail scenarios as invalidation conditions, then size only at the realized-price zones. CryptoWatch no longer publishes an unowned probability tree or point-target simulator.

Q: Where exactly should I place my DCA orders?

Panel: DCA Entry Zones → 5 zones from Zone A (top, smallest position) to Zone E (bottom, largest). Each zone shows the price range and suggested allocation %. All zones are computed from live Realized Price — they move daily.

Q: Have any bottom indicators fired?

Panel: Tier 1 Zero-FP → shows X/4 triggered. Each of the 4 indicators (MVRV < 1, NUPL < 0, Puell < 0.5, SIP < 50%) shows current value, threshold, and distance to trigger.
Also check: Tier 2 Confirming → X/7 triggered for secondary signals. Bottom Proximity History → trajectory chart showing how fast we're approaching the bottom zone.

Q: When should I stop accumulating and start selling?

Panel: Distribution Confluence → X/6 triggered. When 4+/6 fire, execute the Distribution Playbook. Also check: Market Pulse Scorecard → when all 7 categories are HIGH/Declining, the cycle is rolling over.
The Distribution Playbook panel shows the specific exit plan: time window (days post-halving), price targets (RP multipliers), and on-chain triggers (MVRV-Z > 2.5, NUPL > 0.55).

Q: Are long-term holders panicking or accumulating?

Panel: LTH Behavior → Net Position Change (positive = growing cohort = accumulation), LTH SOPR (below 1.0 = selling at a loss), LTH MVRV (cost basis vs market value).
Cross-check: Entity Regime plus ETF flows → owned-source read (LTH + ETF). When both say BULL = highest conviction accumulation setup.

Q: Is the macro environment supportive?

Panel: Macro Regime (L1) → M2 YoY (liquidity expanding?), DXY 3m change (dollar weakening?), BTC-SPX correlation (risk-on or decoupled?). Look for "MACRO GATING: CLEAR" vs "WAIT".
Cross-check: prediction-market pricing for Fed rate probability and policy regime.

For the crypto analyst

Q: MVRV 1.6 vs STH-MVRV 0.9 — which matters more?

Panels: BMVZ (aggregate MVRV + position in zone), LTH Behavior (LTH MVRV separately), Tier 2 (STH MVRV as confirming signal). The composite breakdown in the Signal panel shows exactly how each MVRV variant scores (L3 layer).
Rule: Signal Conflict Resolver → Rule 2: "MVRV Aggregate > LTH SOPR for cycle reads." STH MVRV below 1.0 is a leading indicator of cohort stress but doesn't override aggregate valuation.

Q: CDD shows a distribution wave but LTH and ETF evidence are bullish — which is right?

Panels: Cointime Layer → CDD reading + composite verdict. Entity Regime and ETF flows → the owned LTH/ETF bull/bear evidence.
Rule: The Composite conflict resolver gives owned cohort alignment authority over CDD for structural calls. CDD measures old-coin movement — it fires for tax-loss harvesting, custody rebalancing, and real selling. When LTH + ETF both point bull, CDD is probably flagging movement, not surrender.

Q: Funding at -50% annualized — can I build a delta-neutral carry trade?

Panel: Funding Regime → shows per-coin annualized rates + explicit carry math: "On $100K, best carry [coin] [rate] annualized ($X/day spot-long/perp-short) + mean-reversion risk %."
Cross-check: Options panel → IV term structure shape tells you if the market expects the funding to normalize (contango = yes) or persist (backwardation = no).

Q: Where in the cycle are we? How many days to the next bottom/top?

Panels: BTC Cycle Phase → 4-phase wheel with current position (0-100 score). Halving Regime → days since halving, regime label, countdown to next halving. Distribution Playbook → days to the distribution window.
Cross-check: derivatives analytics Cycle Indicators → 4 independent cycle measures for cross-validation against our composite phase.

Q: ETF inflows are strong but IBIT turnover is low — what gives?

Panel: Institutional Demand → IBIT activity multiplier (turnover vs 30d SMA) alongside the per-fund net flow table (expand "show full per-fund breakdown"). Market Pulse Scorecard → ETF category rating (HIGH/LOW) with 2Y percentile.
Read: High net inflows + low turnover = steady institutional accumulation (not trading, just buying). High turnover + low net flows = churn (buying and selling at the same pace). The Institutional Pulse panel gives a 3-lens conviction read.

Q: Is the correlation with stocks high enough that macro dominates?

Panels: Macro Regime shows BTC-SPX 30d correlation; Macro-Beta Mode shows whether BTC is trading as macro/rates/oil beta. The correlation value directly feeds into the composite scoring engine as a layer multiplier.
Rule: Correlation > 0.6 → L1 Macro scores weighted 1.5x, L3 On-Chain 0.75x. Correlation < 0.3 → reverse. Shown in the composite breakdown table with multiplier annotations.

For the institutional allocator

Q: What's the framework's historical accuracy?

Panel: Historical Backtest → 9 cycle inflections with exact composite scores, days before/after the actual turn, and accuracy grades. Current: 77% weighted accuracy (5 exact, 1 good, 3 partial). One known false signal (June 2022, documented).
Also: Layer Correlation Matrix 90D → measures how orthogonal the 4 layers are. Low cross-layer correlation = each layer adds independent information. High correlation = you're reading one signal four times.

Q: How should I think about position sizing given the current signal?

Panels: Tail-Risk Register → explicit downside conditions. DCA Plan → suggested allocation % per zone. Composite confidence → coverage vs agreement split tells you how much of the framework is actually contributing vs stale.
Rule: Full size when all 4 layers agree (Section 07 in these docs). Half size when L4 conflicts with L2+L3. No position when L1 is hostile.

Q: How do I evaluate BTC vs broader crypto for first allocation?

Panel: Cross-Asset Bottom Signals → BTC/ETH/SOL/HYPE in one view: drawdown from ATH, weekly RSI, and distance to 200-week MA. This shows which assets have the most depressed risk/reward.
Also: Money Flow 5-Zone Rotation Map → shows unlock levels for alt rotation. If 0/4 zones unlocked, capital stays in BTC (Zone 2). TMM gate level shows the price BTC must clear before rotation begins.

Q: What are the specific exit criteria for a multi-year position?

Panel: Distribution Playbook → pre-committed exit plan: time window (480-560d post-halving → specific dates), price targets (RP x 3.0-5.5 → specific dollar range), on-chain triggers (MVRV-Z > 2.5, NUPL > 0.55, realized vol < 4% at ATH). All values are live-computed from current Realized Price.
Also: Distribution Confluence → the live trigger dashboard (X/6 fired). Market Heat Thermometer → single 0-100 score for how "hot" the market is.

24Public API and webhooks

The supported machine surface is intentionally smaller than the internal runtime. The OpenAPI document is the stability contract; browser helpers and compatibility routes are not automatically public promises.

Start from the contract

OpenAPI 3.1 specification · Hosted MCP guide

What is supported

  • Decision state: composite, cycle, regime, Desk state, daily changes, and morning-brief receipts.
  • Accountability: calibration, available snapshot dates, and CSV exports.
  • Agent access: the hosted MCP contract and its current tool list.
  • Delivery: authenticated webhooks with create, list, test, delivery history, failure status, and redelivery operations.

Keys and webhooks

Read endpoints allow anonymous access at the lower limit. Create a free key for higher limits and for write operations. The key is returned once; keep it outside browser storage and source control.

curl -X POST https://cryptowatch.id/api/public/v1/keys

curl -X POST https://cryptowatch.id/api/public/v1/webhooks \
  -H "X-API-Key: $CRYPTOWATCH_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://example.com/cw","events":["composite.changed"]}'

Independent research API

The separately graded research-thesis engine is visible on Track Record. Its current theses and calibration remain experimental research endpoints, not part of the stable public API contract and not the official deterministic Daily Bitcoin Call.

30Disclaimer

Not financial advice

cryptowatch.id is a research and synthesis tool. It presents publicly available on-chain, macro, and derivatives data in a single interface with transparent scoring math. It is not a signal service, it is not investment advice, it does not know your risk tolerance or capital, and it cannot see the future.

Cycle frameworks fail. Past patterns do not repeat mechanically. The same data can be correct at one cycle turn and wrong at the next. Use this tool as one input among many. Never size a position based on a dashboard verdict alone.

The public methodology documents the scoring logic and the sources that can be disclosed. Some inputs depend on licensed or private upstream access, and the public API is intentionally a supported subset rather than an exhaustive mirror of every internal artifact.

31HK Spot BTC ETF Flows

Hong Kong spot BTC ETF daily flows track institutional demand from Asia via three HK-listed funds: ChinaAMC, Harvest, and Bosera & HashKey. These are the only spot BTC ETFs accessible to mainland Chinese investors through the Stock Connect program.

Net positive flow indicates creations (new BTC entering custody) — a bullish signal for Asia-led demand. Net negative flow indicates redemptions — distribution pressure. When HK flows are strongly positive while US flows are neutral or negative, it signals a demand rotation toward Asia. Persistent outflows suggest mainland appetite is cooling.

Data source: CryptoWatch-derived derivatives artifact. Updated daily.

32Corporate Treasuries

Public and private company BTC treasury holdings tracked through CryptoWatch's treasury artifact. Covers listed companies, miners, ETFs, governments, and private firms with material BTC on their balance sheet.

The total BTC held by all tracked entities is a structural supply-absorption metric. When public companies accumulate, it removes float from circulation. When they distribute, it adds supply pressure. Watch the top holders list for concentration risk — if one entity controls more than 5% of circulating supply, their liquidation risk becomes a macro factor. Miner holdings are particularly sensitive to hash-price regime shifts.

Data source: CryptoWatch-derived treasury artifact. Updated daily.

33Truth Engine · Cross-Source Conflict Resolver

A unified verdict from ~30 signal feeds. Most dashboards show each signal in isolation. The Truth Engine ingests all of them, normalizes to a single −3..+3 scale, detects where feeds disagree, applies domain-weighted resolution rules, and tells you: what's the consensus, where do feeds conflict, and what's the strongest counter-case?

Four primitives unified: (1) owned cohort alignment — LTH/ETF agreement; (2) Trap Divergence — price-vs-signals divergence flags; (3) domain-weighted signal voting — source conflicts resolved by declared authority; (4) Composite Gauge — 4-layer weighted vote.

Conflict types detected: pairwise — two individual sources disagree; cross-layer — Macro says one thing, On-Chain says another; temporal — short-term (funding/sentiment) vs long-term (halving/Tier 1). Each conflict reduces overall confidence by 5-15% depending on severity.

Authority override: Tier 1 on-chain sources (Puell, MVRV, NUPL, Supply-in-Profit) with |score| = 3 can override up to 2 dissenting lower-tier sources. This prevents a single noisy sentiment reading from swamping a clear structural signal.

Steelman: Every verdict carries a mandatory counter-case — the strongest evidence-based argument against the consensus. A Truth Engine without an adversarial counter-case is just an average.

Signal feeds: all inputs already in the Macro snapshot (~30 feeds across L1 Macro, L2 Cycle, L3 On-Chain, L4 Execution). No new API calls. Backend-computed, 60s cache.

34Entity Regime · Who Is Driving the Cycle

Standard cycle indicators tell you WHERE you are in the cycle. Entity Regime tells you WHO is driving it — which changes everything about what the signal means.

In the ETF era, "LTH supply dropping" can mean either: (a) bearish — old whales distributing into exchange demand, or (b) bullish — coins being absorbed by structural ETF bid. The current classifier uses owned on-chain, ETF-flow, spot-premium, and cycle caches; missing inputs are surfaced as input coverage rather than quietly treated as neutral.

Active regime types: Retail Distribution (LTH → exchanges → demand, classic top risk); Miner Capitulation (forced selling below breakeven, bottom signal); Miner OTC Absorption (miner sell pressure without exchange confirmation); Double Exit (LTH + miners both distributing, strongest bear); Structural Bid (ETF inflows + LTH holding, strongest bull); Stablecoin Buildup (dry powder accumulating); Regime Confusion (signals contradict, wait for clarity). Retired third-party label modes stay retired unless a real owned replacement exists.

How to use it: trade with the regime only when the driver, evidence chips, and cross-source check line up. When the panel says Regime Confusion, it is telling you not to force a narrative; the highest-EV move is waiting for the supply cohorts to agree.

Zero new API credits. Reads existing on-chain metric parquets (LTH supply, miner outflow, exchange balances), ETF-flow history, spot-premium context, and stablecoin context. No additional private-source calls. Heuristic-first decision tree; historical tracking lives in the entity-regime accuracy table.