PatternsRadar
Sign in

Scan library

115 scans written in Sift. Open one to run it, or test it against the last year of sessions first — the thing a screener normally will not tell you.

Breakouts

Closing at a fresh 52-week high on above-average volume — the classic Darvas-style entry.

where close is highest in 52w and rel_volume > 1.5

Top 500 by turnover

Coiling just under the highs. Often a better entry than the breakout candle itself.

where close within 3% of high_52w and close > ema(50)

Top 500 by turnover

Twice normal volume with price up more than 3% — something changed today.

where volume > 2x avg(volume, 20)
  and change > 3
  and close > sma(20)

Top 500 by turnover

Twice the ten-day average volume with a move of more than 5% — the day something happened.

where volume > 2x avg(volume, 10) and change > 5

Top 500 by turnover

Pushing through the top of the 20-day range with volume behind it.

where close > donchian_upper[-1]
  and volume > 1.5x avg(volume, 20)

Top 500 by turnover

Close pushing above the upper band, with volume confirming.

where close > bb().upper and rel_volume > 1.5

Top 500 by turnover

Clearing the ATR-based upper channel — a steadier breakout signal than Bollinger's.

where close > keltner_upper and rel_volume > 1.5

Top 500 by turnover

Price clearing the first pivot resistance on strong volume — a classic floor-trader level.

where close crosses above pivot_r1 and rel_volume > 1.5

Top 500 by turnover

Price reclaiming the Kijun-sen while the medium-term trend still points up.

where close crosses above ichimoku_base and close > sma(50)

Top 500 by turnover

Closing above yesterday's high on half again the usual volume — the simplest breakout there is.

where close > high[-1] and rel_volume > 1.5

Top 500 by turnover

The highest close in twenty-six weeks, with volume above the daily norm.

where close is highest in 26w and rel_volume > 1.2

Top 500 by turnover

Aroon-up above 70 with Aroon-down below 30 — a new high made recently and no new low in sight.

where aroon_up > 70 and aroon_down < 30 and close > sma(50)

Top 500 by turnover

Cumulative volume flow at a new high while the trend holds — accumulation leading price.

where obv() is highest in 26w and close > sma(50)

Top 500 by turnover

Reversals

RSI crossing back above 30 in the last three sessions while the stock still holds its 200-day average — a pullback, not a collapse.

where rsi(14) crossed above 30 within 3 bars
  and close > sma(200)

Top 500 by turnover

RSI above 70 while the stock is still trending — stretched, and worth knowing about either way.

where rsi(14) > 70 and close > sma(50)

Top 500 by turnover

The 50-day average crossing up through the 200-day.

where sma(50) crosses above sma(200)

Top 500 by turnover

The 50-day average crossing down through the 200-day.

where sma(50) crosses below sma(200)

Top 500 by turnover

MACD crossing above its signal line from below zero.

where macd().line crosses above macd().signal
  and macd().line < 0

Top 500 by turnover

MACD crossing below its signal line from above zero — momentum rolling over.

where macd().line crosses below macd().signal
  and macd().line > 0

Top 500 by turnover

Yesterday closed below the 200-day average, today closed back above it.

where close crosses above sma(200)

Top 500 by turnover

The ATR trailing stop turning up, with the trend strong enough to be worth trusting.

where supertrend_dir == 1 and supertrend_dir[-1] == -1 and adx > 20

Top 500 by turnover

Price crossing above the parabolic stop, in a market with a trend to catch.

where close crosses above psar() and adx > 20

Top 500 by turnover

Williams %R below -80 while the 200-day still holds — Chartink's oversold staple.

where williams_r < -80 and close > sma(200)

Top 500 by turnover

%K crossing up through %D while both are still in oversold territory.

where stoch().k crosses above stoch().d and stoch().k < 25

Top 500 by turnover

Money Flow Index under 20 — RSI's volume-weighted cousin, at an extreme.

where mfi < 20 and close > sma(200)

Top 500 by turnover

The first green Heikin-Ashi candle after a red one, on rising volume.

where ha_close > ha_open
  and ha_close[-1] < ha_open[-1]
  and close > sma(50)
  and rel_volume > 1.3

Top 500 by turnover

RSI crossing back above its midline in a stock that never lost its long-term trend.

where rsi(14) crosses above 50 and close > sma(200)

Top 500 by turnover

CCI back above −100 within the last two sessions, in a stock still above its 200-day.

where cci crossed above -100 within 2 bars and close > sma(200)

Top 500 by turnover

CCI above +100 with RSI agreeing — stretched by two different measures at once.

