Skip to content
Screening workflows 2 min read

How to screen for moving-average conditions

Build a reproducible screen for moving-average conditions: choose a universe, define field units and thresholds, compare presets and inspect the matching daily charts.

Write and combine price, volume, and indicator rules in the CleverScan editor.

Write the selection question, read the exact rule and inspect both matching and excluded cases before saving the screen.

Step 01

Write a selection question

Separate stocks already above an average from stocks crossing it today. A state screen asks close > sma200. A crossover compares two sessions. A golden cross compares SMA 50 with SMA 200, so it is an average-to-average event rather than price crossing an average.

Step 02

Read field units and lookback periods

SMA 200 uses 200 daily trading-session closes, not 200 calendar days. At close 101 and SMA 200 of 100 the stock lies 1% above its average. A previous close already above its previous average means the state is true without a new price crossing.

Step 03

Start from the canonical preset

Open the paired screen and choose the rule below. It includes the reference population as well as the selection conditions. Use the same expression in CleverScan so the learning example and the screen answer the same question.

securityType = "Stock" and indexMembership contains "SP500" and (close > sma200)
Step 04

Compare another question before combining rules

Compare above-SMA and crossover presets before adding alignment. AND joins requirements such as close above both SMA 50 and SMA 200. OR can admit either condition, so put grouped alternatives inside parentheses and read the whole rule back before running it.

securityType = "Stock" and indexMembership contains "SP500" and (sma50 > sma200 and sma50Ago1 <= sma200Ago1)
Step 05

Inspect a match and a boundary exclusion

Inspect average slope, distance and repeated crossings in a sideways market. A golden cross follows the past path of two smoothed series. Record the actual crossing session rather than assuming every currently aligned stock just crossed.

Change one condition at a time and compare a row just inside the threshold with one just outside it. A zero-match result means the selected population did not meet the whole rule for that session; it is not a reason to silently change the question.

Step 06

Save a reproducible research definition

Save the expression through the editor’s Library workflow. Record the selected session, population and sort so a later run can be compared meaningfully. A saved scan preserves rules, while a watchlist preserves symbols; their results can change independently.

Read the CleverScan syntax reference

Read our data and methodology notes for calculation context. This guide explains research tools and observations. It does not recommend a trade or investment.

Follow your curiosity

One good question leads to another.

All guides
Make room for better research

Put your curiosity to work.

Build a scan with filters or CleverScan rules. Explore the results. Find your next idea.

Write a CleverScan rule