All skills
tradermonty avatar

/canslim-screener

@b938b86

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.

Use this Skill: https://skilld.dev/gh/tradermonty/claude-trading-skills/canslim-screener

This session only. Nothing lands on disk.

referencesinterpretation_guide.md

≈4.4k tokens on demand. Your agent reads this file only when SKILL.md points to it.

CANSLIM Score Interpretation Guide - Phase 3 (Full CANSLIM)

Overview

This guide helps users interpret CANSLIM screening results and translate composite scores into actionable investment decisions. Phase 3 implements all 7 components (C, A, N, S, L, I, M) with original O'Neil weights, presented on a 0-100 scale.


Composite Score Interpretation

Score Bands and Meanings

Score Range Rating Meaning Action Position Size
90-100 Exceptional+ Rare multi-bagger setup - all 4 components near-perfect Immediate buy 15-20% of portfolio
80-89 Exceptional Outstanding fundamentals + strong momentum Strong buy 10-15% of portfolio
70-79 Strong Solid across all components, minor weaknesses Buy 8-12% of portfolio
60-69 Above Average Meets thresholds, one component weak Buy on pullback 5-8% of portfolio
50-59 Average Marginal CANSLIM candidate Watchlist only Consider 3-5% if conviction high
40-49 Below Average Fails one or more key thresholds Monitor, do not buy 0%
<40 Weak Does not meet CANSLIM criteria Avoid 0%

Component-Level Analysis

How to Read Individual Component Scores

Each component contributes to the composite score with different weights:

  • C (Current Earnings): 15% weight - Quarterly EPS acceleration
  • A (Annual Growth): 20% weight - Multi-year consistency
  • N (Newness): 15% weight - Momentum and price action
  • S (Supply/Demand): 15% weight - Volume accumulation/distribution
  • L (Leadership/RS Rank): 20% weight - Relative strength vs market (highest weight, tied with A!)
  • I (Institutional): 10% weight - Smart money confirmation
  • M (Market Direction): 5% weight - Macro environment filter

Minimum Thresholds (all must be met for "buy" rating):

  • C >= 60 (18%+ quarterly EPS growth)
  • A >= 50 (25%+ annual EPS CAGR)
  • N >= 40 (within 25% of 52-week high)
  • S >= 40 (accumulation pattern, ratio >= 1.0)
  • L >= 50 (RS Rank 60+, outperforming market)
  • I >= 40 (30+ holders or 20%+ ownership)
  • M >= 40 (market not in downtrend)

Component Score Interpretation

Score C (Earnings) A (Growth) N (Newness) M (Market)
100 EPS +50%+, explosive CAGR 40%+, stable At new high + catalyst Strong bull, VIX <15
80 EPS +30-49%, strong CAGR 30-39% Within 10% of high Bull market, VIX <20
60 EPS +18-29%, meets min CAGR 25-29% Within 15% of high Early uptrend
40 EPS +10-17%, below CAGR 15-24% Within 25% of high Choppy/neutral
20 EPS <10%, weak CAGR <15%, erratic >25% from high Downtrend forming
0 Negative growth No growth/volatile Far from highs Bear market - DO NOT BUY

Action Recommendations by Score

90-100 Points (Exceptional+)

Characteristics:

  • All 7 components aligned (C, A, N, S, L, I, M all 80+)
  • Explosive earnings growth (C: 90-100)
  • Multi-year growth validation (A: 90-100)
  • At or near new highs with catalyst (N: 90-100)
  • Strong volume accumulation (S: 80+)
  • Relative strength leader (L: 90+)
  • Strong institutional backing (I: 80+)
  • Strong bull market environment (M: 90-100)

Historical Examples:

  • NVDA (2023 Q2): Score ~97 (AI chip explosion)
  • AAPL (2009 Q3): Score ~95 (iPhone 3GS launch)
  • TSLA (2020 Q3): Score ~92 (Model 3 profitability)

Investment Action:

  • Immediate buy - Do not wait for pullback (may never come)
  • Position size: 15-20% of portfolio (high conviction)
  • Entry timing: Buy now or on minor 2-3% dip
  • Stop loss: 7-8% below entry (O'Neil's rule)
  • Profit target: Let winners run; these can become 200-500% gainers

Risk Management:

  • Even exceptional setups can fail - honor stop loss
  • If market deteriorates (M drops to 0-20), sell regardless of stock quality
  • Take partial profits (20-25% of position) at 20-25% gain

80-89 Points (Exceptional)

Characteristics:

  • Most components strong, one may be slightly lower
  • Strong earnings and growth (C + A both 70+)
  • Good momentum (N 70+)
  • Favorable market (M 60+)

