{
  "scan_date": "2026-05-18",
  "macro_notes": "Brent crude at $107.77 (+3.4%) strongly supports energy sector. Gold at $4820 (near all-time high) keeps gold miners elevated — watch RSI carefully. VIX at 17.33 (low volatility) favours clean swing setups. TSX and US equities near record highs; S&P 500 Q1 EPS growth >25% YoY. TSX led by energy May 12, tech and financials May 14. Screener coverage limited this session: SwingTradeBot Canada and Barchart returned no specific tickers (index/navigation pages only); Trade That Swing returned 403 Forbidden. Globe and Mail returned 3 tickers — all excluded (RSI above 65 cutoff). No new buy candidates cleared all Step 3 hard filters with confirmed data. Watchlist preserved for next session when post-earnings price reset may create pullback entries.",
  "signals": {
    "new_buys": [],
    "holds": [
      {
        "ticker": "SU.TO",
        "days_held": 8,
        "current_price_cad": 93.99,
        "stop_intact": true,
        "t1_hit": true,
        "t2_hit": false,
        "action": "T1 HIT ($93.80). Exit 30% — sell 1 of 3 shares at or near $93.80. Raise stop to breakeven $87.02 on remaining 2 shares. Hold toward T2 $100.58. RSI 60.99 (approaching 65 upper bound — monitor). Barchart 100% Buy. Brent $107.77 WTI tailwind intact. No earnings concern (reported May 5). Time-stop override: T1 was reached, negating the 3-day rule. Price data as of May 15 close."
      },
      {
        "ticker": "K.TO",
        "days_held": 2,
        "current_price_cad": 39.03,
        "stop_intact": null,
        "t1_hit": false,
        "t2_hit": false,
        "action": "HOLD — within 3-day time window (Day 2). CRITICAL STOP ALERT: May 15 close $39.03 is only $0.23 above stop $38.80. Stock dropped 7.97% on entry day. RSI 37.31 (near 35 floor). Barchart 8% Buy (very weak). If May 18 opens at or below $38.80 — EXIT immediately (stop hit). Risk violation still open: 10 shares held vs 5-share max per 1% rule — do NOT add. Gold sector correlated with AGI.TO exit. May 18 price unconfirmed — stop_intact is null."
      }
    ],
    "exits": [
      {
        "ticker": "AGI.TO",
        "exit_reason": "Time stop triggered: Day 5 with no progress toward T1. Price $55.32 (May 15) vs entry $60.08 on May 12 = -7.93% adverse move. T1 at $66.91 not approached. Stop at $53.25 is still intact ($55.32 > $53.25) but trend is adverse and holding longer adds risk. Risk violation (10 shares held vs max 3 per 1% rule) reinforces full exit. Earnings were April 29 — not the trigger. Time stop is the sole exit reason.",
        "action": "EXIT full position"
      },
      {
        "ticker": "QSR.TO",
        "exit_reason": "Time stop triggered: Day 3 with no progress toward T1 ($114). Price $104.35 (May 15) vs entry $105.33 on May 14 = -0.93% adverse move. Stop at $104.00 has only $0.35 cushion and is at risk of being hit at any moment. Breakout trigger ($109 reclaim) never fired — early entry thesis unconfirmed after 3 trading days. Earnings were May 6 — not the trigger. Exit before stop is hit to preserve capital.",
        "action": "EXIT full position"
      }
    ],
    "watchlist": [
      {
        "ticker": "CNQ.TO",
        "waiting_for": "Post-earnings (May 7) pullback to 20d or 50d EMA ($58.42 as of May 6). Pre-earnings data: price $65.26, RSI 56.34, MACD histogram +0.37 (positive), above 200d EMA ($47.86). Stochastic was 91 (overbought) going into May 7 earnings — need RSI to reset into 35-55 zone on declining volume before entry. D/E and FCF to be confirmed. Run follow-up confirmation search next session: 'CNQ.TO TSX RSI MACD 200 EMA earnings May 2026'."
      },
      {
        "ticker": "ABX.TO",
        "waiting_for": "Confirmed price, RSI 35-55, MACD positive, and 200d EMA position after Q1 2026 earnings (reported May 11). Gold at $4820 is a strong fundamental tailwind. Large-cap gold producer — market cap well above $500M. D/E and FCF to be verified. Run confirmation search next session: 'ABX.TO TSX RSI MACD 200 EMA May 2026 Barrick Mining'."
      }
    ]
  },
  "excluded": [
    { "ticker": "INE.TO",  "reason": "RSI 89 — exceeds 65 hard cutoff (Globe and Mail breakouts screener, May 2026)" },
    { "ticker": "DOL.TO",  "reason": "RSI 72 — exceeds 65 hard cutoff (Globe and Mail breakouts screener, May 2026)" },
    { "ticker": "DR.TO",   "reason": "RSI 70 — exceeds 65 hard cutoff (Globe and Mail breakouts screener, May 2026)" },
    { "ticker": "BHC.TO",  "reason": "Debt-to-equity almost certainly exceeds 1.5 maximum (Bausch Health carries multi-billion dollar debt load)" },
    { "ticker": "CJR.B",   "reason": "Market cap below $500M CAD threshold (Corus Entertainment, declining legacy media)" }
  ]
}
