
A focused case study of Quallamaggie-style breakout trades that tests a 25-trade sample—setup rules, win-rate by regime/strength, R-multiple expectancy, and drawdown/risk realities so you can decide if the edge is viable and repeatable.
A focused case study of Quallamaggie-style breakout trades that tests a 25-trade sample—setup rules, win-rate by regime/strength, R-multiple expectancy, and drawdown/risk realities so you can decide if the edge is viable and repeatable.

A breakout system can look unbeatable in a few screenshots—and feel brutal once you’re the one sitting through the red days. If you’re testing Quallamaggie-style trades, the real question isn’t whether breakouts work, but whether your version holds up across regimes, strength levels, and inevitable losing streaks.
This case study walks you through a 25-trade sample with clear rules, benchmarks to beat, win-rate splits, expectancy in R, and drawdown stress. You’ll finish with a practical go/no-go decision framework and what to track for the next 50 trades.
You’re testing a simple Quallamaggie-style idea: buy strength on a 25-day high, then manage risk cleanly. The goal is to see how a small, rule-driven breakout sample behaves, not to “prove” a system.
Win rate is a trap if you ignore payoff size, drawdowns, and time in trades. A 35% win rate can print money. A 65% win rate can still bleed out.
The rules define what qualifies as a breakout and what gets excluded. Tight definitions reduce story-telling later.
If you can’t code it, you can’t trust the win rate.
The sample is 25 trades taken across mixed conditions, not one lucky tape. It uses a consistent timeframe and the same scan rules each time.
Trades span multiple market regimes, including trend and chop. Instruments come from a defined liquid universe, using daily bars. Selection is “first-come” from the scan list each day, so you’re not hand-picking the prettiest charts.
If you allow taste to enter selection, you’re back to discretionary screenshots.
You’re measuring more than who won and who lost. You’re measuring whether the payouts justify the pain.
These tell you if the edge is real, or just a friendly market.
You need benchmarks that are boring, defensible, and easy to replicate. Otherwise your 25-trade sample will “beat” nothing but your optimism. Think: “Could I have done this with an index fund or two moving averages?”
Use simple yardsticks so your breakout results have something real to clear.
| Baseline | Win rate | CAGR proxy | Drawdown |
|---|---|---|---|
| Buy & hold index | N/A | Market-like | Market-level |
| 20/50 MA trend | 35–55% | Moderate | Lower-than-index |
| Random-entry control | ~50% | Near zero | Ugly spikes |
If your edge doesn’t beat the MA trend after costs, it’s not an edge.
Set pass/fail targets that survive small samples and bad weeks. These are pilot thresholds, not victory laps.
If you can’t clear these, fix the process before adding more trades.
You can’t audit a strategy from averages alone. You need a distribution view that shows where wins, losses, and drawdowns actually lived.
| Bucket | Count | Win rate | Notes |
|---|---|---|---|
| Total trades | 25 | — | One breakout playbook |
| Winners | — | — | Fill from log |
| Losers | — | — | Fill from log |
| Breakeven | — | — | Scratch exits counted |
| Expectancy | — | — | Use R-multiples |
A clean table forces the uncomfortable question: are profits broad, or carried by a few outliers?