Typical Weakest Component:

  • Often A component (recovering from prior downturn, 3-year CAGR improving but not yet 40%+)
  • Sometimes N component (8-12% from high, not quite breakout)

Investment Action:

  • Strong buy
  • Position size: 10-15% of portfolio (standard sizing)
  • Entry timing: Ideal entry on pullback to 10-week moving average; can buy now if urgent
  • Stop loss: 7-8% below entry
  • Profit target: Sell 20-25% at 20-25% gain, hold remainder for 50-100%+ move

Example:

  • Stock scoring 85: C=90, A=78, N=88, M=80
  • Weakest = A (78): Growth is strong but not yet exceptional
  • Action: Buy, expect 50-150% upside over 12-18 months if fundamentals hold

70-79 Points (Strong)

Characteristics:

  • All components meet CANSLIM minimums
  • One component may be outstanding, others solid
  • No major red flags

Typical Profile:

  • C: 70-80 (strong earnings, not explosive)
  • A: 60-75 (meets 25% CAGR, could be more consistent)
  • N: 65-80 (10-15% from high, good but not perfect momentum)
  • M: 60-80 (bull market confirmed, not extended)

Investment Action:

  • Buy (standard recommendation)
  • Position size: 8-12% of portfolio
  • Entry timing: Wait for pullback to 10-week MA or minor consolidation
  • Stop loss: 7-8% below entry
  • Profit target: 30-80% upside typical over 6-12 months

Risk Consideration:

  • Monitor weakest component for deterioration
  • If weakest drops below 50, consider reducing position
  • These are quality candidates but not "home run" setups

60-69 Points (Above Average)

Characteristics:

  • Meets CANSLIM minimums but lacks conviction
  • Typically one component weak (40-50 range)
  • Remaining components solid (60-70 range)

Common Weak Points:

  • N weak (40-50): Stock 20-25% from 52-week high → Lacks momentum
  • A weak (50-60): 3-year CAGR only 25-28% → Marginal growth rate
  • C weak (50-60): Quarterly EPS growth 18-22% → Just meets minimum

Investment Action:

  • Buy on pullback or Watchlist
  • Position size: 5-8% of portfolio (conservative)
  • Entry timing: Wait for confirmation (improvement in weak component, or pullback to support)
  • Stop loss: 7-8% below entry
  • Profit target: 20-40% upside typical

Monitoring Strategy:

  • Set alerts for earnings reports (watch if C/A component improves)
  • Check weekly if price approaches 52-week high (N component improving)
  • If composite score rises to 70+, increase position

50-59 Points (Average)

Characteristics:

  • Barely meets CANSLIM criteria
  • Multiple components in 50-60 range (marginal)
  • May have one strong component (70-80) but others drag down composite

Investment Action:

  • Watchlist only - Do not buy yet
  • Position size: 0% (not ready)
  • Monitoring: Track for improvement in weak components
  • Potential catalyst: Upcoming earnings report could boost C score

When to Reconsider:

  • If next quarter shows earnings acceleration (C rises to 70+)
  • If stock breaks to new 52-week high (N rises to 70+)
  • If market strengthens significantly (M rises to 80+)
  • Goal: Wait for composite to reach 65-70+ before buying

Common Scenario:

  • Stock recovering from pullback
  • Fundamentals improving but not yet exceptional
  • Price consolidating, building base for next move
  • Patient approach: Wait 1-2 quarters for confirmation

40-49 Points (Below Average)

Characteristics:

  • Fails one or more key CANSLIM thresholds
  • Typically C or A component below 50 (earnings/growth insufficient)
  • Or N component very weak (stock far from highs, no momentum)

Investment Action:

  • Do not buy
  • Position size: 0%
  • Action: Remove from watchlist unless fundamental catalyst expected

Why Avoid:

  • Stocks scoring <50 rarely lead market advances
  • Even if they rally, gains are typically modest (10-20%)
  • Better opportunities exist in 70+ scorers
  • "You don't get paid to be right about mediocre stocks"

Exception:

  • If M (Market) component is weak (0-20) but C, A, N are all 70+
  • This indicates bear market is suppressing good stocks
  • Add to watchlist, wait for M to recover (next bull market)

<40 Points (Weak)

Characteristics:

  • Multiple components fail CANSLIM thresholds
  • Earnings decelerating (C < 40)
  • Or inconsistent growth history (A < 40)
  • Or price action weak (N < 40)

Investment Action:

  • Avoid entirely
  • These stocks are not CANSLIM candidates
  • Focus efforts on higher-scoring opportunities

Weakest Component Analysis

Every stock report identifies the weakest component (lowest individual score). This guides risk assessment:

If Weakest = C (Current Earnings)

