{
  "scan_date": "2026-06-03",
  "macro_notes": "TSX Composite RSI at 65.2 — broad market approaching overbought territory; selective entry warranted. Energy sector is the top TSX performer in 2026, up ~35% YTD as oil prices remain elevated (CNQ +2.8%, IMO +3%, CVE +4% on June 2). Gold near $5,600 USD; gold stocks showing RSI ~33 (AEM) indicating sector correction after prior strong run. Canadian bank stocks on positive breakouts list but RSI tracking toward the 65 ceiling. High-selectivity environment — only 1 confirmed new buy at score 3; 2 watchlist candidates pending confirmation.",
  "signals": {
    "new_buys": [
      {
        "rank": 1,
        "ticker": "CNQ.TO",
        "company": "Canadian Natural Resources Ltd.",
        "sector": "Energy",
        "price_cad": null,
        "setup_type": "Trend continuation — RSI in optimal zone within leading sector",
        "setup_score": 3,
        "rsi_14": 50.78,
        "macd_positive": true,
        "above_200d_ema": true,
        "pe_ratio": null,
        "next_earnings": "2026-08-06",
        "entry_zone_cad": null,
        "stop_cad": null,
        "t1_cad": null,
        "t2_cad": null,
        "t3_cad": null,
        "green_flags": [
          "Energy sector (XEG) in strong uptrend — TSX energy up ~35% YTD 2026",
          "RSI 50.78 — in optimal 35-55 swing zone",
          "MACD histogram slightly positive (0.143)",
          "Earnings well clear — next report Aug 6, 2026; no imminent earnings risk",
          "Technical rating: Buy (Barchart); Strong Buy (1-week trend, ChartMill)"
        ],
        "red_flags": [
          "Setup score 3 — below the 4-5 threshold stated in screen_criteria.json; treat as provisional until pullback to 20d or 50d EMA is confirmed",
          "MACD histogram value 0.143 is very small — confirm histogram direction on intraday chart before entry",
          "Current price unavailable from screeners — confirm above 200d EMA and calculate ATR-based stop before sizing",
          "TSX Composite RSI 65.2 — broad market stretched; rotation risk elevated",
          "Ex-dividend date Jun 18, 2026 — confirm dividend treatment if holding through ex-date"
        ]
      }
    ],
    "holds": [],
    "exits": [],
    "watchlist": [
      {
        "ticker": "CVE.TO",
        "waiting_for": "RSI confirmation below 65. Stock has risen 47.11% from Jan 7, 2026 pivot — RSI is likely elevated and may exceed the 65 hard-filter ceiling. MACD shows short-term MA above long-term MA (positive), but volume fell on the last session despite rising price (bearish divergence). Earnings Jul 23, 2026 — safe. Promote to new_buy only if RSI confirmed below 65 on a constructive pullback with volume declining on the down days."
      },
      {
        "ticker": "BNS.TO",
        "waiting_for": "Pullback to 50d EMA (~$101-103 CAD range). RSI last confirmed at ~64.56 (earlier-2026 data) — too close to the 65 hard ceiling and above the 35-55 scoring zone. MACD histogram +0.03 (barely positive). 200d EMA at $86.93 confirms long-term uptrend intact. Next earnings ~Aug 2026 — safe. Enter only on a pullback that brings RSI back into the 45-55 range with MACD histogram holding positive."
      }
    ]
  },
  "excluded": [
    {
      "ticker": "AEM.TO",
      "reason": "Hard filter fail: RSI 33.1 < 35 floor. MACD histogram -0.976 (negative). Earnings Jul 29, 2026 (safe) but technicals do not qualify."
    },
    {
      "ticker": "IMO.TO",
      "reason": "3-month MACD sell signal confirmed. Contradictory moving average signals (long-term MA above short-term MA = general sell per StockInvest). Insufficient positive confirmation to score above 2."
    },
    {
      "ticker": "ABX.TO",
      "reason": "No confirmed RSI, MACD, or 200d EMA data returned by any screener for June 2026. Cannot score."
    },
    {
      "ticker": "K.TO",
      "reason": "No confirmed RSI, MACD, or 200d EMA data returned by any screener for June 2026. Cannot score."
    },
    {
      "ticker": "BTO.TO",
      "reason": "No confirmed RSI, MACD, or 200d EMA data returned by any screener for June 2026. Cannot score."
    },
    {
      "ticker": "TD.TO",
      "reason": "No confirmed RSI, MACD, or 200d EMA data returned by any screener for June 2026. Cannot score."
    },
    {
      "ticker": "CM.TO",
      "reason": "Trading at decade-high P/E multiple (11.7x fiscal 2026 estimates) per Globe and Mail breakout data — elevated valuation risk. No confirmed RSI or MACD data for June 2026. Q2 2026 earnings released May 28, 2026 — next earnings ~Aug-Sep 2026 (safe), but insufficient technical data to score."
    }
  ]
}
