Return to the dashboard →METHODOLOGY · V1

How Market Temperature Works

Market Temperature is Bitcoin Neon's visualization of Bitcoin's historical market condition using two measurements: price relative to its 200-day moving average and RSI (14). It describes those measurements; it does not predict Bitcoin's future price.

THE FORMULAMarket Temperature = (200-Day MA Score × 60%) + (RSI Score × 40%)

Each component is independently normalized to a 0–100 score before the fixed 60/40 weighting is applied.

Component 1 — 200-Day Moving Average

A 200-day moving average is the arithmetic mean of Bitcoin's closing prices for the selected UTC day and the preceding 199 completed UTC days. Bitcoin Neon measures the percentage distance between that day's close and its 200-day average:

Distance % = ((daily close ÷ 200-day average) − 1) × 100

The distance is converted to a score by linear interpolation between these published anchors. Values outside the endpoints are capped.

−40% → 0−20% → 200% → 50+40% → 80+100% → 100

Component 2 — RSI (14)

RSI compares the size of recent upward and downward daily price changes. Bitcoin Neon uses the standard 14-period Wilder calculation: the first average gain and loss use 14 completed changes; each subsequent day uses Wilder's recursive smoothing with only that day and earlier data.

RSI = 100 − (100 ÷ (1 + average gain ÷ average loss))

Raw RSI is normalized by linear interpolation between these anchors, with readings outside the endpoints capped.

RSI 20 → 0RSI 30 → 20RSI 50 → 50RSI 70 → 80RSI 80 → 100

Reading the Temperature

0–20 — Deep Cool

Bitcoin is substantially below its longer-term trend, RSI is low, or both.

21–40 — Cool

The combined measurements are below their neutral region.

41–60 — Neutral

Price extension and momentum are near the middle of the configured ranges.

61–80 — Warm

The combined measurements are elevated above their neutral region.

81–100 — Hot

Bitcoin is substantially extended above its longer-term trend, RSI is high, or both.

These descriptions are historical measurement labels, not recommendations to buy, sell, or hold Bitcoin.

Continuous display color

The ribbon and probe interpolate continuously between five color anchors: 0 deep green (#006B3C), 25 green (#24B65B), 50 yellow (#F6D54A), 75 Bitcoin orange (#F7931A), and 100 red (#E3342F). The exact resulting hex color is stored with every observation.

Historical integrity

Each observation uses only completed daily candles available at that point in time. Calculations are trailing—not centered—and never use future prices, moving averages, RSI values, or future smoothing. The unfinished current daily candle is excluded.

Data and reproducibility

V1 uses Kraken's XBT/USD daily closing candles. Each record contains the timestamp, close, 200-day average, percentage distance, raw RSI, both normalized component scores, composite temperature, classification, and exact display color.

Open the complete backtest-ready JSON data →

Return to the dashboard →