Risk: Earnings deceleration or miss Monitor: Upcoming quarterly earnings reports Warning signs:

  • Revenue growth slowing
  • Margin compression
  • Guidance lowered

Action:

  • If C drops to <40 post-earnings → Sell immediately
  • Set tighter stop loss (5-6% vs. standard 7-8%)

If Weakest = A (Annual Growth)

Risk: Inconsistent multi-year history, or recovering from prior downturn Monitor: Multi-quarter trends (is growth accelerating consistently?) Warning signs:

  • Next quarter shows deceleration (C component weakens)
  • Revenue growth lags EPS growth significantly

Action:

  • Acceptable if A >= 50 and trending up
  • If A drops below 50 or C also weakens → Sell
  • This is often a "prove it" situation - stock must deliver for 2-3 more quarters

If Weakest = N (Newness)

Risk: Lacks price momentum, overhead resistance Monitor: Weekly chart for breakout to new highs Warning signs:

  • Stock fails to participate in sector rallies
  • Continues drifting further from 52-week high
  • Volume declining (waning interest)

Action:

  • Wait for N to improve (breakout confirmation) before buying
  • If N drops to <30 → Remove from watchlist
  • Stocks far from highs rarely lead; don't fight the tape

If Weakest = M (Market Direction)

Risk: Macro headwinds, bear market Monitor: S&P 500 vs. 50-day EMA, VIX level Warning signs:

  • S&P breaks below 50-day and 200-day MAs
  • VIX spikes above 25-30
  • Breadth deteriorates (more declining than advancing stocks)

Action:

  • If M = 0-20 → Raise cash immediately to 80-100%
  • Do not buy any stocks, even with perfect C, A, N
  • Wait for follow-through day (FTD) signaling market bottom before re-entering

O'Neil's Wisdom: "The best offense in a bear market is cash. You can't lose money sitting on the sidelines."


Market Direction Override

Critical Rule: If M component score = 0-20 (bear market), do not buy any stocks regardless of composite score.

Why This Matters

Historical data shows:

  • Bull markets: 75% of stocks move with market direction
  • Bear markets: Even best growth stocks decline 20-50%
  • Poor timing: Buying great stocks in bear markets = losses

Example Scenario

Stock XYZ:

  • C Score: 100 (exceptional earnings)
  • A Score: 95 (exceptional growth)
  • N Score: 98 (new highs)
  • M Score: 0 (bear market)
  • Composite: 85.3 (Exceptional by fundamentals)

What happens:

  1. Initial purchase at $100
  2. Bear market persists (M remains 0-20)
  3. Stock declines to $70-80 despite strong fundamentals (-20-30%)
  4. Stop loss triggered at $92-93 (-7-8% loss)

Lesson: Even 85-point stocks fail in bear markets. Wait for M > 40 (market recovery) before buying.


Portfolio Construction Guidelines

Position Sizing by Score

Composite Score Max Position Size Rationale
90-100 15-20% High conviction, rare setups
80-89 10-15% Standard sizing for strong stocks
70-79 8-12% Solid candidates, slight caution
60-69 5-8% Smaller positions, higher uncertainty
<60 0% Do not buy

Diversification Rules

