vcp-screener by tradermonty/claude-trading-skills
npx skills add https://github.com/tradermonty/claude-trading-skills --skill vcp-screener筛选标普 500 成分股,识别 Mark Minervini 的波动收缩形态,找出处于第二阶段上升趋势、波动性在突破支点附近收缩的股票。
FMP_API_KEY 环境变量或传递 --api-key 参数)--full-sp500)运行 VCP 筛选器脚本:
# 默认:标普 500,前 100 名候选股
python3 skills/vcp-screener/scripts/screen_vcp.py --output-dir skills/vcp-screener/scripts
# 自定义股票池
python3 skills/vcp-screener/scripts/screen_vcp.py --universe AAPL NVDA MSFT AMZN META --output-dir skills/vcp-screener/scripts
# 完整标普 500(付费 API 层级)
python3 skills/vcp-screener/scripts/screen_vcp.py --full-sp500 --output-dir skills/vcp-screener/scripts
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
仅返回 valid_vcp=True 且 execution_state 为 (Pre-breakout, Breakout) 的股票:
python3 skills/vcp-screener/scripts/screen_vcp.py --strict --output-dir reports/
为研究和回测调整 VCP 检测参数:
python3 skills/vcp-screener/scripts/screen_vcp.py \
--min-contractions 3 \
--t1-depth-min 12.0 \
--breakout-volume-ratio 2.0 \
--trend-min-score 90 \
--atr-multiplier 1.5 \
--output-dir reports/
| 参数 | 默认值 | 范围 | 影响 |
|---|---|---|---|
--min-contractions | 2 | 2-4 | 值越高 = 形态越少但质量越高 |
--t1-depth-min | 10.0% | 1-50 | 值越高 = 排除较浅的首次回调 |
--breakout-volume-ratio | 1.5x | 0.5-10 | 值越高 = 成交量确认要求越严格 |
--trend-min-score | 85 | 0-100 | 值越高 = 第二阶段过滤器越严格 |
--atr-multiplier | 1.5 | 0.5-5 | 值越低 = 摆动检测越敏感 |
--contraction-ratio | 0.70 | 0.1-1 | 值越低 = 要求更紧密的收缩 |
--min-contraction-days | 5 | 1-30 | 值越高 = 最小收缩期越长 |
--lookback-days | 120 | 30-365 | 值越大 = 发现更早的形态 |
--max-sma200-extension | 50.0% | — | 用于判断"过度延伸"状态和扣分的 SMA200 距离阈值 |
--wide-and-loose-threshold | 15.0% | — | 最终收缩深度超过此值则触发"宽且松"标志 |
--strict | 关闭 | — | Minervini 严格模式:仅返回处于"突破前"或"突破中"状态且具有有效 VCP 的股票 |
references/vcp_methodology.md 以获取形态解读的背景信息references/scoring_system.md 以获取分数阈值指导对于每个顶级候选股,呈现:
composite_score / 评级) — VCP 形态的完整度如何?execution_state) — 现在是否可买入?(突破前 / 突破中 = 可操作)pattern_type) — 标准 VCP / 类 VCP / 突破后 / 延伸领涨股 / 受损形态★按执行状态筛选(主要过滤器):
按评级筛选(次要,在状态确认可操作性之后):
vcp_screener_YYYY-MM-DD_HHMMSS.json - 结构化结果vcp_screener_YYYY-MM-DD_HHMMSS.md - 人类可读报告references/vcp_methodology.md - VCP 理论和趋势模板解释references/scoring_system.md - 评分阈值和组件权重references/fmp_api_endpoints.md - API 端点和速率限制每周安装量
105
代码仓库
GitHub 星标数
420
首次出现
2026 年 2 月 16 日
安全审计
安装于
cursor100
gemini-cli100
github-copilot99
codex99
amp99
kimi-cli99
Screen S&P 500 stocks for Mark Minervini's Volatility Contraction Pattern (VCP), identifying Stage 2 uptrend stocks with contracting volatility near breakout pivot points.
FMP_API_KEY environment variable or pass --api-key)--full-sp500)Run the VCP screener script:
# Default: S&P 500, top 100 candidates
python3 skills/vcp-screener/scripts/screen_vcp.py --output-dir skills/vcp-screener/scripts
# Custom universe
python3 skills/vcp-screener/scripts/screen_vcp.py --universe AAPL NVDA MSFT AMZN META --output-dir skills/vcp-screener/scripts
# Full S&P 500 (paid API tier)
python3 skills/vcp-screener/scripts/screen_vcp.py --full-sp500 --output-dir skills/vcp-screener/scripts
Only return stocks with valid_vcp=True AND execution_state in (Pre-breakout, Breakout):
python3 skills/vcp-screener/scripts/screen_vcp.py --strict --output-dir reports/
Adjust VCP detection parameters for research and backtesting:
python3 skills/vcp-screener/scripts/screen_vcp.py \
--min-contractions 3 \
--t1-depth-min 12.0 \
--breakout-volume-ratio 2.0 \
--trend-min-score 90 \
--atr-multiplier 1.5 \
--output-dir reports/
| Parameter | Default | Range | Effect |
|---|---|---|---|
--min-contractions | 2 | 2-4 | Higher = fewer but higher-quality patterns |
--t1-depth-min | 10.0% | 1-50 | Higher = excludes shallow first corrections |
--breakout-volume-ratio | 1.5x | 0.5-10 | Higher = stricter volume confirmation |
--trend-min-score | 85 | 0-100 | Higher = stricter Stage 2 filter |
references/vcp_methodology.md for pattern interpretation contextreferences/scoring_system.md for score threshold guidanceFor each top candidate, present:
composite_score / rating) — how well-formed is the VCP pattern?execution_state) — is it buyable now? (Pre-breakout / Breakout = actionable)pattern_type) — Textbook VCP / VCP-adjacent / Post-breakout / Extended Leader / Damaged★ marker if a State Cap was applied (raw score was downgraded)By Execution State (primary filter):
By Rating (secondary, after state confirms actionability):
vcp_screener_YYYY-MM-DD_HHMMSS.json - Structured resultsvcp_screener_YYYY-MM-DD_HHMMSS.md - Human-readable reportreferences/vcp_methodology.md - VCP theory and Trend Template explanationreferences/scoring_system.md - Scoring thresholds and component weightsreferences/fmp_api_endpoints.md - API endpoints and rate limitsWeekly Installs
105
Repository
GitHub Stars
420
First Seen
Feb 16, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
cursor100
gemini-cli100
github-copilot99
codex99
amp99
kimi-cli99
Python PDF处理教程:合并拆分、提取文本表格、创建PDF文件
63,700 周安装
--atr-multiplier | 1.5 | 0.5-5 | Lower = more sensitive swing detection |
--contraction-ratio | 0.70 | 0.1-1 | Lower = requires tighter contractions |
--min-contraction-days | 5 | 1-30 | Higher = longer minimum contraction |
--lookback-days | 120 | 30-365 | Longer = finds older patterns |
--max-sma200-extension | 50.0% | — | SMA200 distance threshold for Overextended state and penalty |
--wide-and-loose-threshold | 15.0% | — | Final contraction depth above which wide-and-loose flag triggers |
--strict | off | — | Minervini strict mode: only Pre-breakout or Breakout with valid VCP |