Filters, Saved Filters and the Scan Explainer

Updated November 4, 2026

Filters

A filter narrows whatever scan you are on. Turn on “Above VWAP” and “Relative Volume > 2” and every scan you open shows only the stocks that also pass those two tests, until you turn them off.

Open the filter dialog

  • Click Filters off ▾ above the results, then Edit Filter or New Filter.
  • Search for a filter by name and pick it. The dialog opens on that row.
  • Inside the dialog, the search box on the row under Build Scan with Zen lists matching filters; click one or press Enter to jump to it. Esc first closes the list, then clears the box, then closes the dialog.

The top of the dialog, from the top down: the scan’s name, description and direction; the Build Scan with Zen box, where you describe a change in words; then one row with the filter search, Jump to section ▾, Explain Results, Filter guide and Expand all. The Filters / Filter Builder switch sits in the title bar. When you scroll, a round arrow at the bottom right takes you back to the top.

Searching the filter dialog for "bounced off 50"
Searching the filter dialog for “bounced off 50”
The filter dialog: Build Scan with Zen, then search, Jump to section and the actions
The filter dialog: Build Scan with Zen, then search, Jump to section and the actions

Find a filter

Filters are grouped by subject. Click a group to open it; the number beside it tells you how many filters are on. Jump to section ▾ lists the groups and scrolls to the one you pick, with a count on the groups that have filters on. Expand all opens every group at once (it turns into Collapse all), and Filter guide opens Every filter, explained.

Jump to section: the groups, with a count on the ones that have filters on
Jump to section: the groups, with a count on the ones that have filters on
GroupWhat’s in it
FundamentalsPrice, market cap and float, earnings and news, recent and upcoming stock splits, on another scan / not on another scan, your flags, sectors.
Relative Strength and VolumeStrength against SPY, relative volume, volume building, high RVOL in the last 3, 5, 10 or 20 bars.
Trend & MomentumRSI and Laguerre RSI, Bollinger Band (including above the upper band and below the lower band), Stochastic and Slow Stochastic 34/10/3, MACD.
Price LevelsGaps, price change, today’s and yesterday’s levels, VWAP and anchored VWAP.
ZenBot Custom IndicatorsZenTrend (bull and bear cycle, turning up and down), Trade Signals (New), and Trend Buying Signals (Legacy).
Moving Averages & VolatilityOne sub-group for each line: 50, 100 and 200 SMA; 8, 21 and 50 EMA. Each has near, above, below, bounced off and rejected at. Also SMA alignment, EMA crosses, ATR and ADR, TTM Squeeze.
Options & Options LevelsWeekly options, call and put percentage, options liquidity (Excellent, Good, Adequate, Thin or Poor, plus options volume, open interest and spread), distance to option levels, bounces and rejections at them.
PatternsCandle and chart patterns.
OtherNot a leveraged or inverse ETF.

Not sure what a filter means? Hover the small i beside it for a one-line answer. For the full story (its exact settings, which timeframes it works on and when it updates), see Every filter, explained.

Choose a timeframe

Most technical filters work on more than the 5-minute chart. Switch one on and a chip underneath shows its timeframe.

A filter switched on: its timeframe chip and the timeframe picker
A filter switched on: its timeframe chip and the timeframe picker
  • Change the timeframe: pick another from the chip. The value stays.
  • Require it on a second timeframe as well: click + Add Timeframe. A stock must pass on every timeframe you add.
  • Remove one: click the × on its chip.
  • Daily counts today: the Daily chip reads today’s daily bar as it forms, so a daily RSI or trend filter moves during the session. Before the open it shows the last session.

You can use 1m, 2m, 3m, 5m, 10m, 15m, 30m, 1h, 2h, 4h, 8h, Daily or Weekly. For example, “Above 50 SMA” on Daily plus “RSI above 50” on 15m and 1h finds stocks in a daily uptrend that are also strong right now.

Bounced and rejected

“Bounced off 50 SMA (within bars)” means price tested the line within that many bars of the chosen timeframe and is still above it now. A bounce that has since broken back through no longer counts. “Rejected at” is the mirror: tested from below and still under it. Use them to find a reaction at a line, where “near” only finds closeness.

The in an uptrend versions add the bigger trend. “Bounced off 100 SMA in an uptrend (within bars)” and the 200 SMA one also need price back over the 50 SMA. The 50 SMA one needs the 50 SMA over the 100. “Rejected at … in a downtrend” is the mirror for shorts. Find them under each line’s own sub-group in Moving Averages & Volatility.

Builder mode

Filters requires every switch you turn on to pass. Use Builder when you need AND and OR groups, such as “strong against SPY, and either high relative volume or gapping up”.

The Filter Builder with its help open above the
The Filter Builder with its help open above the “A stock must fit” row

The ? on the “A stock must fit” row opens a short explanation above it, with an example you can build in one click; it stays open or closed the way you leave it. You can also ask Zen to add a group in words (“add a group: up 3% or gapping up”); see Ask Zen.

Every filter on the Filters tab is in the builder too, with three exceptions that read the clock (Bullish pop, Bearish pop and Resumed from halt). On Another Scan and Not On Another Scan, under Fundamentals, Other Scans, work the same way here as on the Filters tab: pick the field and the scan list opens by itself, a search box with Long and Short tabs, your own scans first; each scan you pick becomes a chip on the row, and with two or more on an On Another Scan row an any / all switch says whether a stock needs one of them or every one. Put the condition in an “any” group and it combines with anything else.

Closing without saving

If you change something and then close the dialog with the ×, Esc or Close, ZenBot asks before throwing the changes away.

