Canslim ScreenerSAFE
Claude Code skills for equity investors and traders — market analysis, technical charting, economic calendars, screeners, and trading strategy development.
Overview
Claude Code skills for equity investors and traders — market analysis, technical charting, economic calendars, screeners, and trading strategy development.
341b10245dbfOBSERVED · 2026-10-23Install
Commands as the repository documents them. They are shown, not run.
pip install requests beautifulsoup4 lxml
pip install requests beautifulsoup4 lxml
pip install requests beautifulsoup4 lxml
pip install beautifulsoup4
pip install requests
pip install lxml
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: canslim-screener description: Screen US stocks using William O'Neil's CANSLIM growth stock methodology. Use when user requests CANSLIM stock screening, growth stock analysis, momentum stock identification, or wants to find stocks with strong earnings and price momentum following O'Neil's investment system. --- # CANSLIM Stock Screener - Phase 3 (Full CANSLIM) ## Overview This skill screens US stocks using William O'Neil's proven CANSLIM methodology, a systematic approach for identifying growth stocks with strong fundamentals and price momentum. CANSLIM analyzes 7 key components: **C**urrent Earnings, **A**nnual Growth, **N**ewness/New Highs, **S**upply/Demand, **L**eadership/RS Rank, **I**nstitutional Sponsorship, and **M**arket Direction. **Phase 3** implements all 7 of 7 components (C, A, N, S, L, I, M), representing **100% of the full methodology**. **Two-Stage Approach:** 1. **Stage 1 (FMP API + Finviz)**: Analyze stock universe with all 7 CANSLIM components 2. **Stage 2 (Reporting)**: Rank by composite score and generate actionable reports **Key Features:** - Composite scoring (0-100 scale) with weighted components - **Finviz fallback** for institutional ownership data (automatic when FMP data incomplete) - Progressive filtering to optimize API usage - JSON + Markdown output formats - Interpretation bands: Exceptional+ (90+), Exceptional (80-89), Strong (70-79), Above Average (60-69) - Bear market protection (M component gating) **Phase 3.1 Component Weights (Original O'Neil weights):** - C (Current Earnings): 15% - A (Annual Growth): 20% - N (Newness): 15% - S (Supply/Demand): 15% - L (Leadership/RS Rank): 20% — multi-period weighted RS (3m/6m/12m vs configurable benchmark) - I (Institutional): 10% - M (Market Direction): 5% **Weighted RS Formula:** ``` Weighted RS = 0.40 × rel_3m + 0.30 × rel_6m + 0.30 × rel_12m ``` Available periods are re-normalized when some are missing. Default benchmark is `^GSPC`; override with `--rs-benchmark SPY/QQQ/IWM/...`. **Fallback hierarchy when multi-period data is incomplete:** 1. No benchmark → weighted absolute stock performance + 20% penalty. 2. All multi-period windows missing but >=50 bars of price history → fall back to the legacy 365-day full-window absolute return as the scoring input (20% penalty if no benchmark). 3. <50 bars of price history → score=0 with `error` set. **Future Phases:** - Phase 4: FINVIZ Elite integration → 10x faster execution --- ## When to Use This Skill **Explicit Triggers:** - "Find CANSLIM stocks" - "Screen for growth stocks using O'Neil's method" - "Which stocks have strong earnings and momentum?" - "Identify stocks near 52-week highs with accelerating earnings" - "Run a CANSLIM screener on [sector/universe]" **Implicit Triggers:** - User wants to identify multi-bagger candidates - User is looking for growth stocks with proven fundamentals - User wants systematic stock selection based on historical winners - User needs a ranked list of stocks meeting O'Neil's criteria **When NOT to Use:** - Value investing focus (use value-dividend-screener instead) - Income/dividend focus (use dividend-growth-pullback-screener instead) - Bear market conditions (M component will flag - consider raising cash) --- ## Prerequisites **API Requirements:** - **FMP API key** (free tier: 250 calls/day, sufficient for 35 stocks; Starter tier $29.99/mo for 40+ stocks) - Sign up: https://site.financialmodelingprep.com/developer/docs - Set via environment variable: `export FMP_API_KEY=your_key_here` **Python Dependencies:** - Python 3.9+ - `requests` (FMP API calls) - `beautifulsoup4` (Finviz web scraping) - `lxml` (HTML parsing) **Installation:** ```bash pip install requests beautifulsoup4 lxml ``` --- ## Output **Output Directory:** `reports/` (default) or custom via `--output-dir` **Generated Files:** - `canslim_screener_YYYY-MM-DD_HHMMSS.json` - Structured data for programmatic use - `canslim_screener_YYYY-MM-DD_HHMMSS.md` - Human-readable report **Report Contents:** - Market Condition Summary (trend, M score, warnings) - Top N CANSLIM Candidates (ranked by composite score) - Component Breakdown for each stock (C, A, N, S, L, I, M scores with details) - Rating interpretation (Exceptional+/Exceptional/Strong/Above Average) - Quality warnings and data source notes - Summary statistics (rating distribution) **Rating Bands:** - **Exceptional+ (90-100):** All components near-perfect, aggressive buy - **Exceptional (80-89):** Outstanding fundamentals + momentum, strong buy - **Strong (70-79):** Solid across components, standard buy - **Above Average (60-69):** Meets thresholds with minor weaknesses, buy on pullback --- ## Workflow ### Step 1: Verify API Access and Requirements Check if user has FMP API key configured: ```bash # Check environment variable echo $FMP_API_KEY # If not set, prompt user to provide it ``` **Requirements:** - **FMP API key** (free tier: 250 calls/day, sufficient for 40 stocks) - **Python 3.9+** with required libraries: - `requests` (FMP API calls) - `beautifulsoup4` (Finviz web scraping) - `lxml` (HTML parsing) **Installation:** ```bash pip install requests beautifulsoup4 lxml ``` If API key is missing, guide user to: 1. Sign up at https://site.financialmodelingprep.com/developer/docs 2. Get free API key (250 calls/day) 3. Set environment variable: `export FMP_API_KEY=your_key_here` ### Step 2: Determine Stock Universe **Option A: Default Universe (Recommended)** Use top 40 S&P 500 stocks by market cap (predefined in script): ```bash python3 skills/canslim-screener/scripts/screen_canslim.py ``` **Option B: Custom Universe** User provides specific symbols or sector: ```bash python3 skills/canslim-screener/scripts/screen_canslim.py \ --universe AAPL MSFT GOOGL AMZN NVDA META TSLA ``` **Option C: Sector-Specific** User can provide sector-focused list (Technology, Healthcare, etc.) **API Budget Considerations (Phase 3):** - 40 stocks × 7 FMP calls/stock
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | WARN |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (1 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (3)
print(f"Testing /stable institutional-ownership with API key (length: {len(api_key)})...")examples/daily-market-dashboard/.claude/skills
beautifulsoup4, lxml, requests
Gates applied: no_behavioural_pass.
341b10245dbffull audit observations/trust-audit/skill/tradermonty__canslim-screener.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-23 | 341b10245dbf | SAFE | B | 89 | first audit |
Questions
What does the canslim-screener — tradermonty/claude-trading-skills skill do?
Claude Code skills for equity investors and traders — market analysis, technical charting, economic calendars, screeners, and trading strategy development.
Is canslim-screener — tradermonty/claude-trading-skills safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can canslim-screener — tradermonty/claude-trading-skills access on my machine?
The audit observed that it reaches the network. Each of those is consistent with what it says it does. Secrets in the source: none found.
How current is this page?
The grade is for one exact copy of the source (341b10245dbf), read on 2026-10-23. The repository is watched, and a new audit runs when it changes — this is the first audit.
Add this badge to your README
Shows this page's audit result and links back to it. It updates when the audit does.
[](https://modelsatlas.com/skills/tradermonty/canslim-screener/)
Not your listing, or something out of date? Claim or update your listing.