where cci > 100 and rsi(14) > 65

Top 500 by turnover

The fastest oversold oscillator there is, pinned below 20 in a long-term uptrend.

where stoch_rsi < 20 and close > sma(200)

Top 500 by turnover

+DI overtaking −DI while ADX confirms there is a trend worth joining.

where di_plus crosses above di_minus and adx > 20

Top 500 by turnover

−DI taking control with directional movement building — the exit-or-avoid list.

where di_minus crosses above di_plus and adx > 15

Top 500 by turnover

Elder's force index crossing above zero — price change and volume agreeing the dip is done.

where force_index crosses above 0 and close > sma(50)

Top 500 by turnover

Price closing back inside the bands after a two-standard-deviation flush.

where close crosses above bb().lower

Top 500 by turnover

Closing in the top fifth of its two-week range with RSI above 70 — extended on both clocks.

where williams_r > -20 and rsi(14) > 70

Top 500 by turnover

%K crossing down through %D above 75 — the classic overbought sell signal, as written.

where stoch().k crosses below stoch().d and stoch().k > 75

Top 500 by turnover

The 9-day EMA crossing above the 21 in a stock still above its 200-day — the swing trader's golden cross.

where ema(9) crossed above ema(21) within 2 bars
  and close > sma(200)

Top 500 by turnover

Crossed under the 200-day moving average within the last three sessions — the line everyone watches, failing.

where close crossed below sma(200) within 3 bars

Top 500 by turnover

Momentum

Price above the 20, which is above the 50, which is above the 200. A trend in good order.

where close > sma(20) > sma(50) > sma(200)

Top 500 by turnover

Up more than 50% over a year and still within 10% of the high — momentum that has not rolled over.

where return_1y > 50
  and close within 10% of high_52w
sort by return_1y desc

Top 500 by turnover

Three-month gains with RSI still under 65 — room to run without chasing.

where return_3m > 20
  and rsi(14) between 45 and 65
  and close > sma(50)

Top 500 by turnover

Price that has not closed below its 20-day average in two weeks. Persistence, not a single good day.

where close has been above sma(20) for 10 bars and adx > 25

Top 500 by turnover

Three consecutive sessions of rising volume while price advances.

where volume rising for 3 bars and close > close[-3]

Top 500 by turnover

A close higher than the one before it, five sessions running, on normal-or-better volume.

where close rising for 5 bars and volume > 1x avg(volume, 20)

Top 500 by turnover

ADX above 30 with buyers in control and the averages stacked — a trend worth trading.

where adx > 30
  and di_plus > di_minus
  and close > sma(50) > sma(200)
  and rsi(14) < 70

Top 500 by turnover

Ten percent rate of change with RSI still under 70 — acceleration, not exhaustion.

where roc > 10 and close > sma(50) and rsi(14) < 70

Top 500 by turnover

Never traded below its open all session and closed up — buyers in control from the first print.

where open == low and change > 1

Top 500 by turnover

Never traded above its open and closed down — sellers ran the whole session.

where open == high and change < -1

Top 500 by turnover

Up more than 30% in a quarter and still above the 50-day — the current cycle's leaders.

where return_3m > 30 and close > sma(50)
sort by return_3m desc

Top 500 by turnover

RSI under 40 in a stock still above its 200-day — weakness for sale inside strength.

where close > sma(200) and rsi(14) < 40

Top 500 by turnover

The plain health check: price above the 200-day, and the 200-day itself climbing.

where close > sma(200) and sma(200) rising for 20 bars

Top 500 by turnover

The MACD line itself crossing above zero — the 12-day average overtaking the 26-day.

where macd().line crosses above 0 and close > sma(50)

Top 500 by turnover

The fifty names where the most money changed hands today, over ₹50 crore each.

where turnover > 50cr
sort by turnover desc
top 50

Top 500 by turnover

Delivery

Over 65% of a heavy day's volume taken to demat. Buyers who intend to hold, not day traders — and a figure most screeners do not expose as a field at all.

where delivery_pct > 65
  and volume > 1.5x avg(volume, 20)
  and change > 1

Top 500 by turnover

High delivery on ordinary volume while the stock grinds above its 50-day average — accumulation without a headline.

where delivery_pct > 60
  and rel_volume < 1.2
  and close > sma(50)
  and return_1m > 0

Top 500 by turnover

Delivery above 55% for five sessions running — a steady hand rather than one unusual day.

where delivery_pct has been above 55 for 5 bars and close > sma(20)

Top 500 by turnover

A 20-day high where most of the volume was actually delivered — the breakout with real buyers behind it.

