Day types
A trading session is not a random walk that happens to end somewhere. It usually takes one of a small number of recognisable shapes. Learning to name those shapes — and to hold more than one of them in mind at once — is the first genuinely useful skill in reading charts.
First: what "price action" means
Price action means reading a market from the price chart alone: the sequence of highs, lows, opens and closes, and nothing bolted on top. No moving averages, no oscillators, no indicators.
The argument is not that indicators are witchcraft. It is that every indicator is computed from price, so whatever an indicator knows is already in the chart, arriving later and smoothed. Reading price directly means you are looking at the thing rather than at a processed summary of it.
In practice a price-action reader describes behaviour, not values. Not "RSI is 71" but "each pullback is getting shallower and buyers keep stepping in above the previous low, so whoever is selling is not getting filled where they want". That description is the raw material. Day types are what you get when you compress a whole session of that description into one word.
The five-class scheme used here comes from the Al Brooks price-action tradition. Quant Data is independent research and is not affiliated with or endorsed by Al Brooks; the labels are ours, applied to our own data.
The five shapes
TrendUp
the most common single class — roughly 37% of sessions
Shape. Price opens near the low of the day and closes near the high. Most bars point the same way. Pullbacks happen, but they are shallow and they stop above the previous pullback's low. The chart drifts from bottom-left to top-right without ever giving latecomers a comfortable entry.
What it implies. Buyers are not waiting for a bargain, so the price never offers one. The measured behaviour: on a bull day the low of the day forms inside the first third of the session 83.3% of the time. Sellers who wait for a deep retracement mostly do not get one, and the crowd that spends the session waiting for a pullback watches the whole move from the sidelines.
The tradition teaches that number as 90%. Measured across 3,946 sessions it is 83.3% — right direction, inflated number. That gap is the theme of everything on this site.
TrendDown
the mirror image, and not quite symmetric
Shape. Opens near the high, closes near the low, bounces stay shallow and fail below the previous bounce's high.
What it implies. The mirror logic: sellers are not waiting for a better price. On a bear day the high forms early 80.4% of the time.
But it is not a perfect mirror, and this matters more than it sounds. In index products with long-run upward drift, downside structures behave differently from upside ones. Every bearish volume-price signal Quant Data tested on S&P 500 futures measured below 50% — the bearish reads systematically failed. Do not assume that inverting a bullish rule gives you a bearish one. See volume-price analysis for the measurements.
Range
where the famous "80% rule" lives
Shape. Price oscillates between roughly the same high and the same low for most of the session. Both edges get tested repeatedly. Moves that look like breakouts come back inside.
What it implies. Neither side can move price out of the zone, so participants who bought the top and sold the bottom keep getting punished and eventually stop. The tradition's headline claim is that about 80% of range breakout attempts fail. Measured on the same 16 years:
Under no reasonable definition does it reach 80%. The ceiling is about 70%, and only if you wait 20 bars. The phenomenon is real — most breakout attempts do fail — but the headline number has been repeated for years without anyone publishing the count. This result is stable across how tightly you define "range".
TrendingRange
the honest answer to "is it trending or ranging?"
Shape. A staircase. Price builds a range, breaks out, builds a new range higher (or lower), breaks out again. Zoom out and it trends; zoom in and every section looks like chop.
What it implies. This class exists because forcing every session into "trend" or "range" produces bad labels for a large fraction of days. It is the type that punishes both instincts: trend-followers get stopped out inside each range, range-traders get run over at each step.
It is also the reason the probability distribution is worth more than the label. When the model spreads weight across TrendUp and TrendingRange, it is telling you something real: direction yes, smooth ride no.
Reversal
the rarest, and the most expensive to be wrong about
Shape. Price runs decisively one way, turns, and closes near the opposite extreme. One of the day's two extremes is made early and the other late.
What it implies. The early move exhausted itself or ran into size going the other way. This is the type that turns a trend-day plan into a loss, because for the first half of the session a reversal day is indistinguishable from a trend day — that is the definition of the thing.
Which is exactly why the distribution matters. If the read is TrendUp 34% / Reversal 22%, the model is not being vague. It is telling you that roughly one time in five this particular shape has historically turned around, and that a plan with no answer for that case is incomplete.
Why a distribution beats a label
You will see tools that print "Today: Trend Up Day". Treat that with suspicion, because the session is not over and the shape is genuinely undecided.
Compare the two ways of reporting the same model output:
| Reported as a label | Reported as a distribution |
|---|---|
| Trend up day. | TrendUp 34%, Reversal 22%, TrendingRange 21%, Range 20%, TrendDown 3%. Top-2 coverage 56%. |
| Sounds certain. Is 34% likely. | Mild upward lean, live reversal scenario, near-certain this is not a downtrend, and the two leading scenarios together only cover a bit over half the outcome space — so this is a low-conviction session. |
The second version gives you something to do: hold two scenarios, notice which one the next hour rules out. The first version gives you a sentence to be wrong with.
A distribution also carries its own confidence. A read of TrendUp 71% / Range 12% / … is a different animal from TrendUp 29% / Range 26% / …, and a single label erases the difference entirely. When the five probabilities are nearly flat, the correct response is "the model does not know", which is useful information about a session.
Reading probabilities properly is a skill in itself — base rates, calibration, top-2 coverage. That is its own page, and it is the one to read next.
How Quant Data measures it
A model was trained on S&P 500 E-mini futures (ES) 5-minute bars from the regular US session, 2010 to 2026, and evaluated only on calendar years excluded entirely from training. It returns the five probabilities above for the session currently in progress.
Never quote the 66% without the 37%. An accuracy figure with no baseline is not information — a model that always guessed the most common class would score 37%.
Two limits worth stating plainly. First, the model is trained on index futures; a read on a single stock, on gold or on crypto still runs, but nobody has validated its accuracy there, so it is descriptive rather than tested. Second, the number of bars in the session so far changes what the read means. A read taken twelve bars in is a guess about a session that has barely started.
How to practise this
Reading day types is a perceptual skill, like sight-reading music or spotting a tell. It does not come from reading definitions — it comes from making calls and finding out you were wrong in a specific way. Deliberate practice with fast feedback.
Here is a routine that works, and it costs nothing but attention:
- Make your own read first, and write it down. Ninety minutes into a session, before looking at anything else, write five percentages that sum to 100. Forcing yourself to produce numbers rather than a word is most of the exercise.
- Then compare. Call
/v1/read/SPYand put the model's distribution next to yours. You are not looking for agreement — you are looking for the places you disagree, because that is where you are learning something. - Look at the analogs.
/v1/match/SPYreturns the most similar historical sessions by shape, with what each one turned into. When your read and the model's diverge, the analogs usually show you why. - Score at the close, on top-2. Was the eventual shape inside your top two? Top-2 is the fair test — with five classes and genuine ambiguity, insisting on top-1 makes you overconfident to score well.
- Keep the log and read it monthly. The value is in the pattern of your errors, not any single day. Almost everyone discovers a systematic bias: chronically under-weighting Reversal, or calling TrendingRange whenever they are unsure.
Thirty logged sessions is enough to see your own bias. Not enough to prove anything about the market — see sample size — but plenty to learn something about yourself, which is the point of the exercise.
Do not skip step one. Looking at the model's answer first and nodding is not practice, it is reading. The prediction has to be committed before the feedback arrives or nothing sticks.
Try it
The day-type read is the Brooks Daily Bias API — $30/month, one HTTP call, three endpoints. If you want your AI agent to do the comparison step for you, the quantdata-daily-bias Skill installs in about a minute, and the setup walkthrough covers every major agent.
Email for a key Read: how to read a probability
Next
Educational analytics. Nothing on this page is investment advice or a recommendation to buy or sell anything.