In a choppy tape, breakouts sputtered and neither bot blinked

Scanner performance, bot report cards, and the Monday outlook for May 18 to May 22.

Participation was selective, and confirmation remained scarce

Last week produced plenty of scanner activity, but only a quarter of setups actually broke out and failures slightly exceeded breakouts. That is usually a sign of a market offering movement without broad follow-through, where select names can work but the average trigger is less forgiving. For context and continuity, this digest builds on the May 11-15 weekly recap.

The practical read is simple: opportunity existed, but edge depended more on filtration and trade management than on raw setup volume. With 226 setups still unresolved, the tape may still be in the process of choosing direction rather than delivering it cleanly.

The scanner stayed busy, but quality concentrated in a narrow slice

The scanner logged 485 total setups, with 125 breakouts for a 25.8% breakout rate. That is not weak enough to dismiss outright, but it is not broad enough to support loose execution either. Near any discussion of setup grades and breakout levels, it makes sense to see live setups in the scanner and focus only on the names with clear pressure and tight distance to trigger.

485
Total Setups
125
Breakouts
25.8%
Breakout Rate
127
Failures
226
Unresolved
7
Expired
19
A Setups
5
A+/A++ Setups

Grade quality skewed heavily toward A- setups, with 258 names, while true top-tier supply stayed thin at just 24 combined A and A+ setups. On realized extension, only 4 names reached TP3, 4 reached TP2, and 10 reached TP1, which reinforces the same message: breakouts existed, but sustained trend expansion was limited.

WEX traded lightly and gave back modestly, while XCEL stayed sidelined

WEX took 3 trades, finished with 1 win, and closed the week at -0.47R. That is a small sample, but the pattern is still informative: one trade held a small gain, one ended near flat, and one hard stop did most of the damage. If you want to track current bot behavior and execution in real time, watch the bots trade live in the Edge Lab.

$XLP BULL slipped -3.0% for -0.03R and $AAPL BULL gained +3.1% for +0.03R, both exiting via trailing floor logic. Those results suggest the trailing framework is doing its job of containing average drift, but not extracting much when follow-through is muted. $XLV BULL was the decisive outlier, dropping -47.2% for -0.47R on a hard stop, and that single trade accounted for essentially the entire negative week.

XCEL took no trades. In a week where breakouts were only slightly outnumbered by failures and higher-grade setups were scarce, inactivity is not necessarily a flaw. It can also mean the model correctly refused substandard conditions.

What worked: disciplined containment on marginal trades. What did not: exposure to a failed bullish attempt that never stabilized after entry.

A shallow win, a shallow loss, and one clean reminder that downside concentration matters

The best trade of the week was WEX in $AAPL BULL at +3.1% and +0.03R, though "best" needs context here. This was not a momentum week where leaders separated dramatically. The system captured a gain, but the outcome also shows how hard it was to convert valid entries into meaningful R expansion.

$XLP BULL at -0.03R was effectively noise, not a strategic failure. The real story sits in $XLV BULL at -0.47R. When one stopped trade outweighs the contribution of the rest of the book, it tells you the environment is penalizing persistence faster than it is rewarding patience.

That makes this a week to review entry context more than exit precision. In markets like this, mediocre setups can look acceptable on paper, but the post-entry path quickly exposes whether institutional demand is actually present.

The largest missed edge came from filters that may now be too restrictive

The biggest missed-trade bucket was the day_pct_filter, which blocked 8 trades worth +20.8R left on the table. After that came the rvol_threshold with 5 missed trades and +10.4R, then spy_alignment with 3 trades and +5.9R. Together, these three filters explain most of the missed opportunity.

Pattern Missed Trades R Left on Table
day_pct_filter 8 +20.8R
rvol_threshold 5 +10.4R
spy_alignment 3 +5.9R
not_on_watchlist 2 +2.2R

The takeaway is not that these filters are wrong. It is that they may be calibrated for a stronger, cleaner tape than the one we have now. When realized upside is narrow and leadership rotates quickly, softer day-range and RVOL thresholds can sometimes catch early moves that a stricter model ignores.

Bullish names lead the watchlist, but a few bearish setups are close enough to matter

Monday's coil list leans bullish, led by $BMY, $ORCL, $RTX, $STX, NOW, $XLP, and ARM. The closest names to trigger are RTX at 0.304% from level, XLP at 0.394%, $ABNB at 0.436%, and BMY at 0.702%. For live grading and proximity updates on these levels, see live setups in the scanner.

Ticker Grade Bias P Distance RVOL
BMY A- BULL 91 0.702% 0.37x