On 2026-08-21, Coca-Cola (KO) closed at 91.1 USD, up 0.66% on the day. It trades at 97.1% of its 52-week range. Its RSI(14) of 70.78 is in the 95th percentile of its history since 1962. Its 20-day return of +10.76% is in the 95th percentile. RSI above 70 is conventionally termed overbought. Its RSI last entered overbought 0 days ago (2026-08-21) and oversold 665 days ago (2024-10-25). It is trading above its 20-, 50- and 200-day moving averages. Its 20/50/200-day moving averages are 87.73 / 84.31 / 77.49 USD, with price +3.84% / +8.05% / +17.56% against them. Its moving averages stack 20-day > 50-day > 200-day. Its 52-week range is 65.35–91.87 USD; it closed 0.84% below the high and 39.40% above the low. The high was set 1 days ago (2026-08-20) and the low 326 days ago (2025-09-29). It is 0.84% below its all-time high, set 1 days ago (2026-08-20). Its 20-day volatility is 1.403% daily, in the 60th percentile of its history since 1962. Its realized volatility across horizons is 5-day 1.190%, 20-day 1.403%, 60-day 1.574%, and 120-day 1.335% daily. Annualized, these are 5-day 18.9%, 20-day 22.3%, 60-day 25.0%, and 120-day 21.2%. Its 14-day average true range (ATR) is 1.61 USD, 1.77% of price. It has returned +3.87% (89th pctile) over 5 days, +4.65% (86th) over 10 days, +10.76% (95th) over 20 days, +11.61% (82nd) over 60 days, +13.56% (73rd) over 120 days, and +28.85% (79th) over 252 days. Against the S&P 500, its weekly-return beta -0.04 / correlation -0.03 (52-week); beta -0.02 / correlation -0.01 (26-week). Relative to the S&P 500, it has returned +7.22% (20-day), +9.57% (60-day), and +8.86% (252-day). Its weekly-return correlation to the change in the US 10-year TIPS real yield is -0.10 (52-week); -0.03 (26-week). Next earnings are scheduled for 2026-10-20.
Technical assessment
A transparent, rules-based reading of the statistics on this page — informational and educational only, not investment advice or a recommendation to buy or sell. Hover any row for the metrics behind it; full numbers are in the sections below.
Rules-based summary: Positive?
| Factor | Reading | Assessment |
|---|---|---|
| Short-term momentum | Improving | |
| RSI | Overbought | |
| Medium-term trend | Improving | |
| Moving averages | Bullish | |
| Relative performance | Outperforming |
Risk & context
- Volatility: Elevated
- 52-week position: Near 52-week high
- Beta: Low
- Relative volume: Normal
- Earnings: Distant
Price and momentum
- Close
- 91.1 USD
- Daily change
- up 0.66%
- RSI (14)
- 70.78 — 95th percentile since 1962 (15118 obs)
- RSI last overbought
- 0 days ago (2026-08-21)
- RSI last oversold
- 665 days ago (2024-10-25)
- MACD (12, 26, 9)
- +1.65 (above signal) · signal +1.38 · histogram +0.27
- 20-day return
- +10.76% — 95th percentile since 1962 (15112 obs)
Session
- Listing
- Exchange: NYSE, Currency: USD
- Open
- 90.85 USD
- High
- 91.2 USD
- Low
- 90.32 USD
- Prior close
- 90.5 USD
- Gap (overnight)
- +0.39% — 79th percentile by magnitude since 1962 (15131 obs)
- Intraday range
- 0.97% of price — 17th percentile since 1962 (15132 obs)
- Close position
- 88.6% of range
- Up days (history)
- 44.8% of 15131 sessions
Moving averages
| Period | Value | Price vs MA |
|---|---|---|
| 20-day MA | 87.73 USD | +3.84% |
| 50-day MA | 84.31 USD | +8.05% |
| 200-day MA | 77.49 USD | +17.56% |
200-day MA trend
- Slope (20-session)
- +2.56% · rising
Moving-average crossovers
- 20-day / 50-day
- 20-day crossed above 50-day · 2026-05-11 (102d ago)
- 20-day / 200-day
- 20-day crossed above 200-day · 2026-01-20 (213d ago)
- 50-day / 200-day
- 50-day crossed above 200-day · 2025-12-17 (247d ago)
52-week range
- Position
- 97.1% of range
- Drawdown from all-time high
- -0.84% · 1 days ago (2026-08-20)
- Maximum drawdown (10-year, close-basis)
- -37.54% · 2020-02-21 60.13 USD → 2020-03-23 37.56 USD · recovered 2022-01-04
- 52-week high
- 91.87 USD · price -0.84% · 2026-08-20 (1d ago)
- 52-week low
- 65.35 USD · price +39.40% · 2025-09-29 (326d ago)
Price history
Volatility
- 5-day realised volatility
- 1.190% daily · 18.9% annualized — 54th percentile since 1962 (15127 obs)
- 20-day realised volatility
- 1.403% daily · 22.3% annualized — 60th percentile since 1962 (15112 obs)
- 60-day realised volatility
- 1.574% daily · 25.0% annualized — 70th percentile since 1962 (15072 obs)
- 120-day realised volatility
- 1.335% daily · 21.2% annualized — 51st percentile since 1962 (15012 obs)
- Relative volume
- 0.97× 20-day average — 57th percentile since 1962 (15112 obs)
- Volume
- 15.5M shares
- 3-month avg volume
- 17.6M shares/day
- Dollar volume
- $1.4B — 74th percentile (trailing 252 sessions)
- 20-day avg $ volume
- $1.4B
- ATR (14)
- 1.61 USD · 1.77% of price — 49th percentile since 1962 (15118 obs)
Volatility by rate-era
- pre-crisis
- 1.70% (data from 1962-01-02)
- ZIRP-2009
- 1.04%
- tightening-2015
- 0.84%
- ZIRP-2019
- 1.51%
- tightening-2022
- 1.06%
- easing-2024
- 1.06%
Returns
- 5-day
- +3.87% · from 87.71 USD on 2026-08-14 — 89th percentile since 1962 (15127 obs)
- 10-day
- +4.65% · from 87.05 USD on 2026-08-07 — 86th percentile since 1962 (15122 obs)
- 20-day
- +10.76% · from 82.25 USD on 2026-07-24 — 95th percentile since 1962 (15112 obs)
- 60-day
- +11.61% · from 81.62 USD on 2026-05-27 — 82nd percentile since 1962 (15072 obs)
- 120-day
- +13.56% · from 80.22 USD on 2026-03-02 — 73rd percentile since 1962 (15012 obs)
- 252-day
- +28.85% · from 70.70 USD on 2025-08-20 — 79th percentile since 1962 (14880 obs)
- Year to date
- +30.31%
Market factor
- S&P 500 (52-week)
- beta -0.04 · correlation -0.03
- S&P 500 (26-week)
- beta -0.02 · correlation -0.01
- Nasdaq 100 (52-week)
- beta -0.16 · correlation -0.17
- Nasdaq 100 (26-week)
- beta -0.13 · correlation -0.14
- Consumer Staples (XLP, 52-week)
- beta +0.89 · correlation +0.68
- Consumer Staples (XLP, 26-week)
- beta +1.16 · correlation +0.76
- Relative to S&P 500 (20-day)
- +7.22% · S&P 500 +3.54%
- Relative to S&P 500 (60-day)
- +9.57% · S&P 500 +2.05%
- Relative to S&P 500 (252-day)
- +8.86% · S&P 500 +19.99%
- Relative to Nasdaq 100 (20-day)
- +6.49% · Nasdaq 100 +4.27%
- Relative to Nasdaq 100 (60-day)
- +13.81% · Nasdaq 100 -2.19%
- Relative to Nasdaq 100 (252-day)
- +2.78% · Nasdaq 100 +26.07%
- Relative to Consumer Staples (XLP, 20-day)
- +8.55% · XLP +2.21%
- Relative to Consumer Staples (XLP, 60-day)
- +9.95% · XLP +1.67%
- Relative to Consumer Staples (XLP, 252-day)
- +25.53% · XLP +3.33%
- 10Y TIPS real-yield change (52-week)
- correlation -0.10
- 10Y TIPS real-yield change (26-week)
- correlation -0.03
Earnings
- Next scheduled
- 2026-10-20 (60 days)
Metric definitions & methodology
This page reports market statistics computed from daily closing data. It states figures and their historical context, and adds a Technical Assessment: a transparent, rules-based reading that translates those same statistics into plain-language readings. Every reading follows a fixed, published rule and traces back to the metrics on this page. It is informational and educational only — not investment advice, a rating, a price target, a forecast, or a recommendation to buy or sell.
- RSI (14) — Relative Strength Index
- Introduced by J. Welles Wilder in New Concepts in Technical Trading Systems (1978): a 14-period smoothing of average gains versus average losses (RSI = 100 − 100 / (1 + average gain / average loss)); the 14-period Wilder recursion runs over a trailing 252-session window. By Wilder’s convention, readings above 70 are termed overbought and below 30 oversold (some practitioners use 80/20). This page reports the value and its own-history percentile without labelling the instrument. The displayed value is today’s reading from that recursion; the percentile compares it against this instrument’s entire available history.
- 20-day volatility
- Sample standard deviation of the last 20 daily simple returns, expressed as a daily percentage. This is realized (historical) volatility, computed from past closes — not implied volatility.
- ATR (14) — Average True Range
- Wilder’s 14-period average of the daily true range — the greatest of (high − low), |high − previous close|, and |low − previous close| — computed over a trailing 252-session window. Reported in USD and as a percentage of price.
- Moving averages
- Simple (unweighted) means of the closing price over the trailing 20, 50, and 200 sessions.
- 52-week range position
- Where the latest close sits between the lowest low and highest high of the last 252 sessions, as a percentage (0% = period low, 100% = period high).
- N-day returns
- Simple close-to-close percentage change over each trailing horizon shown (in trading sessions).
- Volatility by rate-era (cycle)
- Mean daily realized volatility (sample standard deviation of daily returns) within each US-rate-cycle window: ZIRP-2009 (2009-01 to 2015-11), tightening-2015 (2015-12 to 2018-12), ZIRP-2019 (2019-01 to 2021-12), tightening-2022 (2022-01 to 2023-12), easing-2024 (2024-01 onward); pre-crisis covers dates through 2008-12. Where an instrument’s history starts mid-era, the first available date is noted.
- “Percentile of own history”
- Each percentile ranks today’s reading against this instrument’s own past readings of the same metric — not against other instruments. The basis is labelled “since YEAR (N observations)”. Flat placeholder bars (days a feed stamped a single settle price, so open = high = low = close) and the current unfinished session are excluded, so N counts genuine trading sessions and can be fewer than the calendar days since that year. Percentiles appear only once enough history exists to compute them. The rank is empirical with no interpolation: the count of past readings strictly below today’s value, plus half of any exactly equal to it, divided by the observation count (the midrank rule for ties). Dividing by that count places the percentile in [0, 100), so a fresh all-time extreme reads just under 100 rather than exactly 100.
- Session (open, high, low, prior close)
- The current session’s raw daily bar: opening price, intraday high and low, and the previous session’s close. Reported as-is from the daily feed.
- Gap (overnight)
- The opening price versus the prior session’s close, as a percentage ((open − prior close) / prior close). It isolates the overnight move — the part of the day’s change that happened before the session opened — from the intraday move. Reported as a fact, not a signal.
- Intraday range
- The session’s high minus its low, as a percentage of the close. It shows how much the price actually travelled during the session, which a close-to-close change alone can hide (a near-flat close can still be a wide-range day).
- Close position
- Where the close settled within the session’s high–low range (0% = at the low, 100% = at the high). Withheld on the rare bar whose close falls outside its own high–low, where a position figure would be undefined.
- Moving-average crossovers
- The most recent date on which each moving-average pair (20/50, 20/200, 50/200) last changed order — the day the shorter-window average last moved above or below the longer-window one — with the calendar days since. This is a dated record of when the averages last crossed, stated as a fact; it is not a buy or sell signal and carries no “golden cross” / “death cross” interpretation. A pair is shown only once enough history exists to observe a crossing, and omitted if the averages have not changed order in the available series.
- MACD (12, 26, 9) — Moving Average Convergence Divergence
- The MACD line is the 12-period exponential moving average (EMA) of closing price minus the 26-period EMA; the signal line is the 9-period EMA of the MACD line; the histogram is the MACD line minus the signal line. All three are computed from this instrument’s own daily closes. Values are in price units and are neither bounded nor normalized, so they are reported as levels (with the histogram’s sign stated as a fact) rather than as an own-history percentile.
- S&P 500 beta and correlation
- Computed from weekly returns of the stock versus weekly returns of the S&P 500 index, over trailing 26-week and 52-week windows. Beta is the slope (how much the stock’s weekly move tends to scale with the market’s); correlation is the strength of the linear relationship (−1 to +1). Reported as measured; no causal claim is made.
- Return relative to S&P 500
- The stock’s own N-day return minus the S&P 500’s return over the same trailing horizon — a simple difference of the two close-to-close percentages, not a beta-adjusted or regression-based excess. A positive figure means the stock outpaced the index over that window; a negative one means it lagged. Reported as measured, over the horizons shown.
- Sector beta and correlation
- The same weekly-return method as the S&P 500 market factor, measured against the SPDR Select Sector ETF for this stock’s GICS sector (named per stock, e.g. XLK for Information Technology). Read alongside the S&P figure it separates how much of the move tracks the broad market from how much tracks the stock’s own sector. Reported as measured.
- Nasdaq 100 beta, correlation and relative return
- The same weekly-return beta and correlation method as the S&P 500 market factor, and the same N-day relative return, measured against the Nasdaq-100 (the QQQ ETF) over trailing 26-week and 52-week windows. The Nasdaq-100 is a growth- and technology-tilted benchmark, so reading it beside the S&P figure shows how much of the stock’s move tracks the broad market versus the large-cap growth complex — for a technology name the two run close, while for a non-technology name they can diverge. Prices are the QQQ close on the same split-adjusted, price-return basis as the S&P series, so the comparison is like-for-like. Reported as measured; no causal claim is made.
- Real-yield sensitivity
- Correlation of the stock’s weekly returns to the weekly change in the 10-year US Treasury inflation-protected (TIPS) real yield, over 26-week and 52-week windows. Reported as measured.
- Relative volume (RVOL)
- Today’s reported trading volume divided by its own trailing 20-day average volume. Because it is a ratio it is scale-free — it reflects how today’s activity compares to the recent norm, independent of any multi-year drift in the stock’s overall trading volume. Volume is split-adjusted on the same basis as the price series. The percentile ranks today’s RVOL against this stock’s full history of daily RVOL readings.
- Close basis
- The close is the official regular-session closing price for the stated date — not an intraday, pre-market, or after-hours price — reported as-is from the daily feed.
- Price adjustment
- Equity prices are split-adjusted but not dividend-adjusted: every close, return, moving average, RSI and range figure is a price-return series (Yahoo Finance “Close” with stock splits folded in, dividends excluded — the dividend-reinvested “Adjusted Close” is not used). This is deliberate: it reflects the tradable price path rather than total return, so multi-year returns and drawdowns read lower than a dividend-reinvested total-return series by roughly the cumulative dividend yield over the period. The S&P 500 series used for the relative-return and beta figures is adjusted on the same price-return basis, so the comparison is like-for-like.
- Dollar volume
- The session’s share volume multiplied by the closing price — the day’s traded notional. Its percentile is ranked over a trailing window (labelled inline, e.g. “trailing 252 sessions”) rather than full history: unlike the scale-free RVOL ratio, raw dollar volume drifts with years of price growth, so a full-history rank would mostly reflect where the price level sat, not how active the day was. A low percentile therefore means a light-notional day relative to the recent year, not an all-time extreme.
- 20-day average dollar volume
- The mean of the trailing 20 sessions’ dollar volume (share volume times close). Shown alongside the day’s dollar volume as the recent-norm baseline it is measured against.
- Drawdown from all-time high
- The latest close versus the highest intraday high in this instrument’s available history, as a percentage ((close − all-time high) / all-time high). Always zero or negative. The all-time-high date is shown alongside.
- Maximum drawdown (10-year, close-basis)
- The deepest peak-to-trough decline in the closing price over the trailing ten years (about 2,520 trading sessions) — the largest fall from a running maximum close to a subsequent low close, as a percentage. Distinct from “drawdown from all-time high” above in two ways: it is measured close-to-close (not against the intraday all-time high), and it reports the worst completed episode within the window rather than the distance from today. The window is deliberate: a full-history figure would be dominated by very early, penny-scale split-adjusted prices whose percentage moves are not representative of the stock’s current risk. The peak and trough dates are shown, with the recovery date (the first close at or above the prior peak) when it has occurred, or “not yet recovered” when the price has not reclaimed that peak within the window. A shorter-history stock is labelled by its actual span (e.g. “5y history”) rather than ten years. Stated as a fact, not a forecast.
- Year-to-date return
- The change in closing price from the last trading day of the previous calendar year to the latest close, as a percentage. Calendar-anchored, unlike the fixed-length N-day horizons above — so early in the year it spans few sessions, and it is reported as a plain figure without an own-history percentile (a variable-length window would rank unlike periods against each other).
- 200-day moving-average slope (20-session)
- The 200-day moving average now versus its level 20 trading sessions ago, as a percentage, labelled rising or falling. It separates price sitting below a rising long-term average from below a falling one — a direction-of-trend fact about the average itself, not a buy or sell signal.
- Up-day frequency (own history)
- The share of this instrument’s past sessions that closed higher than the prior session (close > prior close), over the N genuine trading sessions counted. A base rate for context, not a prediction; flat and placeholder bars are excluded on the same basis as the percentiles.
See where Coca-Cola (KO) ranks among today’s most statistically unusual readings on the cross-asset market screener.
On 2026-08-21, Coca-Cola (KO) ranked #13 of 59 instruments across all markets covered, sorted by how statistically unusual each day’s reading was (cross-asset market screener).
See what an RSI extreme has historically been followed by for Coca-Cola (KO) in the Coca-Cola (KO) RSI overbought & oversold — historical track record.