Saved filters

Watch: Saved Filters (11:47)

Say I only want stocks over $20 with real volume. I build that filter once, save it as “Over $20, real volume”, and can use it on any scan.

The Filter button above every scan shows what’s applied: your saved filter’s name, Unsaved, or Filters off. Click it for:

  • New Filter… and, while a filter is on, Edit Filter…
  • Save Filter As… to keep the filters that are on right now under a name.
  • Saved: your named filters. Click one to apply it; the pencil renames it and the bin deletes it.
  • Recent: the last five you used without naming them, with a + to name one.
  • Filters off: show every result again. The × beside the button does the same.

A filter you apply follows you across the Long, Short and sector scans and Multi-Scan, so you can switch scans without losing it. A pop-out window keeps its own filter.

The filter strip: the filter's name, Edit, Hidden and the Explain count
The filter strip: the filter’s name, Edit, Hidden and the Explain count

The filter strip

When a filter is on, a strip under the scan heading shows it, with Edit and Hidden (N), the number of rows the filter is hiding, so you always know what you’re not seeing. Click Hidden to see them.

The free plan keeps three saved filters. Turbo keeps up to twenty.

Scan Explainer

Watch: Scan Explainer (13:12)

This one used to drive me crazy. You build a scan and get three names. Or none. Why? Click Explain Scan on the line under the scan’s name, or 59 of 6,677 · Explain above the results on a scan without that line. The Scan results breakdown shows how 6,677 stocks became 59, one condition at a time.

Explain: how many stocks are left after each condition
Explain: how many stocks are left after each condition

Explain checks the scan’s conditions, then your filter’s, and shows how many stocks survive each step:

  • Why is this scan empty? Look for the step where the count drops to zero. That is the condition to loosen.
  • Which condition is doing the work? A step that barely changes the count isn’t adding much. A step that cuts 2,000 stocks to 40 is the heart of the scan.
  • Switch a condition off right there. The switch beside each step turns it off for a moment (nothing is saved) and every count runs again, so you can see what comes back.
  • Click a step to edit it.
  • “← removes all” marks the step that leaves nothing.
  • Filter Builder scans work too, nested groups included: a group’s conditions are listed under it.
  • With a filter on as well, a second part, Filter results breakdown, starts from what the scan passed.

An empty scan has a See which condition removed them button that opens the same breakdown. The same breakdown is inside the filter dialog while you build, and Explain this scan is in the right-click menu of any scan. On a built-in scan it walks the scan’s own rules; see Explain or edit any Zen scan.

Explain Results inside the filter dialog: 6,677 stocks down to 15, one condition at a time
Explain Results inside the filter dialog: 6,677 stocks down to 15, one condition at a time

Custom scans

Build a scan from your own conditions and it appears under Custom Scans at the top of the list.

Building one

  1. Click Build Scan with Zen at the top of the scan list. The builder opens beside Zen’s panel; describe the scan to Zen, or ignore the panel and tick filters.
  2. The name is selected, ready to type over. Give the scan a name you will recognize.
  3. Switch on the filters you want and set their values and timeframes.
  4. Watch the Explain panel as you go. It shows how many stocks pass.
  5. Click Save.

Nothing is created until you save. If you close a new scan with changes in it, ZenBot asks first.

Leave the description empty and ZenBot writes a one-line description for you when you save. You can change it. To get a fresh one, clear the box and save again.

Building a scan: a name, four conditions, and Explain Results showing 6,677 stocks narrowed to 85
Building a scan: a name, four conditions, and Explain Results showing 6,677 stocks narrowed to 85

Starting from someone else’s scan

  • Import: a shared scan link opens the scan by itself, in the app on the web and in your browser from the Windows app. A scan code pastes into Import a Scan under the Custom Scans menu at the top.
  • Build Scan with Zen: the box at the top of the dialog has the cursor when the dialog opens. Describe the scan and press Enter; on a new scan Zen’s version is applied for you, and the panel offers Save and View Scan. See Ask Zen.
  • Scan Playground: favorite a starter scan to get your own copy to edit.
  • A built-in scan: the heart on a built-in scan’s heading adds it to your scans, where you can add a filter of your own on top.
  • A built-in scan’s rules: Edit on a built-in scan opens its rules as your own copy. See Explain or edit any Zen scan.

Examples

Day trade

Morning strength
  • Strong vs SPY (1h)
  • Relative Volume above 2
  • Above VWAP
  • Price above $10
  • Average volume above 1M (without it, thin stocks with huge RVOL readings flood the list)

Open this scan

Swing trade

Daily pullback in an uptrend
  • Above 50 SMA (Daily)
  • Bounced off 21 EMA within 3 bars (Daily)
  • Average volume above 1M

Open this scan

Signal-led

Fresh buy signal on a strong chart
  • Trade Signal: new buy within 3 bars (15m)
  • ZenTrend Bull Cycle
  • Has weekly options

Open this scan

Want to change one? Open its link and you get your own copy to edit.

Sharing, editing and deleting

The buttons on the scan’s heading, and the ⋯ menu beside them, hold the actions for the scan you are on: alerts, favorite, pop out, edit, copy symbols, columns, share and delete.

  • Share scan gives you a link with a Copy button. Anyone who opens it can add the scan to their own account.
  • Edit scan reopens the dialog. Duplicate in the dialog makes a copy to experiment on.
  • Delete asks first.

You can also right-click a scan in the list for the same actions.

Alerts on a custom scan

Click the bell on the scan’s heading. ZenBot then tells you when a new stock joins it. See Alerts.