← Back to Docs

Scoring Formulas

Exact thresholds and weights from the production calculator (regime_calculator_v3.ts)

Overview

The system uses four pillars, each scoring from −10 (extremely bearish) to +10 (extremely bullish). Each pillar is computed from weighted sub-components and normalized to the −10/+10 range. The final regime score is a weighted average of the four pillar scores.

Final score formula
final_score = (price × 0.30) + (liquidity × 0.30) + (derivatives × 0.25) + (volatility × 0.15)
30%Price & Structure
30%Liquidity
25%Derivatives
15%Volatility
Pillar 1

Price & Structure

weight: 30%

Market sentiment is measured via the Fear & Greed Index (0–100). Moderate greed is bullish; extreme greed triggers a contrarian penalty, and extreme fear is treated as risk-off.

Component: Fear & Greed Index: 100% weight within pillar
Index ValueRaw ScoreInterpretation
0 – 10-6Extreme Fear: risk-off conditions
11 – 25-3Fear: bearish conditions
26 – 400Mild Fear: neutral
41 – 60++3Neutral to Mild Greed: healthy conditions
61 – 75++5Greed: bullish, peak signal
76 – 90++2High Greed: caution, momentum may fade
91 – 100-2Extreme Greed: contrarian bearish
Normalization: Raw score (max absolute value: 6) is divided by 6 and multiplied by 10 to produce a pillar score in the −10 to +10 range. A raw score of +5 yields a pillar score of +8.33.
Pillar 2

Liquidity

weight: 30%

Three signals measure capital flows into and out of Bitcoin: stablecoin supply growth, spot ETF net flows, and BTC exchange netflows. The 7D and 30D regimes use different rolling window sizes for these inputs: the scoring thresholds are identical.

Component A: Stablecoin Market Cap 7-day Change 25% weight within pillar

Rising stablecoin supply signals new capital entering the crypto ecosystem (bullish).

7-day Supply ChangeRaw ScoreSignal
> +2%++5Strong inflow
> +0.5%++3Moderate inflow
> 0%++1Slight inflow
> −0.5%−1Slight contraction
> −2%−3Moderate contraction
≤ −2%−5Heavy outflow
Component B: Spot Bitcoin ETF Net Flows (3-day rolling sum) 55% weight within pillar

Absolute USD million thresholds. Dominant ETFs: IBIT, FBTC, GBTC, ARKB, BITB.

3-day Net Flow (USD M)Raw ScoreSignal
> $500M++6Exceptional institutional demand
> $200M++4Strong inflows
> $50M++2Moderate inflows
> −$50M0Neutral (flat flows)
> −$200M−2Moderate outflows
> −$500M−4Heavy outflows
≤ −$500M−6Exceptional outflows / distribution
Component C: Exchange Netflow 20% weight within pillar

Positive = BTC flowing onto exchanges (distribution, bearish). Negative = BTC leaving exchanges (accumulation, bullish).

Netflow (USD M)Raw ScoreSignal
> $100M−5Large inflow: heavy distribution (bearish)
$0 to $100M−3Moderate inflow: distribution (bearish)
~$00Neutral: balanced flows
−$100M to $0++3Moderate outflow: accumulation (bullish)
< −$100M++5Large outflow: strong accumulation (bullish)
Pillar 3

Derivatives

weight: 25%

Three signals measure positioning health in perpetual futures markets. The funding rate is contrarian: overleveraged longs paying high premiums is a bearish warning, not confirmation.

Component A: Funding Rate (per 8h) 40% weight within pillar: CONTRARIAN

Raw rate in % per 8-hour settlement period (e.g., 0.010 = 0.010%). Normal BTC funding is around 0.010%. Rates above 0.030% indicate extreme long leverage.

Funding Rate (%/8h)Raw ScoreMarket Condition
> 0.030%−6Extremely overleveraged longs: reversal risk high
> 0.015%−3Elevated long leverage
> 0.005%−1Mildly elevated: normal but slight caution
> −0.005%++2Neutral to slightly negative: healthy positioning
> −0.015%++3Negative funding: shorts paying, contrarian bullish
≤ −0.015%++6Extreme negative: squeeze setup, strongly bullish
= 00No data
Component B: Open Interest 24h Change 30% weight within pillar

Rapid OI expansion signals unhealthy leverage building. Moderate stable OI is neutral to slightly positive.

OI 24h ChangeRaw ScoreSignal
> +10%−4Extreme leverage buildup: unstable
> +5%−2Heavy leverage building
> +2%++1Moderate increase: slightly healthy
> −2%++2Stable or slight decrease: healthy
> −5%0Moderate unwinding: neutral
≤ −5%−3Sharp deleveraging: possible panic
null0No data
Component C: Liquidation Cascade Ratio 30% weight within pillar

Ratio = 24h liquidations ÷ 7-day average daily liquidations. A ratio above 1.5 indicates an abnormal cascade event.

Spike Ratio (24h / 7d avg)Raw ScoreSignal
> 3.0×−6Extreme cascade: violent market dislocation
> 2.0×−4Large cascade: significant forced selling
> 1.5×−2Elevated: cascade event in progress
0.5 – 1.5×0Normal range: calm market
< 0.5×++1Very quiet: mildly positive
no data0Both 24h and 7d avg are zero
Pillar 4

Volatility

weight: 15%

Volatility is proxied using the magnitude of open interest changes and the liquidation spike ratio. Calm, stable markets score positively. High-volatility cascade events score negatively.

Component A: OI Change Magnitude |24h %| 60% weight within pillar

Absolute value of the 24h OI change. Large swings in either direction indicate elevated volatility. The 60/40 split applies when both components are present. If OI change data is unavailable, the pillar is computed from the Liquidation Vol component alone (weight normalizes to 100%).

|OI Change| 24hRaw ScoreVolatility Level
< 1%++3Very calm
< 3%++2Calm: normal activity
< 5%0Moderate: neutral
< 10%−2Elevated: increasing stress
≥ 10%−4Extreme volatility
Component B: Liquidation Volume Ratio 40% weight within pillar

Same ratio used in Derivatives Component C (24h liquidations ÷ 7d avg). Here it measures overall market stress, not directional risk.

Spike RatioRaw ScoreVolatility Signal
< 1.2×++2Calm: very low liquidation activity
< 1.5×0Normal range
< 2.0×−1Elevated: stress building
≥ 2.0×−3High: liquidation-driven volatility

Final Score & Regime Classification

Weighted average
final_score = (price_score × 0.30)
+ (liquidity_score × 0.30)
+ (derivatives_score × 0.25)
+ (volatility_score × 0.15)

Each pillar score is in the −10 to +10 range. The final score is also −10 to +10.

Regime thresholds
Final ScoreRegimeDescription
≥ +5.0RISK-ONStrong bull conditions across all pillars
≥ +2.0CAUTIOUS-BULLBullish but with some weakening signals
≥ −2.0NEUTRALMixed or indeterminate conditions
≥ −5.0CAUTIOUS-BEARBearish but not fully collapsed
< −5.0RISK-OFFStrong bear conditions: capital preservation mode

Hysteresis: Preventing Regime Whipsaw

A 0.5-point dead-band prevents rapid regime flipping at boundaries. The score must exceed a threshold by at least 0.5 points to trigger a regime change. For example, transitioning from NEUTRAL to CAUTIOUS-BULL requires a score of ≥ +2.5, not just ≥ +2.0, if the previous regime was NEUTRAL.