There are over 5,000 listed companies on NSE. Watching all of them is impossible; watching a random subset is useless. A structured screener collapses 5,000 stocks to a shortlist of 10–20 that meet specific quantitative criteria — so your limited analysis time is spent on the highest-probability setups rather than the highest-profile names. This guide builds a complete swing trade screener for Indian equities from first principles, explaining why each filter earns its place in the stack.
The typical retail workflow: watch CNBC, pick the most discussed stock of the day, buy it, lose money when the retail rush reverses. The professional workflow: run a pre-defined screener nightly, review the 10–15 names that emerge, apply chart analysis to the shortlist, and enter only the ones with the clearest setup. The screener is the filter between the noise and your capital.
Screening also imposes discipline. If a stock doesn't pass your quantitative criteria, you can't enter it — regardless of a tip, a news headline, or your gut feeling. This constraint forces process over emotion.
Apply these filters sequentially. Each layer reduces the universe. The order matters — start with the filters that eliminate the most stocks fastest.
Eliminate illiquid stocks that cannot support institutional-scale entry and exit. This protects you from spreads and impact cost that destroy swing trade returns.
This filter alone reduces the NSE universe from 5,000+ to approximately 800–1,000 liquid stocks.
Only trade with the trend. A swing trade against the primary trend requires perfect timing that most traders don't have.
This eliminates stocks in downtrends and sideways consolidations outside of the uptrend context. Typically reduces the shortlist to 300–500 stocks in a bull market, 50–150 in a bear market (invert all conditions for short setups).
You want momentum building, not exhausting. RSI in the 55–72 range on the daily chart indicates momentum without being in the overbought "sell zone."
Institutional buying reveals itself in volume. A volume surge day — where volume is significantly above recent average — indicates fresh money entering, not retail momentum chasing.
NSE publishes daily delivery percentage for each stock — the proportion of total traded volume that resulted in actual delivery (as opposed to intraday squaring). High delivery on a volume surge day indicates genuine accumulation, not speculation.
| Filter | Criterion | Why It Matters |
|---|---|---|
| Market cap | >₹1,000 crore | Ensures liquidity for entry and exit |
| ADTV | >2 lakh shares/day | Reduces impact cost |
| Price vs EMAs | Close > 20 EMA > 50 EMA > 200 SMA | Confirms multi-timeframe uptrend |
| RSI | 55–72 (daily) | Momentum building, not exhausting |
| Volume surge | >1.5× 10-day avg on up day | Institutional participation signal |
| Delivery % | >45% on surge day | Genuine accumulation vs speculation |
| Sector strength | Sector index > its 20 EMA | Wind in sails vs fighting sector headwinds |
Even the best stock setup fails in a weak sector. If the Nifty Bank Index is in a downtrend, buying HDFC Bank for a swing trade is fighting the sector current. Add this filter last: the stock's sector index must be above its 20-day EMA.
For swing traders with a 5–15 day hold period, fundamental analysis is secondary. However, a simple quality gate prevents entering stocks with extreme governance risk:
After all filters, you'll have 5–20 stocks. Rank them by the strength of the volume surge (highest volume-to-average ratio first) combined with the number of days the stock has been building delivery percentage. The top 3–5 on this combined rank are your priority setups for the next session.
The screener finds the candidates. Chart analysis selects the entries. News context from Overwatch confirms or voids the thesis.
Once your screener surfaces a stock, check whether there's a news catalyst behind the move. Overwatch's live news feed aggregates 50+ sources including BSE/NSE announcements — so you can verify within seconds whether a volume surge has a fundamental explanation or is purely technical.
Open Overwatch Dashboard ↗