where delivery_pct > 55
  and close is highest in 20 bars
  and rel_volume > 1.3

Top 500 by turnover

Heavy volume, weak delivery, price down — the shape of a day traders' exit.

where rel_volume > 1.8
  and delivery_pct < 42
  and change < -1.5

Top 500 by turnover

Two and a half times normal volume with under 30% delivered — a lot of noise, no ownership.

where delivery_pct < 30 and rel_volume > 2.5

Top 500 by turnover

Chaikin Money Flow positive, price above the 50-day, and delivery confirming it.

where cmf > 0.15
  and close > sma(50)
  and delivery_pct > 55

Top 500 by turnover

Over 70% of a ₹50-crore day taken home — size and conviction in the same session.

where delivery_pct > 70 and turnover > 50cr

Top 500 by turnover

Three straight sessions of climbing delivery in a stock holding its 20-day average.

where delivery_pct rising for 3 bars and close > sma(20)

Top 500 by turnover

Five straight sessions of net volume inflow — the tape voting yes all week.

where obv() rising for 5 bars and close > sma(20)

Top 500 by turnover

Volatility

Bands within 8% of the middle — compressed ranges that usually resolve with a move.

where bb().width < 0.08 and close > sma(200)

Top 500 by turnover

Today's range wider than 1.5 ATR, on real turnover.

where high - low > 1.5x atr(14) and turnover > 10cr

Top 250 by turnover

Opened above yesterday's high and closed above the open.

where open > high[-1] and close > open

Top 500 by turnover

Opened below yesterday's low and closed below the open — a gap with follow-through.

where open < low[-1] and close < open

Top 500 by turnover

A decisive one-month advance, still trading above its 50-day.

where close up 15% over 21 bars and close > sma(50)

Top 500 by turnover

The lowest close in a year — the other side of the breakout scan.

where close is lowest in 52w

Top 500 by turnover

Sitting near the yearly low on rising volume — basing, or still falling.

where close within 5% of low_52w and volume > 1.2x avg(volume, 20)

Top 500 by turnover

A day's range under half the stock's own ATR — the coil before the spring.

where true_range < 0.5x atr(14) and close > sma(50)

Top 500 by turnover

Today's high-low span is the tightest of the last seven sessions.

where high - low is lowest in 7 bars and close > sma(50)

Top 500 by turnover

A day twice the stock's normal size, resolved in the buyers' favour.

where true_range > 2x atr(14) and change > 0

Top 500 by turnover

Fallen hard over 21 sessions — the damaged list, for bargain hunters and short sellers alike.

where close down 15% over 21 bars

Top 500 by turnover

Opened more than 2% in the hole and closed green from the open — the morning panic that found buyers.

where open < close[-1] * 0.98 and close > open

Top 500 by turnover

Coiled within 5% of the 52-week high with Bollinger width under 0.08 — the VCP shape, as a scan.

where close within 5% of high_52w
  and bb().width < 0.08
  and close > sma(200)

Top 500 by turnover

Holding within 5% of the 52-week high on barely half its normal volume — supply running out.

where close within 5% of high_52w and rel_volume < 0.6

Top 500 by turnover

Patterns

An engulfing candle forming while the stock sits on its 50-day average.

where pattern is bullish_engulfing
  and close within 3% of sma(50)

Top 500 by turnover

A bearish engulfing candle within 3% of the 52-week high — a rejection where it counts.

where pattern is bearish_engulfing
  and close within 3% of high_52w

Top 500 by turnover

A long lower wick after a decline, with RSI still under 40.

where pattern is hammer and rsi(14) < 40

Top 500 by turnover

A long upper wick with RSI above 60 — buyers tried and could not hold it.

where pattern is shooting_star and rsi(14) > 60

Top 500 by turnover

The three-bar reversal: down bar, pause, then a strong recovery.

where pattern is morning_star within 2 bars

Top 500 by turnover

Three strong up-closes in a row above the 50-day — sustained buying, not a spike.

where pattern is three_white_soldiers and close > sma(50)

Top 500 by turnover

An indecision candle on above-average volume while the trend still holds.

where pattern is doji
  and close > sma(50)
  and rel_volume > 1.2

Top 500 by turnover

A contracted range inside yesterday's, while the larger trend still points up.

where pattern is inside_bar and close > sma(50) > sma(200)

Top 500 by turnover

A small up-day held inside the previous big down-day, with RSI already washed out.

where pattern is bullish_harami and rsi(14) < 45

Top 500 by turnover

A hesitation candle inside a big up-day, high enough on the chart to matter.

