nse-vcp-screener — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited nse-vcp-screener (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill screens Indian stocks (Nifty 50/200/500) for Mark Minervini's Volatility Contraction Pattern (VCP). The VCP identifies stocks in Stage 2 uptrends that are forming tightening bases with declining volume — the classic setup before a potential breakout.
The screening pipeline has 3 phases:
This screener uses yfinance with .NS suffix for NSE stocks and the niftystocks package for stock universe lists. No paid API keys required.
python3 scripts/screen_vcp.py --universe nifty500| Argument | Default | Description |
|---|---|---|
--universe | nifty50 | Stock universe: nifty50, nifty200, nifty500, or custom |
--custom-tickers | — | Comma-separated tickers for custom universe (e.g., RELIANCE,TCS,INFY) |
--min-contractions | 2 | Minimum number of contractions (2-4) |
--t1-depth-min | 10 | Minimum T1 contraction depth % |
--t1-depth-max | 40 | Maximum T1 contraction depth % |
--contraction-ratio | 0.75 | Each contraction must be ≤ this ratio of the previous |
--min-contraction-days | 5 | Minimum days per contraction |
--lookback-days | 120 | Days to look back for pattern detection |
--breakout-volume-ratio | 1.5 | Minimum volume ratio for breakout confirmation |
--trend-min-score | 85 | Minimum trend template score (0-100) |
--output-dir | reports/ | Output directory for results |
Run the Python script with desired parameters:
python3 skills/nse-vcp-screener/scripts/screen_vcp.py \
--universe nifty500 \
--output-dir reports/Load and review the generated reports:
reports/vcp_screener_YYYY-MM-DD_HHMMSS.json (structured data)reports/vcp_screener_YYYY-MM-DD_HHMMSS.md (human-readable report)Read: references/vcp_methodology.md
Read: references/scoring_system.mdFor each top-scoring candidate, present:
For the top 5-10 candidates:
The composite score (0-100) weights 5 components:
| Component | Weight | What It Measures |
|---|---|---|
| Trend Template | 25% | Minervini's 7-point Stage 2 criteria |
| Contraction Quality | 25% | Tightening base structure |
| Volume Pattern | 20% | Volume dry-up ratio |
| Pivot Proximity | 15% | Distance from breakout level |
| Relative Strength | 15% | Performance vs Nifty 50 |
Mark Minervini's VCP theory, Stage 2 criteria, contraction rules, and entry methodology adapted for Indian markets.
Detailed breakdown of the 5-component composite scoring system with thresholds and examples.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.