Ready to go further
Next: what a failed break looks like
The false breakout page counts a rule with and without a close-above filter on made-up bars.
What is included
- What it is, in plain words
- The formula or mechanism, with exact arithmetic
- How it hits grid, martingale and DCA bots
- A check you can run before you switch a bot on
Who it is for
- People who run or plan to run a trading bot
- Anyone reading a backtest or a bot sales page
- Readers who want the numbers, not the pitch
- Not advice, and not a signal service
Key facts
- A double bottom is two lows at about the same price with a peak between them. The peak is joined by a flat line called the neckline. The pattern is usually called complete when price closes above the neckline.
- A double top is the mirror image: two highs at about the same price with a valley between them. The trigger is a close below the valley.
- A bot needs numbers for "about the same": in the made-up example the lows are 100.0 and 100.8, 0.80 percent apart, and the rule allows 1.5 percent (calculated by us on 31 Oct 2026, exact).
- Two other candidates in the same example look similar to the eye but fail the rules. Each rule you add changes which shapes count, so the rules must be written down before testing.
- This page does not say how often the pattern works or that it works. The prices are made up and it is education only.
What the pattern is
A double bottom is a shape on a price chart. Price falls to a low and bounces. It rises to a peak, falls back to roughly the same low and bounces a second time. The two lows form the "W" that gives the pattern its other name. Chart readers draw a flat line through the peak between the lows. That line is the neckline. The pattern is normally treated as complete when price closes above the neckline, because only then has price moved past the level that held it down.
The idea behind it is simple. Sellers pushed price down twice to about the same place and could not push it lower. Some readers see that as a level that held. Others see two coincidences. The shape does not prove either view. It is one of the better known chart patterns, alongside head and shoulders, and it rests on the same idea as support and resistance: a price where the market turned before.
The double top is the same thing upside down
A double top has two highs at about the same price with a valley between them, an "M". The line through the valley is also called the neckline, and the pattern is treated as complete when price closes below it. Nothing about the logic changes, only the direction. In code you can reuse one function by flipping the prices. In the made-up example below, subtracting every close from 200 gives a double top with highs of 100.0 and 99.2 and a valley of 92.0. The close below the valley comes on bar 16, the same bar as the break in the double bottom.
Why the neckline close matters
Before the neckline breaks, a double bottom is only two lows. Price can drift sideways, make a third low or fall through both. Waiting for the close above the neckline turns a vague picture into a single event that a bot can test: on this bar, the close is above that number. It also costs something. The entry is later and higher than the lows, so the stop is further away than it was at the second low. The earlier the entry, the more shapes fail. The later the entry, the worse the price. That is the same trade-off described in false breakout, because a neckline break is a breakout from the range between the two lows. For the wider idea see breakout trading.
How to define it in code, with tolerances
People can look at a chart and say "that is a double bottom". A bot has no eyes. It has a list of closes, and each word in the definition has to become a comparison. Four decisions matter most.
- What is a low. A pivot low is a close that is lower than the closes a few bars either side. How many bars either side is a setting. Two is used below. A bigger number finds fewer, larger lows.
- How equal is equal. Two lows are never exactly the same. A tolerance says how far apart they may be, usually as a percent of the first low.
- How far apart in time. Two lows one bar apart are noise. Two lows a year apart are not one pattern. Set a minimum and a maximum number of bars.
- How tall the peak must be. If the peak between the lows is tiny, the "W" is just wobble. Require a minimum rise from the lows to the neckline.
Put together, the rules in plain form look like this. All the settings are examples, not recommendations.
lows = two pivot lows (a close below the 2 closes either side)
gap = bars between the lows must be 6 to 40
diff = |low2 - low1| / low1 must be 1.5 percent or less
neck = highest close between the lows
base = (low1 + low2) / 2
rise = (neck - base) / base must be 5 percent or more
trigger = first close after low2 above neckA worked example with made-up numbers
Here are three made-up price paths, A, B and C, run through exactly those rules. The pivot rule is two closes either side, the tolerance is 1.5 percent, the gap must be 6 to 40 bars and the peak must rise at least 5 percent above the average of the lows. Every number here was calculated by us on 31 Oct 2026, exact, and none of it is market data.
| Path | Low 1 | Low 2 | Gap between lows | Bars apart | Neckline | Rise | First close above | Verdict |
|---|---|---|---|---|---|---|---|---|
| A | 100.0 | 100.8 | 0.80% | 8 | 108.0 | 7.57% | bar 16 | passes |
| B | 100.0 | 97.0 | 3.00% | 8 | 108.0 | 9.64% | bar 16 | fails: lows differ too much |
| C | 100.0 | 100.8 | 0.80% | 8 | 108.0 | 7.57% | bar 16 | breaks, then closes back inside at bar 17 |
Path A: the lows are 100.0 (bar 5) and 100.8 (bar 13), 0.80 percent apart. The highest close between them is 108.0. The average of the lows is 100.40, so the pattern is 7.60 points tall and the rise is 7.57 percent. Bar 16 closes at 108.6, above the neckline, and the rules call the pattern complete.
Path B has the same first low and neckline but the second low is 97.0, which is 3.00 percent below the first. To the eye it is still a "W". To the rules it is not a double bottom, because it is outside the 1.5 percent tolerance. Widen the tolerance to 4 percent and B counts. That is the point: the tolerance decides what the bot sees, so it has to be tested, not guessed.
Path C passes every rule up to the break. Bar 16 closes at 108.6, above the 108.0 neckline. Then bar 17 closes at 107.2, back below it. The pattern completed and then failed. A bot that entered on the close of bar 16 is now holding a loss. Whether that happens in real markets, and how often, can only be counted on real data.
What a rule of thumb for a target looks like
Some texts add a measured move: take the height of the pattern and add it to the neckline. In path A the height is 7.60 points, so the measured target is 115.60. If a bot entered at the close of 108.6 with a stop at 100.3 (half a point below the second low), the risk is 8.3 points and the distance to that target is 7 points, a ratio of about 0.84 to 1 (made-up, exact). This is arithmetic, not a forecast. Price is not obliged to travel the height of the pattern, and nothing here says it does. See risk reward ratio for what a ratio can and cannot say, and position size calculator to turn a stop distance into a size.
False patterns and how bots get caught
- Looser rules find more shapes. Make the tolerance large and the bot finds a double bottom in almost any chart. Make it tiny and it finds almost none. Neither extreme says anything about what price does next.
- A second low that keeps falling. The shape is only a double bottom if the second low holds. A lower low is a failed pattern, and the bot only knows after the fact.
- A neckline break that fails. Path C is an example. The close above the neckline is a false breakout if price comes back inside.
- Hindsight. A chart looked at afterwards always shows the second low clearly. A bot has to decide on the day. A low is only known to be a pivot after the bars that confirm it, so a test that marks the low on the day it happens uses information from the future. See look-ahead bias.
- Too many settings. Pivot width, tolerance, gap limits and rise limits are four numbers to tune. Tuning them until the past looks good is overfitting.
How to check a double bottom rule
Write the definition before looking at results. Run it over several years and different market conditions, and record how many patterns it found, how many broke the neckline, and how many of those closed back inside, as path C did. Include spread, fees and slippage. Compare the result with and without the pattern using expectancy, keep a stretch of data untouched until the end, and follow how to backtest. Pattern rules can also be compared with simple indicator rules such as an EMA crossover, RSI or VWAP on the same data, so the test shows whether the extra complexity bought anything. Bands such as Bollinger bands are another way to define a stretched low.
What this does not tell you
It does not say that double bottoms predict a rise, how often a neckline break holds, or which tolerance is right. The examples are three made-up paths. A real count needs many patterns, real costs and data the rules have never seen. This page is education only.
Keep Going
Related Tools and Guides
Keep exploring
FAQ
Frequently Asked Questions
What is a double bottom pattern?
Two lows at about the same price with a peak between them. A line through the peak is the neckline, and the pattern is usually called complete when price closes above it.
What is a double top?
The mirror image: two highs at about the same price with a valley between them. It is usually called complete when price closes below the valley.
How do you define a double bottom in code?
Find pivot lows, then check that the two lows are within a set percent of each other, a set number of bars apart, and that the peak between them rises by a minimum amount. Then wait for a close above the highest close between the lows.
What tolerance should the two lows have?
There is no correct number. A tight tolerance finds few patterns and a loose one finds many. Choose it before testing, then check how the result changes when you move it.
Can a double bottom fail?
Yes. The second low can break lower, or price can close above the neckline and then fall back inside. A bot only knows after the fact, so failures have to be counted in a test.
Are the numbers on this page real?
Example numbers are made up to show how the maths works, and the page says so. A figure only counts as exact when the page says it was calculated on a stated date. Nothing you enter in a calculator leaves your browser.
Can I use this to decide whether to run a bot?
It can show whether a bot's numbers hold together and how much an account can lose. It cannot say what the market will do, and it is not advice. Use it to ask better questions, then read the terms of your own broker or exchange.
Is this financial advice?
No. It is general education. All prices are made up and nothing here is a signal or a recommendation.
Know the Risk Before You Run It
Free calculators and guides, added every week. Leave your details and we will email you when new ones go up.
Trading carries a risk of loss