Total Portfolio:

  • 5-10 positions maximum (concentrated portfolio, O'Neil style)
  • 10-20% cash reserve (for new opportunities)
  • Rebalance when any position exceeds 25% due to gains

Sector Limits:

  • Maximum 2 stocks per sector (avoid concentration risk)
  • Exception: If sector is clearly leading (e.g., Technology in AI boom), can have 3

Score Distribution:

  • 60-70% of portfolio: Stocks scoring 80+ (high conviction)
  • 30-40% of portfolio: Stocks scoring 70-79 (solid candidates)
  • 0% of portfolio: Stocks scoring <70 (only if very high conviction and specific catalyst)

Entry and Exit Rules

Entry Timing

Best Entry Points (O'Neil's research):

  1. Breakout from base (7-8 week consolidation minimum)

    • Stock makes new high on volume 40-50%+ above average
    • Buy within 5% of breakout price ("buy point")
  2. Pullback to 10-week moving average

    • Stock in uptrend pulls back 8-12%
    • Finds support at 10-week MA
    • Buy when bounces off MA with volume
  3. Early-stage base (Stages 1-2 of Weinstein cycle)

    • Stock just emerging from consolidation
    • Beginning Stage 2 uptrend
    • Low-risk entry before major advance

Stop Loss Discipline

Initial Stop: 7-8% below entry price (non-negotiable)

Why 7-8%:

  • O'Neil's 50-year research: Cutting losses at 7-8% prevents small losses from becoming disasters
  • Average successful trade: +20-25% gain
  • Risk/reward: Lose 7%, make 20% = 3:1 favorable

Stop Loss Adjustments:

  • Once stock up 15%: Move stop to breakeven (protect capital)
  • Once stock up 25%: Trail stop 10-15% below peak
  • In strong uptrend: Use 10-week MA as trailing stop

Profit Taking

Partial Profit Strategy:

  1. First 20-25% gain: Sell 20-25% of position (lock in profit)
  2. 50% gain: Sell another 20-25%
  3. Remainder: Hold for potential multi-bagger (100-500%)

Full Sell Signals:

  1. Stop loss hit: 7-8% loss → Sell immediately
  2. Climax top: Parabolic move on extreme volume, then reversal → Sell 50-100%
  3. Distribution: Heavy selling volume (stock down on high volume 4-5 days in week) → Sell
  4. Fundamental deterioration: C or A component drops below 40 → Sell
  5. Market enters correction: M score drops to 0-20 → Sell all stocks

Common Interpretation Mistakes

Mistake 1: Ignoring M Component

Error: "This stock has a 95 composite score, I must buy it!"

Reality: If M = 0, composite score is misleading. Stock will likely decline in bear market.

Correct Approach:

  • Always check M component FIRST
  • If M < 40, question whether to buy
  • If M = 0, do NOT buy regardless of C, A, N scores

Mistake 2: Chasing Low-Scoring Stocks

Error: "This 55-point stock is cheap, it could bounce!"

Reality: Stocks scoring <60 rarely lead market advances. Even if they rally, gains are modest.

Correct Approach:

  • Focus on 70+ scorers
  • "It's not about being right, it's about making money"
  • Better to buy fewer high-quality stocks than many mediocre ones

Mistake 3: Overweighting N Component

Error: "This stock is 40% below its high, so it's a bargain!"

Reality: Stocks far from highs lack institutional sponsorship and face overhead resistance.

Correct Approach:

  • N >= 60 (within 15% of high) is minimum
  • N >= 80 (within 10% of high) is ideal
  • "Leaders make new highs; laggards don't"

Mistake 4: Ignoring Weakest Component

Error: "Composite score is 75, that's strong enough to buy"

Reality: If weakest component is C = 40 (earnings decelerating), stock is at risk of sharp decline on next earnings miss.

Correct Approach:

  • Identify weakest component
  • Understand the specific risk it represents
  • Monitor that component closely
  • Set appropriate stop loss based on risk

Mistake 5: Not Cutting Losses

Error: "I'll hold this losing position; it will come back eventually"

Reality: Small losses turn into large disasters. O'Neil's data shows 90% of losses come from not selling losers early.

Correct Approach:

  • Set stop loss at entry (7-8% below)
  • Execute stop loss without hesitation
  • "Your first loss is your smallest loss"
  • Free up capital for better opportunities

Summary Checklist

Before buying any stock, verify:

  • Composite score >= 70 (Strong or higher)
  • M component >= 40 (Market not in downtrend)
  • C component >= 60 (Meets earnings minimum)
  • A component >= 50 (Meets growth minimum)
  • N component >= 40 (Not too far from highs)
  • S component >= 40 (Accumulation pattern present)
  • L component >= 50 (Outperforming market, RS leader)
  • I component >= 40 (Institutional backing present)
  • Weakest component identified and understood
  • Stop loss set at 7-8% below entry
  • Position size appropriate (based on score tier)
  • Sector exposure acceptable (max 2-3 stocks per sector)
  • Cash reserve maintained (10-20% of portfolio)

If all boxes checked → Execute purchase

If any box unchecked → Do not buy (or wait for condition to be met)


This interpretation guide provides a systematic framework for translating CANSLIM scores into disciplined investment decisions. By following these guidelines, you implement O'Neil's research-backed methodology for identifying growth stock leaders while managing risk effectively.

Source: SKILL.md on GitHub

1 alert12d5 checks · Risk SAFE
  • Gen Agent Trust Hub12d

    This skill implements a comprehensive stock screening tool using William O'Neil's CANSLIM methodology. It utilizes official APIs and public data from well-known financial services (Financial Modeling Prep and Finviz) to analyze US stocks. The skill follows security best practices by managing API credentials through environment variables and implements rate-limiting to ensure responsible interaction with external services. No malicious code, obfuscation, or unauthorized data exfiltration patterns were detected.

  • Socket12d

    No alerts

  • Snyk12d

    Risk: LOW · No issues

  • Runlayer6mo

    7/20 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at b938b86. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 18 hours ago.

Activeupdated 4 months ago

README badge

README badge for tradermonty/claude-trading-skills/canslim-screener