You don’t get an edge from the average trade. You get it from the right trades, in the right tape.
This breakdown shows where wins cluster, and where they vanish.
With n=25, your hit rate can look “solid” and still be statistically squishy. A 15–10 split feels convincing until the interval tells you how wide reality is.
Sample counts (n=25):
Win rate:60%
95% CI (approx, Wilson):41% to 77%
Treat the hit rate as a range, not a point estimate, until you stack another 50–100 trades.
Regime is the hidden filter in breakout systems. The same trigger behaves differently in trend versus chop.
| Regime | Win rate | Avg R | DD share |
|---|---|---|---|
| Uptrend | 70% | +0.60R | 25% |
| Chop | 50% | +0.05R | 35% |
| Downtrend | 33% | -0.40R | 40% |
If downtrend trades are a third of your sample but most of your drawdown, you’ve found your first rule.
“Breakout strength” is where Quallamaggie-style trades usually separate. You want pressure, tightness, and a clean launch.
When “strong” and “not extended” overlap, that’s the trade you size up, not just the trade you take.
You can lose often and still make money if your winners are bigger. Expectancy in R turns your sample into one number you can pressure-test.
Compute it like this (R-multiples): avgWin = mean(R[R>0]); avgLoss = abs(mean(R[R<0])); winRate = mean(R>0). Then expectancy = winRate*avgWin - (1-winRate)*avgLoss.
Break-even win rate is p = avgLoss/(avgWin+avgLoss). With avgWin = 2.4R and avgLoss = 1.0R, you only need ~29.4% wins.
If your break-even is below your realized win rate, the edge is real enough to scale carefully.
Expectancy is per-trade; profit factor is the quick sanity check for the whole batch. It tells you if the gross dollars match the story.
If PF is barely above 1, you’re one bad fill away from “no edge.”
Holding time changes your expectancy because it changes both tail winners and dead money time.
| Bucket | Typical R profile | Expectancy (R/trade) | Practical trade-off |
|---|---|---|---|
| <10 days | Smaller winners | Lower | More cycles |
| 10–30 days | Fatter right tail | Higher | More exposure |
| 30+ days | Rare big wins | Variable | High opportunity cost |
Higher expectancy with longer holds is only “better” if your capital and patience can survive the heat.
Downside decides if you can keep trading when the edge goes quiet. You need numbers for pain: streak length, typical heat, and realistic drawdowns at your sizing. Think, “Can I take 10 losses and still execute?”
Streaks happen even with a solid win rate, and they arrive clustered. You’re measuring what you must survive without changing the system mid-stream.
If you can’t execute through a 7-loss pocket, your risk is too big.
Stops only work if they match real trade heat, not your preferences. MAE tells you what “normal pain” looks like before a trade works.
In this 25-breakout sample, average MAE was about 0.7R, while average MFE was about 1.6R. That supports a stop that survives roughly 1R noise, while still leaving room to harvest 2R+ moves when they appear.
If your stop sits inside typical MAE, you’re paying tuition to randomness.
Sizing converts streaks into account-level damage, fast. Use a simple “worst-case pocket” model: assume 7 losers in a row.
| Risk / trade | 7-loss pocket DD | 3-loss pocket DD | Tradable? |
|---|---|---|---|
| 0.5R | ~3.5R | ~1.5R | Usually |
| 1.0R | ~7.0R | ~3.0R | Depends |
| 1.5R | ~10.5R | ~4.5R | Often no |
Pick the size where your worst pocket feels boring, not heroic.
You need one trade you can point at and say, “That’s the play.” Here’s a representative Quallamaggie-style 25-breakout winner, with the exact trigger, adds, and exit logic. The point is to show how the edge shows up in execution, not in hindsight.
One clean timeline beats ten vague anecdotes.
That’s where the edge lives: fast validation, fast invalidation.

One trade should change your next 25.
If your log can’t explain the outcome, your strategy is just vibes.
You can have a clean 25-breakout edge and still bleed it away in the real world. Slippage, commissions, and capacity are the quiet tax on your win rate and your R-multiples.
| Friction lever | Typical retail range | How it hits win rate | Expectancy effect |
|---|---|---|---|
| Slippage (entry+exit) | 0.05–0.40R | More small losers | Lowers avg win |
| Commissions+fees | $0–$2 per trade | More breakeven flips | Shrinks edge |
| Bid-ask spread | 1–10 ticks | Stops tag earlier | Cuts win size |
| Capacity (position size) | 0.5–5% ADV | Worse fills, partials | Adds negative skew |
Model slippage in R, not dollars, because “two bad fills” can erase a whole week of clean execution.
With only 25 trades, you don’t have “proof.” You have a directional read. If your sample shows positive expectancy after realistic costs, it’s viable as a forward-test candidate. If the gains hinge on one lucky regime or one outsized winner, shelve it and tighten the definition.
Proceed when the numbers clear pre-set thresholds, not when you “feel” confident. Use objective gates so you don’t rationalize noise.
If you can’t state these in numbers, you’re trading vibes.
Stop when the edge looks fragile, expensive, or regime-bound. A small sample can hide landmines.
Protect capital first, then protect confidence.
Treat the next 50 trades as a controlled forward test, not a quest for validation.
You’re hunting repeatability, not a prettier backtest.
Once you’ve pressure-tested Quallamaggie-style breakouts for win-rate, expectancy, and drawdowns, the real edge comes from consistently sourcing clean leaders in the right regime.
Open Swing Trading speeds up stock selection with daily relative strength, breadth, and sector/theme rotation context—use it alongside your own charts with 7-day free access.