Building and Testing a Trading System
Bull Flags: A Worked Trading Plan
One fictional stock, one written plan, and both ways it can end — the whole machine running from watch list to exit, including the trade that loses.
What we're doing here
You have the parts. You know what a continuation pattern is — a chart pattern suggesting the existing trend resumes — and you've met the triangle and the pennant as examples of one. You know what a trading plan is: written rules for what you buy, when you exit, and how much you risk. You've seen entry signals, stop-loss orders, position sizing, and routines, each on its own.
This lesson adds one more continuation pattern, because it's the one we're going to build the plan around. A bull flag is a sharp rally — the flagpole — followed by a short sideways drift, the flag, before the trend picks back up. Same family as the pennant, same supply-and-demand story: buyers paused, they didn't leave. And the same honest caveat as every shape in the last lesson — you only know it was a flag once price has left the drift, and it can leave through the bottom.
Parts in a box are not a machine. This lesson bolts them together.
We're going to build one complete plan around one pattern, then run one fictional stock through it twice — once where it works, once where it doesn't. By the end you should be able to look at any plan, yours or someone else's, and tell whether it's finished.
The plan, on one page
Here's the whole thing before we take it apart. A finished plan fits on one page — that's not a design goal, it's a test. If yours doesn't fit, some part of it is still a feeling rather than a rule.
| Slot | This sample plan says |
|---|---|
| Objective | Buy short-term continuation in stocks already in an uptrend, entering on a bull flag and exiting at a measured target or a stop. |
| Watch list criteria | Stocks trading above a 50-day moving average that is itself rising. |
| Entry | On a resistance break above the top of the flag, or on a support bounce (CAHOLD) off the bottom of it — whichever the pattern's shape makes readable. |
| Position size | Risk no more than 1% of the portfolio on the trade, and never put more than 10% of the portfolio into one position. The smaller of the two numbers wins. |
| Stop | A stop-loss order 1% below the lowest low inside the flag. |
| Target | The height of the flagpole, added to the entry price. |
| Routine | Daily: check open positions for exits, then the watch list for entries. Weekly: rebuild the watch list on the weekend. Quarterly: read the journal and decide what to change. |
Seven slots. Every one of them answers a question you'd otherwise answer in the moment, with money on the line and your pulse up. That's the entire point of writing it down: the decisions get made when you're calm and get executed when you're not.
Notice what the objective does. It names the style, the market condition, the tool, and the exits, in one sentence. If you can't write that sentence, you don't have a plan yet — you have a preference.
Why this plan needs two entry rules
Video coming soon
This lesson explains the idea in full without it.
Most pattern plans enter on a breakout — price moving decisively through resistance. This one carries two entry rules, and the reason is worth sitting with, because it's the kind of thing that separates a plan that survives contact with a real chart from one that doesn't.
The honest problem: while a flag is forming, you don't know it's a flag. You know a stock rallied and is now drifting. It might be a flag. It might be the rally ending. The pattern is only certain in hindsight, and hindsight doesn't take orders. So the plan needs to work on a shape you can only half-see.
That's why it accepts either signal:
- A resistance break. Price closes above a line drawn along the top of the drift. Simple to spot; you need one clean line.
- A support bounce, identified with CAHOLD — a Close Above the High Of the Low Day. Find the lowest day in the pattern; when a later day closes above that day's high, buyers have shown up. This one needs an obvious lowest low.
Which rule is available depends on the shape the drift takes, and flags come in a few recognizable ones. A tight rectangle sitting on top of a near-vertical pole has a flat, obvious bottom — the lowest low is right there, so CAHOLD reads cleanly. A drift that narrows to a point like a pennant has no single obvious low, but it does have a converging top line — so the resistance break is the readable signal. A long, wavy drift like a flag in wind may give you neither cleanly, which is itself information: if you can't draw the lines, you don't take the trade.
Figure
The rule underneath all four: let the shape tell you which signal is legible, and take no trade when neither is. "No trade" is a valid output of a plan. Plans that can't say it end up taking everything.
How many shares — on a portfolio you might actually have
Now the part most people skip, which is the part that decides whether you're still here in a year.
Say your portfolio is $3,000. That's the whole account — an amount someone might genuinely have after a year of setting a little aside, not a number from a brochure. The percentages below don't care about the size, which is the useful thing about percentages: run the same steps on $300,000 and the logic is identical, only the digits change.
This plan risks 1% per trade. That's $30.
Read that again, because it's the sentence people misread. It does not mean you invest $30. It means that if the trade goes wrong exactly the way you planned for, $30 is what leaves the account. The amount you invest is calculated backwards from that, and it's the last thing you work out, not the first.
Read that again, because it is the sentence people misread. It does not mean you invest $30. It means that if the trade goes wrong in exactly the way you planned for, $30 is what leaves the account.
The amount you actually invest gets calculated backwards from that. It's the last thing you work out, not the first.
Read that again, because it's the sentence people misread. It does not mean you put that small amount in. It means that if the trade goes wrong in exactly the way you planned for, that is the amount that leaves the account.
How much you actually buy gets worked out backwards from there. It is the last thing you figure out, not the first.
Here's the setup. Fictional stock UVWXYZ, sitting above a rising 50-day moving average, so it clears the watch list criteria.
- UVWXYZ climbs from $20 to $26 over about two weeks. That run is the flagpole — the sharp move that comes before the drift. It's a $6 move.
- Price then drifts sideways for eight sessions, between about $25.00 on top and $24.00 on the bottom, on quieting volume. That's the flag.
- On the ninth session, UVWXYZ closes at $25.20, above the top of the drift. That's the resistance break. It's an entry.
Now size it, in order:
| Step | Arithmetic | Result |
|---|---|---|
| 1. Portfolio risk | $3,000 × 1% | $30 |
| 2. Where's the stop? | 1% below the pattern's low: $24.00 × 0.99 | $23.76 |
| 3. Trade risk per share | Entry − stop: $25.20 − $23.76 | $1.44 |
| 4. Shares the risk rule allows | $30 ÷ $1.44 = 20.8 → round down | 20 shares |
| 5. What that costs | 20 × $25.20 | $504 |
Round down at step 4, always. Rounding up puts you over the risk you decided on, which makes the whole exercise decorative.
But look at step 5 against the other rule. $504 is nearly 17% of a $3,000 portfolio, and the plan caps a single position at 10% — that's $300, or 11 shares. The two rules disagree.
The smaller number wins. You buy 11 shares, for $277.20. Your actual risk drops to 11 × $1.44 = $15.84, about half a percent of the account.
Both exits, decided before you own a share
Two exits, and both are set before the order goes in. This ordering is the rule, not a suggestion. Deciding where to sell while watching it fall is how a small planned loss becomes a large unplanned one.
The stop. A stop-loss order — a standing order to sell if price falls to a level you set — goes at $23.76, that 1% cushion below the flag's low at $24.00. The cushion exists because a low tested to the penny is a low that gets nicked by noise; you want to be taken out when the pattern is genuinely broken, not when it's breathing.
Be clear about what a stop does and doesn't do. It's an instruction to sell once price reaches your level — not a promise about the price you'll get. When it triggers, your order joins everyone else's, and if the price is moving fast or the market opened lower than it closed, you can fill meaningfully below your number. A stop caps your loss most of the time. It doesn't guarantee it.
The target. This plan measures the flagpole and adds it to the entry. The pole was $6. Entry was $25.20. Target: $31.20.
The reasoning behind pole-measuring is a piece of behavior, not geometry: the idea is that the crowd that produced the first burst is still around, and if the pattern resolves the way it's supposed to, the second burst has a similar amount of energy in it. That's a premise. It's a plausible one. It is not a law, and plenty of pole-measured targets never get reached — which is fine, and which is exactly why the stop exists.
Now look at what the plan bought you before a single tick moved. You're risking $1.44 a share to make $6.00 a share — about four to one. That ratio is the whole reason a plan can be worth running even when plenty of its trades lose. You don't need to be right often. You need your right to be bigger than your wrong. (Measuring whether that's actually true for your rules is the next lesson's job — that's what backtesting and expectancy are for.)
Figure
Run one: it works
UVWXYZ breaks out and keeps going. Over the next three weeks it grinds up to $31.20 and your target fills.
- In: 11 shares at $25.20 — $277.20
- Out: 11 shares at $31.20 — $343.20
- Result: +$66.00, about 2.2% of the $3,000 portfolio.
Sixty-six dollars. That's the number, and your reaction to it is worth noticing. It feels small. It is small — and it came from a trade that did exactly what it was drawn up to do, on a portfolio that's a realistic starting point. Anyone showing you bigger numbers from the same setup is showing you a bigger account or a bigger risk, and they should tell you which.
Sixty-six dollars. That's the number, and your reaction to it is worth noticing.
It feels small. It is small — and it came from a trade that did exactly what it was drawn up to do, on an account size that's a realistic place to start. Anyone showing you bigger numbers out of this same setup is showing you a bigger account or a bigger risk, and they should tell you which one.
That's the number, and your reaction to it is worth noticing.
It feels small. It is small — and it came from a trade that did exactly what it was drawn up to do, on an account that's a realistic place to start from.
So when somebody shows you much bigger numbers out of this same setup, they are showing you either a much bigger account or a much bigger risk. They should tell you which one.
Run two: it doesn't
Same plan. Same stock. Same entry at $25.20 — you had no way to tell these two runs apart at the moment you bought, and that's the honest part.
This time the breakout doesn't hold. UVWXYZ closes back inside the flag the next day. Two sessions later it slides through $24.00, and at $23.76 your stop triggers.
- In: 11 shares at $25.20 — $277.20
- Out: 11 shares at $23.76 — $261.36
- Result: −$15.84, about half a percent of the portfolio.
Here's the sentence this whole lesson exists to deliver: that is the plan working correctly.
Not the plan failing. Not you failing. You identified a setup, sized it so a bad outcome couldn't hurt you, decided your exit in advance, and when the market told you the idea was wrong, you were already gone for a price you'd chosen days earlier while calm. The machine ran end to end and produced its designed output for that input. A stop that triggers is a stop doing its job — it is the one part of the plan with a guaranteed use.
The failure mode isn't the loss. The failure modes are: not having a stop, moving it down because you're sure it'll come back, or sizing so big that $15.84 was $300 instead.
Here's the sentence this whole lesson exists to deliver: that is the plan working correctly.
Not the plan failing. Not you failing.
You identified a setup. You sized it so a bad outcome couldn't really hurt you. You decided your exit in advance. And when the market told you the idea was wrong, you were already gone — at a price you'd chosen days earlier, while calm. The machine ran end to end and produced exactly the output it was designed to produce for that input. A stop that triggers is a stop doing its job.
The failure isn't the loss. The failures are: not having a stop at all, moving it down because you're sure it'll come back, or sizing so big that $15.84 was $300 instead.
Here's the sentence this whole lesson exists to deliver: that is the plan working correctly.
Not the plan failing. Not you failing.
You spotted a setup. You bought a small enough amount that a bad outcome couldn't really hurt you. You decided where you'd get out before you owned a single share. And when the market told you the idea was wrong, you were already gone — at a price you had picked days earlier, while you were calm.
The machine ran from one end to the other and produced exactly what it was built to produce for that input. A stop that fires is a stop doing its job.
So the failure isn't the loss. The failures are: never setting a stop at all, moving it down because you're sure the price will come back, or buying so much that a small planned loss becomes a large one.
| Run one | Run two | |
|---|---|---|
| Watch list criteria met | Yes | Yes |
| Entry signal | Resistance break, $25.20 | Resistance break, $25.20 |
| Shares (10% cap binds) | 11 | 11 |
| Stop | $23.76 | $23.76 |
| Target | $31.20 | $31.20 |
| What happened | Target reached | Flag broke down; stop triggered |
| Exit price | $31.20 | $23.76 |
| Result | +$66.00 (+2.2% of portfolio) | −$15.84 (−0.53% of portfolio) |
| Did the plan work? | Yes | Yes |
Figure
The routine that keeps it running
A plan that lives in a drawer is a document, not a system. Routines are what make it a thing that happens.
Daily. Open positions first, watch list second — in that order. Money already at risk outranks money you're considering risking. Check whether any stop triggered or target hit, adjust what the rules say to adjust, and only then look for new entries.
Weekly. Rebuild the watch list on the weekend. The timing is the point, not the task. Markets are closed, nothing is ticking, and nothing can be bought — so the screening happens with your judgment intact rather than mid-move with adrenaline running. Choosing when you make a decision is a way of choosing how well you make it.
Quarterly. Read the trading journal — your record of trades and the reasoning behind them — and decide what, if anything, to change. Quarterly rather than monthly for a plain reason: a month of a plan like this won't produce enough trades to tell skill from luck. Judging a system on five trades is reading tea leaves with extra steps.
And keep the journal as you go. Not just entries, exits, and results — the reasoning. Which entry rule fired, which shape the flag was, whether you followed the plan. Months from now, "did this work?" is a question only the journal can answer, and it can't answer it retroactively.
What you should actually take from this
The specific numbers here — 1%, 10%, the 1% stop cushion, the pole-measured target — are one author's choices. Reasonable people pick differently, and none of them can prove theirs are right in advance. That's not a gap in this lesson. It's the actual state of the field, and anyone who tells you otherwise is selling a course.
We have not told you how often bull flags work, and we're not going to. We don't have a number we can stand behind, and inventing one would be the single most useful lie we could tell you. What we can say honestly is that the pattern is widely watched, that it fails often enough that the stop is load-bearing, and that the only success rate that should ever govern your money is one you measured yourself on your own rules. That measurement is the next lesson.
What transfers is the machine. Seven slots, all filled, decided in advance, small enough that being wrong is boring. Fill those slots with your own answers, write them down, and then go find out whether they hold up.
Key takeaways
- A complete plan fills seven slots — objective, watch list criteria, entry, position size, stop, target, routine — and fits on one page. If a slot is empty, you'll fill it in the moment, with money on the line. That's the decision you're trying to avoid making.
- Position size is calculated backwards from the loss you're willing to take, not from what you want to own. Decide the dollar risk, find the stop, get the risk per share, divide. Round down. When two rules disagree about size, take the smaller trade.
- Both exits get set before you buy. A stop caps your loss most of the time but never guarantees a price — which is why sizing, not the stop, is what actually protects you on a bad day.
- A triggered stop is the plan working, not failing. You lose a small amount you chose in advance, at a level you set while calm. The failures are having no stop, moving it, or sizing so large that a normal loss hurts.
- Every number in this lesson is invented and every rule is one person's choice. Nobody can tell you in advance how often a pattern will work. The only win rate worth trusting is one you measured on your own rules — which is what the next lesson is for.
- A finished plan answers seven questions — what it's for, what's eligible, when you buy, how much, where you get out if it goes wrong, where you get out if it goes right, and what you check when. It fits on one page. Any slot you leave blank is one you'll fill in the moment, with money on the line.
- How much to buy gets worked out backwards from the loss you're willing to take, not from how much you want to own. Round down. And when two of your own rules disagree about the amount, take the smaller one.
- Both exits get decided before you buy anything. The stop caps your loss most of the time, but it never promises you a price — which is why the amount you bought, not the stop, is what really protects you on a bad day.
- A stop that fires is the plan working, not failing. You lost a small amount you chose in advance, at a level you set while calm. The real failures are having no stop, moving it, or buying so much that an ordinary loss hurts.
- Every number in this lesson is invented and every rule is one person's choice. Nobody can tell you ahead of time how often a shape will work. The only success rate worth trusting is one you measured yourself on your own rules.
Check your understanding
Question 1 of 5