Chart pattern · Bullish continuation
Bullish Rectangle pattern
By the PatternX team · Published
- Type
- Bullish continuation
- PatternX trades it
- Long (buy) on the breakout
- Also called
- rectangle breakout, trading range breakout
- Detected on
- 8 timeframes, 1-minute to daily — crypto, stocks, ETFs and FX
Short answer
A bullish rectangle is a continuation pattern in which an uptrend pauses inside a horizontal range, with price bouncing between flat resistance and flat support, before breaking out above resistance. It signals that buyers absorbed the selling during the pause, and a decisive close above the top of the box, ideally on rising volume, confirms it.
What is a Bullish Rectangle?
A bullish rectangle is a sideways pause inside an uptrend. After a rally, price oscillates between a roughly horizontal ceiling and floor, touching each at least twice, then breaks out upward and the trend resumes. It is one of the plainest continuation patterns: no converging lines and no curve, just a box.
The psychology is a temporary balance. Earlier buyers take profits near the ceiling while new buyers who missed the rally step in at the floor, and neither side wins while the box holds. Over time the supply at resistance is used up, and a push through the ceiling tips the balance back to buyers. Because both edges are obvious to everyone, they collect orders: stops above resistance and below support, and breakout orders just beyond each edge. That makes rectangle breakouts sharp when they work and makes false breakouts common when they do not.
Anatomy of the Bullish Rectangle
A rectangle has few parts, and each one is easy to measure:
| Component | Role | What to check |
|---|---|---|
| Prior advance | Makes the rectangle bullish | A real rise into the box, not a drift |
| Resistance | The ceiling | Two or more swing highs at similar prices |
| Support | The floor | Two or more swing lows at similar prices |
| Box height | Resistance minus support | Sets the measured move |
| Touches | Tests of each edge | More touches make the edges clearer |
| Breakout | A close above resistance | Decisive, with volume |
| Retest | Old resistance tested from above | Optional, but a held retest is constructive |
The edges are zones, not exact prices. Swing highs and lows rarely line up to the tick, so traders average them or draw the line through the bar bodies. If the edges converge, you are looking at a triangle; if both slope together, it is a channel or a flag; and if the ceiling is flat while the floor rises, it is closer to an ascending triangle.
How to identify a Bullish Rectangle
A checklist for a bullish rectangle, following common textbook practice; PatternX's own numeric rules come later, in the detection section.
- Confirm the prior advance. The rally into the box is what makes it bullish; without it you have a range, not a continuation.
- Mark resistance through at least two swing highs at similar prices, and support through at least two swing lows. Both are levels of support and resistance the market has already respected.
- Check that both edges are horizontal. Converging or sloping edges belong to other patterns.
- Measure the height. Too narrow and the box is noise; too wide and it is a broad range rather than a pause.
- Check recency. The edges should have been tested recently, not weeks before the breakout.
- Read the bounces. Rallies toward resistance on rising volume and dips to support on light volume hint at accumulation.
- Wait for a close above resistance, then plan the stop at support and the target one box height above the breakout.
- Check the reward-to-risk before entering, because a stop at support can be a long way from an entry above resistance.
Confirmation
A close above resistance confirms the rectangle, but rectangles produce more pokes through their edges than most patterns, so the quality of the close matters. Traders look for a breakout that clears the edge by a margin rather than a tick, volume clearly above the range's recent average, and follow-through on the next bars. A retest of the broken ceiling that holds as support is further confirmation and offers a closer stop.
Waiting is worth it because a box is full of opposing orders. Entering on the first touch above the ceiling, before any close, is how many traders get caught by stop runs. PatternX requires a fresh close above resistance plus a 0.1% margin before it treats the move as a breakout.
Invalidation
The bullish rectangle is invalidated when:
- A breakout fails and price closes back inside the box, then heads toward support.
- Price breaks below support instead, and the range has resolved downward.
- The edges blur as swing highs and lows spread out, so the box no longer exists.
- The prior uptrend faded so long ago that the box is no longer a pause.
In PatternX, the opposite edge, support, is the structural stop (less a 0.2% buffer), and your own stop-loss percentage replaces it when tighter. Nothing re-checks the pattern after entry: that stop is the line that ends the trade if the breakout fails.
Volume
Volume in a rectangle tends to contract as the range matures and participants wait for a resolution, then expand when price leaves the box. Within the range, the side with heavier volume can hint at the eventual break: heavier volume on rallies toward resistance than on dips toward support suggests buyers are the more active side.
PatternX applies no rectangle-specific volume rule and does not compare volume on the rallies and dips inside the box. The single universal requirement is that the breakout bar trades at least 1.2× its 20-bar average volume. Inside a long, quiet box that average can be low, so a modest pickup may clear it; checking relative volume against a longer baseline gives extra context.
Common false signals
Rectangles are the textbook home of the false breakout, because their edges are so visible. Common failure modes:
- Stop runs above resistance. Price spikes through the ceiling, triggers stops and breakout orders, then falls back.
- Thin-hour breakouts. A break when few participants are active can reverse once liquidity returns.
- A ceiling under a bigger ceiling. A box on the 15-minute chart may sit right under a daily high.
- Boxes without a real trend. A range in a flat market has no directional edge.
- Misdrawn edges. Using single extreme wicks rather than clusters of highs and lows makes the box too wide or too narrow.
To reduce these, require a close beyond the edge by a margin, look for expanding volume, check the higher timeframe, consider entering on a held retest, and accept that some breakouts will fail; the stop at support is what limits the damage.
Market context
Bullish rectangles are most meaningful in a clearly trending market, where the box is a pause in an established advance and the broader market is supportive. They are less meaningful after a long sideways period, when boxes stack on top of each other, and around scheduled events, which can break the range either way regardless of the trend.
PatternX's prior-trend check is a floor, not a judgement of strength: it requires a rise of at least 2% over the up-to-20 bars before the box. A move that barely passes is weak context. The score's trend-alignment factor (EMA20 against EMA50) and the higher-timeframe check add some of the missing judgement.
In crypto markets
In crypto, ranges attract liquidity at their edges, and stop hunts through the top or bottom of a box are frequent, often visible as long wicks. PatternX's resistance is the average of the swing highs within 1.5% of the latest swing high, so an older wick that pokes further out is left out of the level rather than stretching the box.
On perpetual futures, open interest that builds inside the range shows positions accumulating ahead of the break, and the PatternX Score includes an open-interest factor. Funding that climbs while price sits under resistance suggests longs are crowding in. Markets run 24/7, but box edges can differ slightly between exchanges, and PatternX requires $3M of 24-hour volume for crypto signals. More in crypto chart pattern recognition.
In stocks, ETFs and FX
In US stocks, rectangles often form between catalysts, for example in the weeks between earnings reports, and the eventual break frequently comes with a gap at the open. A gap above resistance means your entry can sit well above the box, which stretches the distance to the support stop.
Sector and index ETFs often trade in tidy ranges during quiet markets. In FX, a familiar intraday version is the Asian-session range: price holds a narrow box overnight, and the break often comes when London opens or during the London and New York overlap. PatternX scans FX pairs, US stocks and ETFs through your own broker; see traditional markets.
Timeframes
Rectangles appear on every timeframe. Intraday boxes resolve within hours and are prone to stop runs; daily boxes take weeks and involve more participants.
PatternX scans eight timeframes (1m to 1d). The rectangle detector reads the last 90 bars, finds swing points with a two-bar rule, and requires the last touch of the box within 25 bars of the breakout. The prior trend is measured over up to 20 bars before the box, inside the same window, so the box and the run-up into it must both fit within 90 bars. On the 15-minute chart that is 22½ hours; on the daily chart, 90 bars. Longer ranges are not seen on that timeframe.
Example: the logic step by step
For example, compare two hypothetical bullish rectangles in the same stock, each after a qualifying rise of more than 2% into the box. The numbers are invented, and exits use the platform defaults of a 5% stop-loss and a 10% take-profit; in both cases the 10% target is farther than the measured move, so the measured move is used.
| Step | Box A (shallow) | Box B (taller) |
|---|---|---|
| Support and resistance | 100.0 and 103.0 | 100.0 and 106.0 |
| Box height | 3.0 (3% of support) | 6.0 (6% of support) |
| Breakout close (entry) | 103.4 | 106.5 |
| Pattern stop (support less 0.2%) | 99.8 | 99.8 |
| 5% stop-loss | 98.23 | 101.18 |
| Stop used (the tighter) | 99.8 | 101.18 |
| Target (entry + height) | 106.4 | 112.5 |
| Risk and reward | 3.6 and 3.0 | 5.33 and 6.0 |
| Reward-to-risk | about 0.83, dropped | about 1.13, kept |
Both breakouts clear resistance × 1.001. Box A fails the reward-to-risk check: the entry sits above resistance while the stop sits at support, so the risk is more than one box height and the target is exactly one box height. Box B passes because the 5% stop-loss is tighter than support.
How PatternX detects the Bullish Rectangle
The bullish-rectangle detector works through the last 90 bars using a two-bar swing rule (a bar's high or low must be the extreme within two bars either side), so touches are confirmed two bars late. It then builds the box:
- Resistance: the mean of the swing highs within 1.5% of the latest swing high; at least two are needed.
- Support: the same with swing lows, at least two within 1.5% of the latest swing low.
- Height: between 2% and 25% of the support price.
- Recency: the last touch of the box no more than 25 bars ago.
- Prior trend: a rise of at least 2% over the up-to-20 bars before the box began. Only the two rectangle detectors check the prior trend.
- Breakout: a fresh close above resistance × 1.001 on the latest bar, with the previous close not already above it. The latest bar may still be forming.
- Exits: stop at support; target = entry + box height.
Universal filters follow. The breakout candle must finish above its open and trade at least 1.2× its 20-bar average volume; ATR has to be 0.05% of price or more; the liquidity score needs to be at least 30 and the spread at most 0.25%; the order book must not lean against the long by worse than −0.5; and crypto pairs need $3M or more in 24-hour volume. The mirror image is the bearish rectangle. Full method: pattern detection.
How PatternX Classic evaluates it
Once a rectangle clears the filters, PatternX Classic computes its 13-factor PatternX Score. Geometry and a fixed prior make up 24% of the weight; the other 11 factors measure market context, from trend alignment and volume to spread and PatternX's live win rate. The score becomes the confidence (Elite 80+, High 65+, Medium 50+, Weak below 50) and must reach your minimum, 65 by default.
The stop is the tighter of your stop-loss and support; the target is the nearer of your take-profit and one box height. Because the entry is above resistance, a support-based stop is always more than one box height away, so the pattern alone never reaches 1:1. With the platform's default 5% stop and 10% target, a box needs to be roughly 5% of price or taller to survive, and Elite accounts can demand a higher minimum reward-to-risk. Signals expire after 15 minutes, and the risk engine checks every order.
What PatternX AI adds
PatternX AI, on Pro and Elite, evaluates a bullish rectangle only after Classic has detected and accepted it, and it never detects patterns itself. For a continuation pattern, the most relevant of its 8 fixed factors are trend strength (EMA12 against EMA26), market structure (whether the last three swing highs and lows within 60 candles agree with a long) and confluence (how many of trend, structure, volume and momentum agree). A box inside a healthy uptrend tends to line these up; a box after a faded rally may not.
The weighted context score can veto the setup (below 48, or structure under 35 together with momentum under 40) or re-weight its confidence. It never changes the stop, the target, the position size or the risk checks.
Frequently asked questions
What is the difference between a bullish and a bearish rectangle?
Both are horizontal ranges: a bullish rectangle follows an advance and breaks upward, a bearish rectangle follows a decline and breaks downward. PatternX checks for a prior rise of at least 2% for the bullish version and a prior fall of at least 2% for the bearish one.
How many touches does a rectangle need?
Two on each edge is the usual minimum, and PatternX requires at least two swing highs and two swing lows. More touches make the edges clearer, but also make them more obvious targets for stop runs.
What if a rectangle breaks down instead of up?
Then the bullish read has failed. PatternX's bullish-rectangle detector only acts on upward breakouts; a downside break would have to meet the bearish rectangle's own rules, including a prior decline, to produce a short signal.
Why did PatternX ignore a clean breakout from a narrow range?
One possible reason is reward-to-risk. The stop sits at support and the target one box height above the entry, so a narrow box cannot reach 1:1 unless a percentage stop is tighter than support; with the platform's default 5% stop, boxes under roughly 5% of price are dropped. The volume, spread, liquidity and confidence filters are other possible reasons.
Should I buy the breakout or wait for a retest?
Buying the breakout catches strong moves that never look back, while waiting for a retest gives a closer stop but can miss the trade. PatternX signals at the breakout, and in manual mode an unapproved signal expires after 15 minutes.