WhitmanTrading

How to Build a Watchlist

To build a watchlist, define the setup you are looking for in one sentence and filter for names that meet it. Then cap the list at a length you can actually read, write a level and an invalidation next to every name, and rebuild it on a schedule so stale entries fall off without a decision.

A watchlist exists to make the next decision smaller. If it does not narrow anything, it has become a second copy of the market and it is costing attention without saving any.

Before you start

A setup you can describe in one sentence, so a name either qualifies or does not. Ambiguity here produces a list of things that looked interesting, which is not a list of anything.

A maximum length decided in advance, because an unlimited list is not a list. Ten to twenty names is readable. Fifty is a screen output you never got round to filtering.

A scheduled time to rebuild it, so stale names leave without a decision. Names removed on a schedule leave quietly; names removed by choice never do.

The steps

1. Write the setup in one sentence

A candlestick chart with one specific condition marked.
One sentence decides what qualifies. Illustrative chart - not real market data.

“Liquid names pulling back to a rising 50-period average.” That sentence is the membership test, and anything that does not meet it does not go on the list regardless of how it looks.

2. Filter for liquidity before anything else

The first half of a price series with a volume threshold.
Unfillable names come out first. Illustrative chart - not real market data.

A name you cannot enter and exit at a sensible price is not a candidate. Removing those first stops them consuming attention for the rest of the process.

3. Cap the list and enforce the cap

A section of the price series narrowed to a few instruments.
A hard limit forces a comparison. Illustrative chart - not real market data.

If the cap is 15 and you have 22 candidates, seven have to go. That forced comparison is the most useful step in the whole process and it only happens because the cap exists.

4. Write a level and an invalidation next to every name

A window of price bars with an entry and an exit level drawn.
A name without a level is a name you will improvise on. Illustrative chart - not real market data.

Where you would act and where the idea stops being true. Two prices. Without them the list is a reminder to look, which is not the same as preparation.

5. Set alerts at those levels instead of watching

The second half of a price series reaching a marked level.
An alert removes the need to stare. Illustrative chart - not real market data.

The list is now a set of conditions rather than a set of charts. Alerts convert watching into waiting, which costs nothing and removes the temptation to act early.

6. Remove names on the schedule, not on feeling

A range-bound stretch where a condition has expired.
Stale names leave on a date rather than an argument. Illustrative chart - not real market data.

Each rebuild, every name is re-tested against the sentence. A name that no longer meets it comes off, even if it has been on the list for 6 weeks and you have grown attached to it.

7. Record which names produced trades and which expired

A long-horizon view of a list tracked over time.
The hit rate of the list is the thing to measure. Illustrative chart - not real market data.

Over 10 rebuilds you will know what proportion of listed names ever reach their level. That number tells you whether the setup sentence is too loose or too tight.

How to tell it worked

The list is at or under its cap, every time. A cap that is regularly exceeded is not a cap.

Every name has 2 prices written next to it. Names without them are reminders rather than preparation.

Most names expired without producing a trade. A list where every name gets traded is a list that was never filtering anything.

And the rebuild happened on schedule for the last 4 weeks, rather than when you happened to think of it.

What a watchlist is not

A candlestick chart annotated with the round-trip cost of a switch.
Every name traded costs, and most should not be. Illustrative chart - not real market data.

It is not a set of trades. On this site’s shared series a round trip measures about 2% of the median bar range of 0.493, so treating a 15-name list as 15 positions pays that cost fifteen times for a list that was only ever a filter. The figures are in research/series-measurements.json.

A candlestick chart with a volume histogram beneath it.
And a thin name looks the same on a list as a liquid one. Illustrative chart - not real market data.

It is also not a portfolio. Fifteen names on one theme is one exposure, and the list’s format hides that completely — the correlation check happens at the position level rather than here.

How long the list should be

The cap comes from how long you will actually spend on it, not from how many names qualify. Ten names at three minutes each is half an hour, which is a routine somebody can sustain daily.

Forty names at the same three minutes is two hours, which nobody does — so in practice a forty-name list gets skimmed, and skimming is what produces trades taken on appearance.

Which means the cap is really a statement about your morning rather than about the market. Set it to what fits, and let the forced comparison remove the rest.

The original data

Of the 24,971 unique videos in research/search-study-corpus.jsonl, 10 mention watchlists in the title, at a median of 518 views across 10 channels — and 90% of those titles are instruction-shaped. Screeners appear in 10 instruction-shaped titles at 47,614 and trading plans in 23 titles at 10,042. The counts come from site/corpus_count.py and site/rank_howto.py.

A candlestick series with several gaps, the largest of them marked.
A gap can take a name through its level overnight. Illustrative chart - not real market data.

10 videos at a 518 median — the lowest audience in the preparation category. Nearly all of it is instruction-shaped, so the coverage is trying to teach the procedure and almost nobody is searching for it, which is the profile of a step people skip rather than one they struggle with.

A stretch of price bars cut short at a decision point.
A name ran without you. Add it now? Illustrative chart - not real market data.

The answer to the question on that chart is that adding it now is adding it after the setup has gone. The sentence describes a condition, and a name that has already moved no longer meets it. Watching something because it moved is how a filtered list becomes a list of whatever is currently interesting — which is the market again, at 200 names.

When it fails

The failure is a list that only grows, and it degrades so slowly nobody notices. Names are added when they look promising and removed almost never, because removing one feels like admitting the original judgement was wrong. Six months later it holds 80 names, none of them has a level written next to it, and the morning routine is scrolling rather than preparing. The list did not stop working — it stopped being a list.

The second failure is a name without a level. It guarantees the reasoning happens live.

A third is no cap. Without one, nothing is ever compared against anything.

A fourth is expecting most names to trade. Most should expire.

A fifth is treating the list as diversified. Fifteen names on one theme is one bet.

And a sixth is rebuilding it only when it feels stale. By then it has been stale for weeks.

Trading plan is where the setup sentence comes from. Backtesting software is how you find out whether the sentence describes anything worth watching. And top-down analysis is the process that narrows a market to a list in the first place.

What I actually do

The change that made mine useful was writing the level next to each name rather than just the ticker. A bare list means arriving at the chart with no prior decision and reading it live, which is when the reasoning gets fitted to whatever the price is doing. A level written yesterday is a decision that already happened.

— Michael Whitman

This page is educational, not financial advice. Test every idea on your own charts before risking money.