RSI: Wilder's smoothed gains and losses
The RSI heatmap uses RSI(14) on 15m, 1h, 4h and 1d candles. Take each close minus the previous close: positive changes are gains, negative changes become positive losses. Seed each average with the arithmetic mean of the first 14 changes (15 closes). Then use Wilder smoothing: average_t = (13 × average_previous + change_t) / 14, separately for gains and losses.
RS = average gain / average loss; RSI = 100 − 100 / (1 + RS). When average loss is zero, RSI is 100 if average gain is positive; when both are zero, this site's flat-series result is 50. RSI measures the balance of changes, not the percentage return.
Our band constants are 70/30 for overbought/oversold and 60/40 for strong/weak boundaries. The actual inclusive-lower-bound labels are: RSI ≥ 70 Overbought; 60 ≤ RSI < 70 Strong; 40 ≤ RSI < 60 Neutral; 30 ≤ RSI < 40 Weak; RSI < 30 Oversold. Thus exactly 30 is labelled Weak in the cell, although the heatmap's oversold summary counts values ≤ 30.
Synthetic RSI example: not live data
Use these 15 synthetic closes: 100, 102, 101, 103, 102, 104, 103, 105, 104, 106, 105, 107, 106, 108, 107. The 14 changes contain gains totalling 14 and losses totalling 7. Average gain = 1; average loss = 0.5; RS = 2; RSI = 66.6667 (Strong). Append 109: smoothed gain = 15/14, loss = 6.5/14, and RSI = 69.7674. These examples illustrate arithmetic, not performance.
MACD: two EMAs and a signal line
The MACD screener uses MACD = EMA(12) − EMA(26); signal = EMA(9) of MACD; histogram = MACD − signal. Each EMA is SMA-seeded: average the first N valid values, then alpha = 2 / (N + 1) and EMA_t = EMA_previous + alpha × (value_t − EMA_previous). The signal seed uses the first nine valid MACD values. Its first value needs 34 closes; ranking requires at least 120 contiguous completed candles, with at most 250 used.
A bullish cross means previous histogram ≤ 0 and latest histogram > 0; bearish means previous ≥ 0 and latest < 0, on the latest completed candle. Landing exactly on zero is not a new cross. MACD, signal and histogram are in the contract's quote price units; histogram / close × 100 is the comparable percentage shown by the screener.
Synthetic EMA and MACD example: not live data
For synthetic closes 1, 2, 3, …, 120, EMA(12) seeds at 6.5 on close 12 and updates to 7.5 on close 13 (alpha = 2/13). EMA(26) seeds at 13.5 on close 26; EMA(12) there is 20.5. MACD = 7, its signal seeds at 7 on close 34, and the histogram is 0. At close 120, EMA(12) = 114.5 and EMA(26) = 107.5: MACD = 7, signal = 7, histogram = 0. This deliberately simple series is a calculation check, not a market forecast.
Moving averages: SMA20, SMA50 and crosses
The moving-average screener uses SMA(N) = sum of the last N completed closes / N, for 20 and 50 candles. Above both means close exceeds both averages; below both means it is below both; between means strictly between them. Equality to either average is neutral. The “20 vs 50” column separately compares the two averages.
A new bullish cross requires previous SMA20 − SMA50 ≤ 0 and current difference > 0; a bearish cross requires previous difference ≥ 0 and current difference < 0. A cross needs 51 contiguous candles. Distance from SMA50 = 100 × (close / SMA50 − 1), in percent. For the synthetic 1 through 120 series, SMA20 = 110.5, SMA50 = 95.5, and distance = 25.6545%. Price is above both; the latest candle has no new cross.
MACD and MA use completed candles only, without lookahead into an open candle. Gaps or invalid/incomplete buckets reset their usable run: they do not pretend missing time never happened. A stale latest candle cannot generate a current ranked signal. RSI differs: it includes the current open candle and smooths the available close series without the same contiguous-gap reset. Its live value can change before that candle closes.
Why screeners differ from charting platforms
These are perpetual contracts, not spot prices or a composite index. Each screener selects a most-traded eligible venue contract per coin from recorded Binance, Bybit and Hyperliquid public feeds; check the contract and venue displayed. Match the timeframe and candle boundary before comparing. Different venues, history lengths, seed conventions and open-versus-completed candles can produce different values, sometimes by several RSI points. The BTC strip above, when available, reuses the heatmap's cached view; it is separate from the synthetic examples.
Limits and references
These indicators lag price. RSI can stay above 70 during a sustained trend; crosses can reverse repeatedly in sideways markets. None establishes that a trade will profit. No backtest, predictive accuracy or trading recommendation is claimed here.
Original references: J. Welles Wilder Jr., New Concepts in Technical Trading Systems (1978), for RSI and Wilder smoothing; Gerald Appel, Technical Analysis: Power Tools for Active Investors (2005), for MACD. StockCharts ChartSchool's linked indicator documentation supplies secondary formula references; the candle, seed, band and coverage choices described here are this site's implementation.
Formula references checked on 17 October 2026: StockCharts ChartSchool: RSI · StockCharts ChartSchool: MACD. Not financial advice.