where pattern is bearish_harami and rsi(14) > 55

Top 500 by turnover

The three-candle top: a strong up-day, a stall, and a decisive down-day.

where pattern is evening_star within 2 bars

Top 500 by turnover

Three consecutive long down-days, each closing near its low — persistent, orderly selling.

where pattern is three_black_crows within 2 bars

Top 500 by turnover

A range that swallowed yesterday's entirely and resolved upward.

where pattern is outside_bar and close > open

Top 500 by turnover

A bar with almost no wicks on above-average volume — one side held the session from open to close.

where pattern is marubozu within 2 bars and rel_volume > 1

Top 500 by turnover

Derivatives

Price and futures open interest rising together — fresh long positions being built, not shorts giving up.

from fno where fut_oi_change_pct > 3 and change > 1

Top 500 by turnover

Open interest rising into a falling price — fresh shorts being written with conviction.

from fno where fut_oi_change_pct > 3 and change < -1

Top 500 by turnover

Price up while open interest drains — shorts buying back, not buyers arriving.

from fno where fut_oi_change_pct < -3 and change > 1

Top 500 by turnover

Longs closing out into a drifting price — a trend quietly losing its sponsors.

from fno where fut_oi_change_pct < -2 and change < -0.5

Top 500 by turnover

More futures contracts open than on any day in three months — maximum positioning, whichever side it favours.

from fno where fut_oi is highest in 3mo

Top 500 by turnover

The front-month future paying more than half a percent over cash, in an uptrend — leverage leaning long.

from fno where fut_basis_pct > 0.5
  and close > sma(50)

Top 500 by turnover

The front-month future trading below the cash price — hedging pressure, or supply the market expects.

from fno where fut_basis_pct < -0.2

Top 500 by turnover

Heavy put open interest under an uptrend — option sellers paid to defend the levels below.

from fno where pcr_oi > 0.8 and close > sma(50)

Top 500 by turnover

Call open interest dwarfing puts — optimism crowded enough to be worth distrusting.

from fno where pcr_oi < 0.4

Top 500 by turnover

Futures trading at 1.5× their own 20-day average — the leveraged desk suddenly interested.

from fno where fut_volume > 1.5x avg(fut_volume, 20)

Top 500 by turnover

Put volume above 0.7× call volume on the session — hedging or fear running through today's options tape.

from fno where pcr_vol > 0.7

Top 500 by turnover

Fundamentals

Promoter stake up over half a percentage point last quarter, in a stock holding its long-term trend.

where promoter_change_qoq > 0.5
  and close > sma(200)

Top 500 by turnover

Promoter stake cut by more than a percentage point in a quarter — the insiders reducing.

where promoter_change_qoq < -1

Top 500 by turnover

Promoters holding over 70% and the price above its 200-day average — tight float, aligned owners.

where promoter_pct > 70 and close > sma(200)

Top 500 by turnover

FII and DII each holding over 15% — the rare stocks both kinds of institutional money agree on.

where fii_pct > 15 and dii_pct > 15

Top 500 by turnover

Public shareholders holding under a quarter of the company — scarcity as a price amplifier.

where public_pct < 25

Top 500 by turnover

More than a fifth of the promoter holding pledged as loan collateral — the risk screen, not a buy list.

where promoter_pledged_pct > 20

Top 500 by turnover

Stocks above ₹20,000 crore market cap washed out below RSI 40 — size as the quality filter.

where marketcap > 20000cr and rsi(14) < 40

Top 500 by turnover

Stocks under fifteen times trailing earnings, holding above the 200-day — cheap, and no longer ignored.

where pe < 15 and close > sma(200)

Top 500 by turnover

Latest quarter profit up 25% on the year with revenue up 15% — growth the top line can explain.

where profit_growth_yoy > 25
  and revenue_growth_yoy > 15

Top 500 by turnover

Profit compounding above 15% a year for five years, still under 30× earnings, with the interest bill flat — growth that was not bought with debt.

where profit_cagr_5y > 15
  and pe < 30
  and interest_cost_growth_yoy < 5
  and sector is not "Financial Services"

Top 500 by turnover

The Information Technology sector filtered to names above the 200-day with momentum intact.

where sector is "Information Technology"
  and close > sma(200) and rsi(14) > 55

Top 500 by turnover

Banking stocks within 3% of their 52-week high — the market's most-watched industry at its strongest.

where industry is "Banks" and close within 3% of high_52w

Top 500 by turnover

The commodities macro-sector filtered to long-term uptrends — a cycle scan in one line.

where macro_sector is "Commodities" and close > sma(200)

Top 500 by turnover