This is the first of a series on the two lists every day trader looks at: the biggest percentage
movers, and the biggest names by dollar volume. We have already measured
https://traderwe.com/research/top-gainers-by-percent-or-by-dollar-volume-the-same-day-two-lists-that
that they share almost no members. This piece asks the more basic question underneath that one.
What does a stock have to do to make either list? Not on average across a year, but on an ordinary
session, measured across 181 of them.
1. The bar for the percentage list
For each session we ranked every symbol with a daily bar by its open-to-close change and read off
the value at each rank.
| Rank | Median move needed | 10th percentile of sessions | 90th percentile |
| 10th | 46.4% | 37.7% | 58.4% |
| 30th | 25.9% | 21.6% | 31.1% |
| 50th | 20.0% | 16.7% | 23.8% |
| 100th | 13.4% | 11.2% | 17.0% |
On a typical session a stock had to close 46.4% above its open to be the tenth best performer in the
United States. Even the hundredth place required 13.4%.
The spread across sessions is narrower than people assume. The tenth-place bar sat between 37.7% and
58.4% on eight sessions out of ten. This is a stable competition, not a lottery that occasionally
produces a big number.
2. What happens when the name has to be tradable
The list above includes every symbol with a bar, which means it includes names quoted at a few cents
and names that traded a few thousand dollars all day. Ranking those alongside everything else is
what produces the headline numbers. Requiring that a name must be tradable changes the picture.
So we ran the same ranking again, requiring only two things: a closing price of at least $1, and at
least $1,000,000 of turnover on the day.
| Rank | Raw list | With $1 and $1,000,000 required | Ratio |
| 10th | 46.4% | 24.0% | 1.93 |
| 30th | 25.9% | 14.8% | 1.75 |
| 50th | 20.0% | 11.3% | 1.77 |
| 100th | 13.4% | 7.7% | 1.74 |
The bar roughly halves at every rank. About half of the apparent difficulty of reaching the top of
the percentage list comes from competing against names that most accounts cannot buy in size.
That ratio is the practical content of this piece. If you look at an unfiltered gainers list and
conclude that a large day is unremarkable, you are calibrating against a population you are not
trading. On the tradable list the tenth place asked 24.0% and the thirtieth asked 14.8%, so a move
in between those two is already a top-thirty day.
3. The other list is a different competition
Ranked by dollar volume the numbers are not in the same units, and that is the point.
| Rank | Median turnover needed |
| 10th | $11.44B |
| 30th | $3.98B |
| 50th | $2.57B |
| 100th | $1.51B |
Tenth place by dollar volume took $11.44B changing hands in a session, and the hundredth still took
$1.51B. Nothing about a percentage move gets a name onto this list. A stock can double and still be
nowhere near it, and a mega-cap can move a fraction of a percent and hold a permanent seat.
These are two different questions wearing the same word. One list asks who moved. The other asks
where the money went.
4. Why the change is measured from the open
We rank by the change from the session's open to its close rather than from the previous close, and
the reason is not cosmetic.
Prices in a raw daily feed are unadjusted, which we can see directly: the files that carry the flag
report it as false, and across the sample there were 632 instances of a symbol showing more than a
200% gain against its own previous close. Those are overwhelmingly splits and reverse splits rather
than moves anybody could have captured.
Measured against the previous close, the tenth-place bar reads 59.4% at the median with a 90th
percentile of 105.2%, against 46.4% and 58.4% from the open. The gap is the corporate action
contamination, sitting mostly in the extreme tail where it does the most damage to a ranking.
Open-to-close is immune to it, because both prices come from the same session and the same share
count. It is a different quantity from what a vendor list shows, and we would rather report a clean
definition than a familiar one.
5. The symbols that are not securities
One filter matters more than its size suggests. Exchanges publish test symbols on the live feed, and
they arrive in a daily bar file looking like any other row.
Ten of them appear in our sample. One, ZVZZT, cleared the $1 price and $1,000,000 turnover bar and
entered the tradable top ten on 64 of the 181 sessions, which is more often than any real company.
Left in, it pushes the tenth-place threshold up by 0.35 of a point.
Every number in this article excludes them. It is a small correction and an easy one to miss, and it
is the kind of row that quietly sits at the top of a screener without anybody asking what it is.
6. What to take from this
Fix the population before reading the number. A gainers list without a price and turnover filter is
mostly measuring the cheapest corner of the market, and every threshold you infer from it is roughly
twice what it should be.
Do not expect the two lists to answer each other. The dollar-volume list has a floor in the billions
and the percentage list has a floor in the tens of percent, and neither floor tells you anything
about the other.
Know which bar you are clearing. If a scan is set to alert at 10%, that is beyond the hundredth
place on the tradable list on a median session, which is a much broader net than it sounds.
7. What this does not measure
We are describing the composition of two rankings, not the behaviour of anything on them. Nothing
here says what happens after a name appears, and we did not measure returns.
Daily bars cannot tell us when in the session a move happened, so a name that ran in the first
minute and one that ground up all day are the same row here. Later parts of this series look at the
intraday side.
The universe is every US symbol with a daily bar, which includes instruments a retail account may
not be able to trade at all. That is deliberate for the raw list, since the point is to show what
the filter changes.
8. Sample accounting
The sample is 181 sessions between 2025-12-02 and 2026-08-21, drawn from 189 daily files. Eight
files were set aside because they held too few rows to rank, and the previous-close comparison uses
172 sessions because the first session of the sample has no prior day inside it.
A median session carried 11,984 symbols with a usable bar. Turnover is volume multiplied by the
volume-weighted average price from the same bar. Thresholds are the value sitting at the given rank,
and every figure quoted is the median across sessions unless a percentile is named.