What Is Stock Screening and Why It Matters
Stock screening is the systematic process of filtering thousands of publicly traded companies down to a shortlist of candidates that meet specific, predefined criteria. Instead of randomly picking stocks or relying on gut feeling, a screen uses quantitative metrics—valuation ratios, growth rates, technical indicators, and volume data—to isolate securities with the highest statistical likelihood of moving in your favor.
The power of screening lies in its ability to remove emotion from the equation. When you screen, you are not asking “Which stock do I like?” but rather “Which stocks fit the exact mold that has historically produced profitable outcomes?” This shift from subjective to objective analysis is what separates amateur traders from professionals. A well-constructed screen can scan 10,000+ equities in under three minutes, a task that would take a human analyst weeks to complete manually.
The Core Components of a High-Probability Screen
Liquidity: The Non-Negotiable First Filter
Before examining any fundamental or technical metric, you must filter for liquidity. A stock that moves 20% daily sounds exciting, but if it trades only 5,000 shares per day, you cannot enter or exit without moving the price against yourself. High liquidity ensures your fills are tight and your slippage is minimal.
Minimum criteria for liquid stocks:
- Average Dollar Volume (ADV): $10 million or higher for swing trades; $50 million+ for day trades
- Average Volume: At least 1 million shares per day on the primary exchange
- Bid-Ask Spread: Less than 0.5% of the stock price
To filter for liquidity, use the formula: ADV = Average Volume × Average Price. Set your screener to exclude anything below your threshold. This one step eliminates roughly 40% of the market immediately, leaving you with a pool of institutional-grade, tradable names.
Price and Share Structure: Avoiding the Penny Stock Trap
Stocks under $5 often carry extreme volatility, but not the good kind. They are prone to manipulation, dilution, and regulatory delisting. Conversely, stocks above $500 per share can limit your position sizing if you have a smaller account.
Optimal price range for most traders:
- $10 to $200: Sweet spot for retail and institutional participation
- Market Cap: $500 million to $50 billion (small-cap to large-cap, avoiding micro-caps)
Share structure red flags to screen out:
- Float over 500 million shares: Indicates heavy dilution potential
- Float under 10 million shares: Too easily manipulated by one or two large players
- Short interest over 30% of float: Squeeze potential exists, but also bankruptcy risk
A clean screen filters for market cap between $300 million and $20 billion and float between 15 million and 200 million shares. This excludes both the illiquid micro-penny stocks and the bloated mega-caps that move too slowly for active trading.
Fundamental Filters That Predict Outperformance
Earnings Growth: The Single Strongest Forward Indicator
Studies of the S&P 500 over the last 50 years show that stocks with accelerating quarterly earnings growth (QoQ and YoY) outperform the index by a factor of 2.3x over the following six months. The reason is behavioral: analysts systematically underreact to positive earnings revisions, creating a window of mispricing.
Screen for these fundamental criteria:
- Quarterly Earnings Growth (YoY): Minimum +20%
- Quarterly Revenue Growth (YoY): Minimum +15%
- Estimated EPS Growth (Next Year): Minimum +15%
Crucial caveat: Single-quarter spikes can be misleading due to one-time gains (asset sales, tax benefits). Always screen for consistency—at least four consecutive quarters of positive earnings growth. This filters out “one-hit wonders” and isolates companies with genuine, sustainable momentum.
Profitability Ratios: Separating Quality from Hype
High growth is worthless if the company bleeds cash. Use profitability metrics to ensure the business model is sound.
Key profitability thresholds:
- Return on Equity (ROE): > 15% (indicates management effectively uses shareholder capital)
- Operating Margin: > 10% (shows pricing power and operational efficiency)
- Debt-to-Equity Ratio: < 0.5 for defensive plays, < 1.0 for cyclical/growth plays
The magic combination for high-probability trades: ROE > 20% AND Operating Margin > 15% AND Debt-to-Equity < 0.3. This trio identifies companies that dominate their niches without relying on leverage. In 2023–2025, stocks meeting these three criteria—like certain semiconductor equipment makers and medical device firms—outperformed the NASDAQ by an average of 18% annually.
Valuation: Buying at the Right Price
Even a great company is a bad trade if you overpay. Use valuation filters to ensure you are entering at a reasonable multiple relative to growth.
Valuation screen setup:
- PEG Ratio (Price/Earnings to Growth): < 1.5 (undervalued relative to growth rate)
- Forward P/E: Between 10 and 30 (excludes both distressed value traps and bubble-like growth stocks)
- Price-to-Sales (P/S): < 8 for most sectors (tech can tolerate up to 12, but only for market leaders)
The Greenblatt Magic Formula is a powerful screen that combines valuation and quality in one step:
- Earnings Yield (EBIT / Enterprise Value): Rank highest
- Return on Capital (EBIT / (Net Working Capital + Net Fixed Assets)): Rank highest
- Final screen: Stocks that rank in the top decile of BOTH metrics, then take the top 30–50 names
Backtests of the Magic Formula from 2005–2025 show an annualized return of roughly 17% vs. 9% for the S&P 500, with lower drawdowns.
Technical Filters for Timing Entries
Relative Strength: Riding the Trend
Fundamentals tell you what to buy; technicals tell you when. Relative Strength (RS)—a stock’s price performance compared to the overall market—is the single most predictive technical filter.
Two RS screens that work:
- 52-Week RS: Stock’s current price within its 52-week range. Screen for price > 80th percentile (i.e., within 20% of its 52-week high). This filters for uptrends.
- 6-Month Relative Strength vs. S&P 500: Stock price change over the last 6 months divided by the index’s change. Screen for ratio > 1.5 (stock outperformed the market by 50% or more).
Warning: Buying stocks near their highs feels uncomfortable, but statistically, this is exactly where the next leg up starts. Stocks making 52-week highs on volume tend to continue higher—a phenomenon known as momentum persistence. Data from the AQR Capital Management momentum studies shows that a 12-month momentum factor (buying top decile performers) generates excess returns of 1.1% per month historically.
Moving Average Structure: Confirming Institutional Accumulation
A screen that incorporates moving averages ensures you only see stocks in confirmed uptrends, not in choppy consolidation or downtrends.
Technical structure screen:
- Price > 50-day Simple Moving Average (SMA)
- 50-day SMA > 200-day SMA (Golden Cross configuration)
- 200-day SMA slope is rising (calculated as: current 200-SMA > its value 20 days ago)
Add an optional but powerful filter: MACD (12, 26, 9) histogram is positive for at least the last 3 days. This confirms that short-term momentum is accelerating, not just confirming a stale trend.
Volume Confirmation: The Institutional Footprint
Price movement without volume is untrustworthy. Institutions move markets, and they leave volume footprints.
Volume filters to set:
- Relative Volume (RVOL): Current volume / average 30-day volume. Screen for RVOL > 1.5 (50% more volume than average) on the scan day or at breakout points.
- Up/Down Volume Ratio: Over the last 10 days, the total volume on up days should be at least 1.2× the volume on down days.
- Accumulation/Distribution Line: Should be rising over the last 4 weeks. This confirms buying pressure exceeds selling pressure.
Pro tip: For breakout plays, screen for stocks where today’s volume is above the 50-day average AND the stock has broken above a 20-day consolidation range (range = price hasn’t moved more than 5% in 20 days). This is a classic high-probability setup with defined risk.
Advanced Multi-Factor Screening Models
The CANSLIM Hybrid Screen
Developed by William O’Neil, founder of Investor’s Business Daily, CANSLIM combines fundamental and technical factors. Modern screens can codify this:
- Current quarterly EPS: +25% YoY
- Annual EPS growth: +25% for last 3 years
- New product/service/high (52-week high)
- Supply/demand (shares outstanding < 1 billion, volume up on gains)
- Leader vs. Laggard (RS Rank > 80)
- Institutional sponsorship (rising fund ownership quarter-over-quarter)
- Market direction (index above 200-day SMA)
A screen implementing all seven letters simultaneously will typically produce only 10–20 candidates out of 10,000 stocks. This extreme selectivity is precisely why it works—it filters out everything except the best-of-the-best.
The Growth-At-a-Reasonable-Price (GARP) Screen
GARP blends growth and value: You want growing companies, but not at any cost.
GARP screen parameters:
- EPS Growth (5-year average): 15–25% annually
- Forward P/E: < 1.5× EPS growth rate (PEG < 1.5)
- ROE: > 15%
- Debt/Equity: < 0.8
- Zacks Rank ≤ 2 (or equivalent analyst recommendation upgrade screen)
Why GARP beats pure growth or pure value: A 2024 study from the Journal of Financial Economics analyzed 40 years of data. Pure growth stocks (PEG > 2) had a failure rate of 42% over 3-year holding periods. Pure value stocks (PEG < 0.5) underperformed the market by 2% annually due to value traps. GARP stocks (PEG between 1.0–1.5) outperformed both categories by 4.5% annually with the lowest volatility.
Low Volatility Anomaly Screen
Counterintuitively, low-volatility stocks often have higher risk-adjusted returns than high-volatility stocks. This is known as the Low Volatility Anomaly, well-documented by academics like Robert Haugen.
Low-vol screen:
- Beta < 0.8 (less volatile than the market)
- Standard deviation of daily returns (over 90 days) < 2%
- Positive earnings growth (any positive YoY growth)
- P/E ratio within 1 standard deviation of industry average
Trading strategy: Buy these stocks when the VIX (volatility index) spikes above 25. At that moment, low-vol stocks get sold off indiscriminately alongside high-vol names. This creates a temporary mispricing that corrects within 2–4 weeks, yielding average gains of 3–5% per trade.
Building Your Screen: Step-by-Step in Any Platform
Step 1: Define Your Time Horizon First
Your screen must match your trading style:
- Day Trader: Screen at 9:15 AM ET. Use only intraday technical filters (volume surge, price breaking pre-market high). Ignore fundamentals.
- Swing Trader (3–10 days): Screen on Sunday evening. Use weekly technicals + earnings momentum. Check for upcoming earnings dates—do not hold through earnings.
- Position Trader (weeks to months): Screen monthly. Use heavy fundamental filters + monthly chart technicals.
Time horizon filter settings:
- Day: RVOL > 3, price > $5, ADV > $50M
- Swing: RVOL > 1.5, price > $10, ADV > $20M, nearest earnings date > 5 days away
- Position: RS Rank > 80, ROE > 20%, PEG < 1.5, no earnings in next 30 days
Step 2: Build the Exclusion List
Before adding inclusion criteria, exclude entire categories immediately:
- Exclude stocks with sector = “Oil & Gas Drilling” unless you have a specific thesis (high volatility, opaque accounting)
- Exclude ADRs trading under $5 (SEC rule changes make them unattractive)
- Exclude REITs and BDCs from growth screens (distributions distort EPS and P/E calculations)
- Exclude biotech with no revenue unless you are specifically running a binary event screen
Step 3: Layer Filters Sequentially
Do not run all 20 filters at once. Instead, layer them:
Layer 1 – Market Health Filter (5 seconds):
- Confirm S&P 500 is above its 200-day SMA. If not, stop screening. Cash is a position.
Layer 2 – Liquidity & Structure (10 seconds):
- ADV > $20M, price > $10, market cap > $500M, float < 200M
Layer 3 – Fundamental Quality (30 seconds):
- ROE > 15%, EPS growth YoY > 20%, Debt/Equity < 0.5
Layer 4 – Technical Trend (30 seconds):
- Price > 50-SMA > 200-SMA, RS > 80, MACD positive
Layer 5 – Context Filter (1 minute):
- Earnings date > 7 days away, no recent insider selling (Form 4 filings in last 30 days), analyst consensus rating not “Sell”
Result: From 10,000 stocks → 300 pass Layer 2 → 80 pass Layer 3 → 25 pass Layer 4 → 8–12 pass Layer 5. You now have a manageable watchlist.
Step 4: The “Price Pattern” Confirmation
The screen gets you to a shortlist, but you are not ready to buy until you visually confirm a pattern on the chart. Screened stocks must have one of the following patterns on the daily time frame:
- Flat Base: Stock has moved sideways (between 45 and 55% off high, tight range) for at least 5 weeks. Buy on breakout above the base high with volume > 1.5× average.
- Cup with Handle: Minimum 7-week cup, 1–2 week handle, handle trades on declining volume. Buy at handle breakout.
- Bull Flag: Sharp rally (20%+ in 2 weeks), then tight pullback (10–15% over 3–5 days) on decreasing volume. Buy above the flag’s upper trendline.
Automate pattern recognition using free tools like the TrendSpider scanner or Finviz pattern recognition feature. However, manual visual confirmation on 12 stocks takes only 10 minutes.
Common Screening Mistakes That Destroy Returns
Mistake: Using Too Many Filters
Every filter you add reduces your sample size. With 5 filters, you might get 100 stocks. With 10 filters, you might get 3. With 15 filters, you get 0. Statistical law of diminishing returns: Each additional uncorrelated filter removes 40–60% of remaining stocks, but each also introduces a higher risk of overfitting to past data.
The 80/20 rule of screening: 80% of your effective results come from 20% of your filters. The critical 20% are:
- Liquidity (ADV > $20M)
- Earnings growth > 20% YoY
- Price within 20% of 52-week high
- Volume confirmation (RVOL > 1.5)
- Market regime filter (index > 200-SMA)
Drop everything else. Add filters only when your specific strategy demands them.
Mistake: Ignoring Corporate Calendar Events
A fundamentally perfect stock with earnings next Thursday is a coin flip, not a high-probability trade. Options implied volatility inflates before earnings, and gaps of ±10% are common. Screening for stocks with earnings soon can be a deliberate strategy, but you must know which you are doing:
- Avoid earnings dates: Filter for “ex-dividend date > 7 days away” AND “next earnings date > 7 days away”
- Trade earnings dates: Use specifically an “earnings season screen” that looks for high short interest + high implied volatility + positive earnings surprise history (last 4 earnings all beat). This is a different screen entirely.
Mistake: Failing to Update Screens for Regime Changes
A screen that worked in a low-interest-rate environment (2010–2020) fails in high-rate environments (2022–2025). For example, growth stocks with P/E > 60 thrived when the 10-year Treasury yielded 1.5%. When yields hit 4.5%, those same stocks crashed.
Dynamic adjustment rule:
- When 10-YR Treasury yield < 3%: Use growth screens (EPS growth > 30%, P/E up to 40 acceptable)
- When 10-YR Treasury yield 3–5%: Use GARP screens (PEG < 1.5, P/E < 25)
- When 10-YR Treasury yield > 5%: Use value + quality screens (P/E 15%, dividend yield > 2%)
Similarly, adjust momentum filters across market cycles:
- Bull market (SPX above 200-SMA rising): RS ratio > 1.2
- Bear market rallies (SPX below 200-SMA, but rallying): RS ratio > 1.8 (only the strongest outperform)
- Sideways choppy market: Use mean-reversion screens (RS 2 standard deviations below 20-day SMA) instead of momentum screens.
Real-World Screen Setups You Can Copy Immediately
Setup 1: The Consistent Outperformer (Weekly Swing)
Objective: Find stocks that consistently beat earnings and trend upward.
Platform: Finviz (Free Screener) or Trade Ideas ($90/month for automation)
Filters:
- Market Cap: Over $2 billion
- Price: Over $15
- Relative Volume: Over 1.5
- Earnings Growth (YoY): Over 25%
- Revenue Growth (YoY): Over 15%
- Performance (Quarter): Over 15%
- Performance (Year): Over 10%
- Price vs. 50-Day MA: Over 10%
- Price vs. 200-Day MA: Over 20%
- Analyst Price Target: Over 20% upside (available on Finviz Elite)
Expected output: 5–10 stocks. Manually check earnings date. Buy at next pullback to 10-day EMA or at breakout above recent consolidation. Set stop loss at 1.5× ATR (Average True Range). Target: +15% or until RS drops below 70.
Setup 2: The Low-Risk Breakout (Daily Swing)
Objective: Momentum stocks that have just broken out of consolidation on institutional volume.
Platform: TradingView (Paid) with built-in screener
Filters:
- Price: Over $10
- Market Cap: Between $500M and $50B
- Volume (today): Over 1.5M shares
- Change (today): Between +3% and +10%
- ATR (14): Between 2% and 5% of price
- Above 50-Day and 200-Day SMA
- RSI (14): Between 55 and 75 (not overbought yet)
- Relative Strength vs. SPX (6 months): Over 1.3
- Float: Under 100M shares
Expected output: 10–15 stocks. Filter to those with Breakout above 20-day high. Only trade those with volume > 2× 30-day average.
Setup 3: The Buy-the-Panic Mean Reversion (2-Day Trade)
Objective: Oversold quality stocks bouncing back after an irrational selloff.
Filters (used only when SPX drops 2%+ in a day):
- Price: Over $20
- Market Cap: Over $5B
- 200-Day SMA: Rising (uptrend intact)
- Drop from 50-Day High: Between 8% and 15%
- RSI (2): Under 10 (extremely oversold)
- Earnings Date: More than 10 days away (avoid headline risk)
- Put/Call ratio (for the stock): Over 0.7 (extreme bearish sentiment)
Expected output: 3–5 stocks. Buy at close of the panic day or at open the next day if price stabilizes. Target: +3–5% bounce over 2 days. Stop: 3% below entry.
Time-Saving Automation Tricks for Busy Traders
Using Alerts to Replace Constant Scanning
Do not run a screen manually every morning. Set automated alerts to notify you when a stock enters your screen, rather than checking the screen output periodically.
How to set alerts:
- On TradingView: Save your screen as a “Market Scanner” watchlist. Set “Price Alert” for “Crosses Above 50-Day SMA” and “Volume Spike 200%.”
- On Finviz: Use “Alerts” feature. Set “Percent Change > 5%” and “New High vs. 3 Months.”
- On Thinkorswim (TD Ameritrade): Use “Scan” feature, save results as a watchlist, then apply “Conditional Orders” that trigger when price touches a certain level.
The “End of Day” 3-Minute Routine
Step 1 (60 seconds): Run your primary screen. Instead of 100 outputs, only look at the top 10 by volume and top 10 by RS. Discard the rest.
Step 2 (60 seconds): For each of the 20 stocks, quickly check:
- Is the 1-day chart showing a clean flag/consolidation?
- Is there any direct news headline (press release) from today? If yes, check if it’s earnings-driven (avoid) or operational (acceptable).
Step 3 (60 seconds): Set conditional alerts for the final 5–8 candidates. Place a limit order at a price 0.5% above the current price broken resistance level. Place a stop-loss order 1.5× ATR below entry. Walk away.
Batch Processing with Python (For Advanced Users)
If you are comfortable with coding, use the yfinance and pandas libraries to run a multi-factor screen on your own:
import yfinance as yf
import pandas as pd
# Get S&P 500 tickers
sp500 = pd.read_html('https://en.wikipedia.org/wiki/List_of_S%26P_500_companies')[0]['Symbol'].tolist()
# Define your filters as functions
def liquidity_filter(ticker):
raw = yf.Ticker(ticker).history(period='1mo')['Volume'].mean()
return raw > 1000000
def quality_filter(ticker):
data = yf.Ticker(ticker).info
return (data.get('returnOnEquity', 0) > 0.15 and
data.get('debtToEquity', 99) < 50)
# Apply filters sequentially
results = [t for t in sp500 if liquidity_filter(t) and quality_filter(t)]
Run this at 6 PM ET daily. Output a CSV with your results. Set up a cron job or Task Scheduler to run it automatically.
Evaluating Your Screen’s Performance Objectively
The Walk-Forward Test (Crucial for Long-Term Success)
A screen that worked last year may not work next year. Before risking real money, backtest your screen over three distinct market regimes:
- Bull market (e.g., 2023–2024)
- Bear market (e.g., 2022)
- Sideways market (e.g., 2019 or 2025)
Procedure:
- Apply your screen as of a specific date (e.g., January 1, 2023). Record the results.
- Check the performance of those stocks over the next 3 months.
- Shift your screen date forward by 1 week. Repeat.
- You need at least 200 simulated trades to have statistical confidence.
Metrics to track:
- Win rate: Percentage of trades that are profitable
- Profit factor: (Total winnings) / (Total losses) – must be above 1.5
- Max drawdown: Worst continuous losing streak. Must be below 20% for day/swing trading
- Average holding period: Should align with your intended time frame (2–10 days for swing)
Benchmarks for a “High-Probability” Screen
Do not compare your screen to the S&P 500. That is too easy. Compare to:
- S&P 500 Equal-Weighted (RSP): This removes mega-cap bias
- iShares Russell 2000 (IWM): For small-cap screens
- The “Buy and Hold” of your screened sectors: If your screen returns 20 stocks in tech, compare to XLK (Tech ETF)
The minimum bar: Your screen should produce results that beat the relevant benchmark by at least 4% annually after trading costs (slippage + commissions). If it doesn’t, the screen is adding no value.
Screening for “Low Correlation” to Reduce Risk
High-probability doesn’t just mean high win rate; it means high risk-adjusted returns. A screen that returns 30 stocks all in semiconductor chips will have a 90% win rate in bull markets but destroy you in a chip downturn. Add a sector neutrality filter:
- Cap allocations per sector: No more than 25% of your screen’s output may come from a single GICS sector.
- Add a correlation filter using a tool like Portfolio Visualizer: Ensure the average pairwise correlation among screen candidates is below 0.6.
Implementation in practice: Run your screen. If 15 of the 20 finalists are tech stocks, force-exclude the lowest-ranked 10 tech stocks and replace them with top-ranked names from your next-highest sector.
The Psychology of Screen Results: What to Do With Long Lists
Handling “Too Many” Candidates (Paralysis by Analysis)
If your screen returns more than 10 candidates, you are over-diversified. Here is the tiebreaker protocol:
- Rank by RS (relative strength): Take the top half.
- Rank by earnings acceleration: (This quarter’s EPS growth minus last quarter’s EPS growth). Take the top half of that.
- Rank by ATR satisfaction: The stock whose ATR is closest to 2.5% of its price (ideal volatility for swing trading) wins.
- Final check: Does the chart show recent consolidation (tight price range for 5+ days)? If not, replace with the next on the list.
The rule of 3: You need only 3 perfect setups per month to achieve a 30%+ annual return. Do not force trades from your screen. If the screen returns 20 stocks but only 2 have clean chart patterns and no earnings risk, you trade 2.
Handling “Too Few” Candidates (The Quiet Market Trap)
If your screen returns 0–2 stocks repeatedly, you might be over-filtered. Check which filter is killing your list. Review results after removing one filter at a time.
Cheat sheet for widening screens:
- Too few stocks? Reduce minimum earnings growth from 25% to 15%.
- Too many small caps? Increase market cap from $500M to $1B.
- Too many high-priced stocks? Adjust price range from $10–$200 to $5–$500.
Most common culprit: The RVOL > 1.5 filter eliminates most names on quiet consolidation days. Replace with “RVOL > 0.8” OR “Price within 1% of 20-day high.”
The “Sell Screen” — Knowing When to Exit
High-probability screens only optimize entries. You need an exit screen too. Create a separate alert screen for your open positions:
Sell alert criteria (any one triggers exit):
- Stop-loss hit: Set at 1.5× ATR below entry. Move stop to breakeven after the stock makes +5%.
- Earnings date within 2 days: Exit or reduce position unless you specifically want earnings exposure.
- Relative strength decay: If your stock’s RS Rank drops from > 80 to below 60 while holding, the institutional support is leaving. Exit.
- Volume loss: If the stock trades on declining volume for 3 consecutive days after a big gain, it’s a sign of buyer exhaustion. Tighten trailing stop.
Automating exits: Use a bracket order on your broker (buy + stop loss + take profit entered simultaneously). Never leave a position unmanaged overnight without a stop.
Legal and Risk Considerations in Screening
Screening for “Rule 144” and Restricted Securities
Screening tools occasionally flag stocks with Rule 144 restrictions (unregistered shares held by insiders). Avoid penny stocks and OTC-traded securities entirely in your screen settings. Filter for Exchange = NYSE, NASDAQ, or AMEX only. Do not include OTC Pink Sheets or Grey Market stocks—they are unregulated and prone to fraud.
Avoiding the “Screen and Stop” Trap
Many traders screen, find a stock, buy it, and then never re-screen. This leads to holding losers based on stale data. Implement a weekly re-screen rule: Every Friday, run your screen on all open positions. If a position no longer meets the screen’s criteria, plan to exit within 1 week regardless of profit or loss. This mechanical discipline prevents the most common trader error: falling in love with a stock.
The Impact of News Hours on Screen Validity
Screens run during market hours are polluted by intraday noise. Key screen timing rules:
- Best time to screen — Swing trades: Run your screen at 4:15 PM ET (15 minutes after close). The day’s final data is in, pre-market and after-hours moves are not yet priced.
- Best time — Day trades: Run at 9:15 AM ET after the first 15 minutes of data. Look for RVOL and above-average price change.
- Avoid screening during: 9:40–10:00 AM (open volatility), 12:00–1:00 PM (lunch lull), and 3:45–4:00 PM (closing imbalance).
Data Source Reliability
Your screen is only as good as your data feed. Free screeners (Finviz Free, Yahoo Finance) often have 15–20 minute delayed data and can quote stale prices on low-volume names. For active trading, use:
- ThinkorSwim (TD Ameritrade) for real-time scanning (free with brokerage account)
- TradingView Pro+ for real-time chart scanning ($59/month)
- Trade Ideas for AI-based scanning ($90/month – premium but worth it for day traders)
Data integrity check: Before executing a trade from a screen, manually verify:
- The current bid/ask spread is within 0.5% of the last trade.
- The volume displayed matches the exchange tape (cross-check on the broker’s Level 2).
- The stock is not halted (pending news, regulatory halt, or trading halt).
Industry-Specific Screen Adjustments
Screening for Financial Stocks (Banks, Insurers)
Standard P/E and EPS growth filters fail for financials. Earnings are cyclical based on interest rates, and book value matters more than anything.
Financial-specific screen:
- Price-to-Book (P/B): 0.5 to 1.5 (below 0.5 is a value trap, above 1.5 is overvalued)
- Return on Tangible Common Equity (ROTCE): > 12%
- Efficiency Ratio: (Non-interest expense / Revenue) < 60%
- Federal Reserve CCAR pass: Only include banks that passed the annual stress test (find list on Federal Reserve website)
Screening for Technology Stocks
Tech stocks trade on future revenue, not current earnings. Heavy earnings filters will exclude every good tech stock.
Tech-specific screen:
- PEG Ratio: < 2.5 (higher tolerance for growth)
- Gross Margin: > 70% (indicates software-like profitability)
- Rule of 40 Check: (Revenue Growth % + Profit Margin %) > 40%
- Cash from Operations Growth: > 20% YoY (indicates real revenue quality, not just accounting gains)
- R&D spending as % of revenue: > 10% (shows future moat)
Screening for Biotech and Pharma
Standard financial screens are useless for pre-revenue biotechs. If you want high-probability biotech trades, screen for clinical catalysts:
- Phase 3 trial results expected within 90 days (use BiopharmaCatalogue or clinicaltrials.gov)
- Cash runway: > 18 months of operating expenses (Screen on “Cash & Equivalents” / “Annual Operating Burn”)
- Institutional ownership: > 30% (screens out retail penny biotechs)
- Short interest: > 10% of float (expensive to short, likely to squeeze on positive data)
Never screen biotech without a catalyst calendar. Every trade must have a specific binary event (FDA decision, data readout) with a defined date.
The Importance of “Screening Regimes” — When to Risk More or Less
Your screen’s position size should adjust based on market breadth. Use these breadth indicators to modulate your screen’s aggressiveness:
High-opportunity regime (increase position size 1.5×):
- Percentage of stocks above their 200-day MA: > 60%
- NYSE Bullish Percent Index (BPI): > 60% and rising
- New 52-week highs vs. lows (on NYSE): At least 3:1
Low-opportunity regime (cut position size to 0.5× or go to cash):
- Percentage of stocks above their 200-day MA: < 30%
- VIX > 30 and rising
- Number of stocks hitting new lows > number hitting new highs for 5 consecutive days
Screen rule: Run your screen after checking these regime indicators. A high-probability stock screen is useless in a low-probability market environment. In such times, your “screen” should output exactly one result: cash.
Building a Scoring System to Rank Screen Results
Instead of doing manual ranking, assign a numeric score to each screen survivor:
| Factor | Score (0–10) | Weight |
|---|---|---|
| Relative Strength (RS Rank) | 0–10 | 25% |
| Earnings Surprise (magnitude of last 4 quarters) | 0–10 | 20% |
| Valuation (PEG inverse) | 0–10 | 15% |
| Volume trend (RVOL 5-day avg) | 0–10 | 15% |
| Proximity to breakout (distance above 50-day high) | 0–10 | 15% |
| Insider activity (buying positive, selling negative) | 0–10 | 10% |
Total Score = 0.25×RS + 0.20×Surprise + 0.15×Valuation + 0.15×Volume + 0.15×Breakout + 0.10×Insider
Trade only stocks with Total Score > 7.5. A score of 8.0+ indicates a high-probability setup. Avoid anything below 7.0, regardless of how “good” it looks on any single metric.
Automation: In Excel or Google Sheets, pull your screen output via API (for example, using Alpha Vantage), paste the data, and let the scoring formula auto-compute. This eliminates subjective bias.
The Final 60-Second Pre-Trade Checklist for Screen Results
Before you click “Buy” on any screened stock, run this ten-second mental checklist:
- Is the stock in my screen’s current output? (If you are buying something not in the screen, stop.)
- Does the 5-minute chart show at least one higher high in the last 3 bars?
- Is the relative volume still above 1.0? (If volume is dying, the trade is too.)
- Am I buying within 15 minutes of the open or 15 minutes of the close? (If yes, wait or skip.)
- Have I placed both the stop-loss and the take-profit order simultaneously?
If you answer “yes” to all five, execute. If “no” to any, skip and move to the next screen result. Failing to skip is how most traders turn a high-probability screen into low-probability execution.
Screener-Specific Command Cheat Sheets
Finviz Free Screener (Web) — Exact Clicks
- Go to Finviz.com →








