All scan recipes
    SEBI Registered Research Analyst · INH000015297

    Narrow CPR — trend-day candidates

    Stocks whose next-session Central Pivot Range is under 0.15% of price and narrower than the previous session's.

    By Rohit Singh (Mr. Chartist) · Updated 2026-08-25

    A narrow CPR is the most-searched CPR question in India and the least-explained. Stripped of mystique, it says one thing: the previous session closed near the exact midpoint of its own range, so buyers and sellers finished the day agreeing about value. That compression tends to resolve into a trending day rather than a rotational one.

    Chartink's own CPR examples cannot be reproduced — they rely on account-scoped custom indicators. So this recipe recomputes the standard floor-trader CPR from bar arithmetic instead. With P = (H+L+C)/3, BC = (H+L)/2 and TC = 2P − BC, the width |TC − BC| reduces algebraically to |2C − H − L| ÷ 3, which is what the clause encodes.

    Scan clause · last run 2026-08-25
    ( {cash} ( abs( latest close * 2 - latest high - latest low ) < latest close * 0.0045 and abs( latest close * 2 - latest high - latest low ) < abs( 1 day ago close * 2 - 1 day ago high - 1 day ago low ) and latest high - latest low > latest close * 0.015 and latest close > 50 and latest sma( latest volume , 20 ) > 300000 ) )

    Chartink can fail silently. Tested on 2026-08-25: a clause containing a nonsense token returned the same number of rows as the correct one, with no error, and a clause with no comparison in it returned every stock in the segment. A scan that returns results has not necessarily parsed as you intended — so sanity-check a few of the names it gives you against the conditions above before trusting the list.

    Chartink's own documentation notes that scans cannot always be copy-pasted directly, and its in-app copy function moves condition groups rather than raw text. Treat this clause as the specification to reproduce in the condition builder; if pasting works in your account, so much the better.

    What this scan actually tests

    • Next-session CPR width under 0.15% of price, recomputed from the last completed daily bar rather than read from an indicator.
    • That width is also narrower than the previous session's — the value band is contracting, not merely small.
    • The session was not a dead one: high minus low greater than 1.5% of close, which keeps barely-traded names out.
    • Liquidity floors: close above ₹50 and 20-session average volume above 3,00,000.

    What it cannot see

    A scan is bar arithmetic. It cannot read a chart, and every recipe here is honest about where the machine stops and your eyes start.

    • It does not read Chartink's CPR indicator. If your charting platform plots a different CPR variant, its levels will differ slightly from what this measured.
    • That a trend day actually occurs. Narrow CPR is context — a probability tilt — never an entry.
    • Direction. Deliberately neutral: long or short is decided by where the open sits relative to the CPR and by the higher-timeframe trend.
    • Location quality. A narrow CPR in the dead middle of a broad range is a low-grade candidate even though it passes.

    Why this setup is worth scanning for

    Trend days are where intraday money is made, and they are disproportionately preceded by sessions that closed in the middle of their range. Knowing which names carry that setup before the open is worth more than reacting to the trend at 11am.

    Run it after the close for the next session's list. Expect a handful of names; the tightest CPRs are genuinely uncommon, which is what makes them worth flagging.

    Educational content. A scan is a filter, not a recommendation — the names it returns are candidates for your own analysis, not a buy list, and nothing here is investment advice. Chartink is a third-party service with no affiliation to this site. Registration granted by SEBI, membership of BASL and certification from NISM in no way guarantee performance or assure returns. Markets carry risk.