π β
Β· Pattern scan 6:30 AM ET
Β· Live prices β
Β· ntfy β VCPScreener_daily_2026
β How VCP Works & Backtest ResultsβΈ
The VCP Pattern
A Volatility Contraction Pattern (Mark Minervini's method) forms when a stock in an uptrend pulls back in a series of legs that get progressively shallower and happen on lighter volume β the stock is βcoilingβ as sellers dry up. When the pattern completes, price breaks out above the high of the base (the pivot / buy point) on rising volume, often starting the next leg up.
How This Screener Scores It
Every ticker gets a 0β100 VCP Score from trend quality, the number/depth of contraction legs, how well each leg tightens versus the one before it, volume dry-up, and proximity to the 52-week high. Separately, a setup is only marked Valid if it passes every gate at once: confirmed uptrend, every leg actually tighter than the last, at least 2 legs, within 30% of the 52-week high, and not already more than 5% past the buy point (βextendedβ). A high score with a failed gate is still not a valid setup β the two are deliberately independent, so a high-scoring but broken pattern won't get chased.
π The Breakout Signal
Once a setup is valid and the stock's most recent confirmed daily close moves above the buy point (without yet running more than 5% past it), the card lights up with a π BROKE OUT badge and a push notification goes out. It's based on the confirmed close, not a live intraday tick, so it won't flicker on and off during the day β it only fires once the move actually holds through the close.
Backtested Results
Each trade's R is simply its own risk β the % distance from the buy point down to the stop. This screener's volatility-adjusted stop caps that risk at a maximum of 8% (often tighter for calmer stocks), so β for example β a 3R target means aiming for roughly 3x that risk in profit, capped around 24% (3 × 8%) in the worst case, before selling.
Every version of the exit strategy has been backtested across the full watchlist with realistic $100k / 15%-per-trade position sizing and a real S&P 500 buy-and-hold benchmark for comparison:
Upload a CSV of tickers (or paste a list) and hit Scan. Each stock's daily price history is downloaded, checked for a Volatility Contraction Pattern (tightening pullbacks on falling volume, basing near its 52-week high), and ranked so the best swing-trade candidate rises to the top.