Building scans
Available on: Web · iOS · Android
On this page
A scan is a tree of filter groups. Each group decides how its filters combine, and a group can hold other groups, so one scan can ask for "a big move, or a smaller move on unusual volume". This page covers groups, nesting and switched-off filters. For the filters themselves, start with Scanner 101.
Tour
A nested group sits inside its parent's card, under the parent's own filters.
Each group has a header and a body:
- Group type (top left): All that match, Any that match or Exclude matching. Click or tap it to switch the type.
- Time Machine date: Latest, or the past date this group scans. Each group keeps its own. See Time Machine.
- +: adds a filter to the group. On web it also holds Insert group, which nests a new group inside this one.
- Trash icon: deletes the group, after a confirmation if it holds filters.
- Body: the group's filters, then any groups nested in it.
How groups combine
Every group combines its own filters, and the groups nested inside it, in one of three ways:
Groups that sit side by side, at the same level, add their results together. Then Exclude matching groups take their matches out. When the top level holds more than one group, web spells out the rule under the groups: (All results) ∪ (Any results) − (Exclude results).
The note appears when the top level holds two or more groups.
Two groups side by side widen the scan
Two All that match groups next to each other keep stocks that pass either group, not both. Put Market cap>10B in one and Market cap<1B in the other, and you get every stock above $10B plus every stock below $1B. To make a stock pass both groups, nest one inside the other.
Worked example: hot bull tickers
The scan in the tour reads like this:
Read it from the inside out:
- The innermost group needs both filters: a move above 5% and dollar volume more than three standard deviations above its 60-day average.
- The middle group is Any that match, so a stock gets in with a 15% move, or by passing the innermost group.
- The outer group is All that match, so whatever the middle group lets in must also trade over a million shares today.
In one line: Today's volume>1M and (Percent price change≥15% or (RELVOL_STDDEV>3 and Percent price change>5%)).
Switch the middle group to All that match and the list shrinks: a stock then needs the 15% move and the volume spike. Switch it back and the list grows again.
- Click Filters, then Add group, then pick a type. Ctrl+G adds an All that match group.
- Use + on the group to add filters.
- Click + on the parent group.
- Point to Insert group and pick a type.
The new group appears inside the parent, under its filters. Repeat on the new group to go a level deeper.
Change a group's type
Click or tap the type in the group's header (All that match) and pick another. The filters stay put.
Move a filter to another group
Drag the filter row onto the other group. The group lights up while the row is over it.
Switch a filter off
A switched-off filter stays in the scan's tree but takes no part in the scan. Use it to test what one filter adds without losing its settings.
- Open the filter row's … menu.
- Choose Disable. The row grays out.
- To bring it back, choose Enable from the same menu. On web, the row also shows an Enable button.
A switched-off filter doesn't count toward your plan's filter limit, and it stays switched off when you save the scan. A group whose filters are all switched off drops out of the scan: it doesn't match nothing, it stops counting.
Locked filters
A filter row your plan can't run shows the plan it needs, Super or Super Pro, with a lock, and the row dims. Hover the label on web to see why ("Fundamental filters require Super or higher"). Click it to open the plans page. On mobile, the row's … menu shows Unlock with Super or Unlock with Super Pro.
You meet locked rows in two ways:
- An AI-built scan. When you ask for something your plan doesn't include, the AI keeps that filter in the scan, locked and switched off. The rest of the scan runs.
- A scan from a higher plan. A scan saved before a downgrade, or filters you import, can hold rows your plan can't run that are still switched on. The scan stops with a Scan error that names the filter type. Delete the row, or upgrade.
You can't switch a locked row on or off yourself. Upgrade, and every lock clears on its own, with nothing to rebuild. In the add-filter menu, filter types your plan doesn't include are grayed out. Scanner 101 lists which plan each type needs.
Reference
Common shapes
Limits
Recipes
Hot bull tickers
Stocks up 15% or more, or up more than 5% on a dollar-volume spike, all trading over a million shares today.
Filters
- Today’s volume>1M
- Any of
- Percent price change≥15%
- All of
- Relative volume(bar_dollar_volume,60)>3
- Percent price change>5%
- How to use it
The two ways in catch different moves. A 15% move is easy to see. A 5% move on three standard deviations of dollar volume often means news has just landed. Open the chart and check the volume bar before you trust either.
- Warning
Today's volume and change come from the session in progress, so the list changes through the day and may not match the close.
Hot Stocks
The same tree in both directions: up or down 15%, or up or down more than 5% on a dollar-volume spike, in stocks that average $10M a day.
Filters
- Today’s volume>1M
- SMA(bar_dollar_volume,50)>10M
- Any of
- Percent price change≥15%
- Percent price change≤-15%
- All of
- Relative volume(bar_dollar_volume,60)>3
- Any of
- Percent price change<-5%
- Percent price change>5%
- How to use it
Sort by % change to split the runners from the fallers. The extra gate on 50-day average dollar volume keeps thin names out.
- Warning
A fall and a rise land in the same list. Check the sign of the move before you act on a row.
Tips
- Build from the outside in. Put the filters every result must pass, like Today's volume>1M, in the top group, then nest the either/or logic under it.
- Before you add a second top-level group, decide whether you mean "or". Side by side means or. Nested means and.
- Switch a filter off instead of deleting it when you want to see what it costs you. Rescan, compare the match count, then switch it back on.
- Use Exclude matching for the stocks you never want, like a sector you don't trade. A scan with only an Exclude group returns your whole universe minus its matches.



