Ready to go further
Next: see what a failed break costs
The false breakout guide counts the trades a close-above filter keeps and drops, with a table you can reproduce.
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
- Support is a price area where a fall has paused or turned before. Resistance is a price area where a rise has paused or turned before. Both are drawn from the past, and neither is a promise about what comes next.
- A support and resistance indicator is a rule that picks the levels for you. The most common rule finds swing highs and swing lows, then joins the ones that sit close together.
- In the made-up bars below, the rule found 3 swing highs between 99.9 and 100.4 and 2 swing lows between 93.9 and 94.1. The average lines are 100.17 and 94.00 (calculated by us on 31 Oct 2026, exact).
- No swing high sat exactly on the average line, so a level is better treated as a zone. Here the resistance zone is 0.5 points wide and the support zone is 0.2.
- A bot can trade a level by bouncing off it or by following a break through it. Both fail sometimes, and the cost of the failures has to be tested with spread and slippage included.
What a level is
Support is a price area below the current price where falls have stopped before. Resistance is a price area above it where rises have stopped before. The reasoning traders give is simple: many people remember the price, and orders tend to be placed near it. That reasoning is a story, not a law. A level is only a note about where something happened.
Two things follow. First, a level is made of past bars, so it is known only after those bars are done. Second, levels do not stay put. When price closes well beyond a resistance level, traders often start calling the old level support, and the reverse. That swap is a habit of speech, and a test can check whether it holds for a given market.
Levels are also not unique. Draw them on a daily chart and you get one set. Draw them on a five-minute chart and you get another. Two people looking at the same prices can mark different levels, which is the main reason to turn the choice into a written rule.
How an indicator marks them
A support and resistance indicator replaces the eye with arithmetic. Two methods are common.
- Swing points. A swing high is a bar whose high is above the highs of the 2 bars before it and the 2 bars after it. A swing low is the mirror image. The number 2 is a setting: a larger number finds fewer, bigger turns.
- Clusters. Swing points that sit within a set distance of each other are grouped, and the group is drawn as one line or one band. The distance is a second setting.
Other tools draw levels from round numbers, from the previous day high and low, or from VWAP and Bollinger Bands. Those are different rules that happen to produce lines. The indicator you use is only as clear as its rule, so find the rule and write down its settings.
One built-in catch: a swing point needs 2 bars after it to be confirmed. A swing high on bar 20 is not known until bar 22 is finished. A test that draws the level on bar 20 is using the future, which is the error in look-ahead bias.
A worked example with made-up numbers
Take 27 made-up bars. For bars 1 to 24 we only use the high and the low. The rule is: a swing needs 2 lower highs (or 2 higher lows) on each side. This is the result.
| Type | Bar | Price |
|---|---|---|
| High | 4 | 100.2 |
| High | 12 | 99.9 |
| High | 20 | 100.4 |
| Low | 8 | 93.9 |
| Low | 16 | 94.1 |
The 3 swing highs are 100.2, 99.9, 100.4. Their mean is 100.17. The 2 swing lows are 93.9 and 94.1, with a mean of 94.00. These means are the line a simple indicator would draw. Now look at the swing highs against that line: they sit +0.03, -0.27, +0.23 points from it. A bot that waited for price to touch exactly 100.17 would have been late or early on every one of them. All of this is made-up and was calculated by us on 31 Oct 2026, exact.
Why a level is a zone
Real turns rarely stop on a single price. Orders are spread across a range, fills come at different prices and the high of one bar is not the high of the next. The honest drawing is a band from the lowest swing point in the cluster to the highest. In the example the resistance band runs from 99.9 to 100.4, a width of 0.5 points, and the support band from 93.9 to 94.1, a width of 0.2.
The width matters for a bot. If the rule says the level is 100.17 and the stop is placed 0.1 point beyond it, normal wobble inside the band will hit the stop. If the band is used, the stop has to sit outside it, which makes the stop wider and the position smaller for the same risk. See position size for the arithmetic. A wider stop also means any edge is smaller per unit of risk, and that has to be tested after costs.
How bots use levels
- Bounce rules. The bot buys near support or sells near resistance, expecting price to turn. It suits a range and fails when the level breaks and price keeps going. Without a stop, one break can erase many small wins.
- Break rules. The bot enters when price closes beyond the zone, expecting a move to carry on. See breakout trading and the breakout indicator. It fails when the move reverses, as in a false breakout.
- Filters and targets. A level can be used as a filter for another signal, such as an EMA crossover or an RSI reading, or as the place to put a stop or a profit target.
How levels break
Continue the made-up example with three more bars. The rule is: a break counts only when a bar closes above the top of the resistance zone (100.4).
| Bar | High | Low | Close | Close against zone |
|---|---|---|---|---|
| 25 | 100.6 | 98.8 | 100.1 | inside zone |
| 26 | 101.2 | 99.9 | 100.9 | above zone |
| 27 | 100.8 | 99.2 | 99.6 | below zone |
Bar 25 pokes above the zone with a high of 100.6, but it closes at 100.1, inside the zone. By the close rule it is not a break. Bar 26 closes at 100.9, above 100.4, so a close-based bot would enter at that close. Bar 27 closes at 99.6, back inside the zone. Entering long at 100.9 and exiting at the next close gives -1.30 points, before spread, fees and slippage. One trade says nothing about how often this happens. It shows what a failed break costs: the move up, then the whole way back, plus the cost of getting in. A bot that enters on the touch rather than the close would have taken bar 25 as well. For how a test can measure that difference, see the false breakout guide.
Other ways a level fails: a news bar can jump over it, leaving a gap with no fill near the level (see slippage). A level can also be crossed so many times that it stops meaning anything. And some traders believe price is pushed through obvious levels to trigger stops, which is covered in stop hunting. Whether that happens and how often is hard to prove from the outside.
How to check a bot that uses levels
- Write the rule down. The swing size, the cluster distance, whether it uses wicks or closes, and when a level is confirmed.
- Draw levels using only past bars. A level may be used only after its last confirming bar has closed.
- Count bounces and breaks separately on many years of data, then compare the average result of each after costs. Use the steps in how to backtest.
- Test the settings gently. If the result only works with one swing size, that is a warning of overfitting.
- Test the stop. Compare a fixed stop outside the zone with a trailing stop, using the same data.
What this does not tell you
It does not tell you whether any level holds, how often a break continues or whether a level rule earns anything on a real market. The prices here are made up. A support and resistance indicator describes where price has been. Whether the future respects it is a number to measure on real data, with real costs and a stretch of data kept untouched. This page is education only.
Keep Going
Related Tools and Guides
Keep exploring
FAQ
Frequently Asked Questions
What is a support and resistance indicator?
A rule, drawn on a chart, that marks price levels where the market has paused or turned before. Most use swing highs and swing lows, then group points that sit close together.
How are support and resistance levels calculated?
A common method finds a swing high or low, which is a bar whose high or low beats the bars on each side, then averages or groups swing points that are near each other. Settings such as the number of bars on each side change the result.
Why is a level a zone and not a line?
Turns rarely stop on one exact price. In the made-up example the swing highs ranged over a band of 0.5 points, so a single line would miss most of them by a little.
How does a bot trade support and resistance?
Either by buying or selling near the level and expecting a turn, or by entering when price closes beyond it and expecting a carry on. Each can fail, so each needs a stop and a test with costs.
Do support and resistance levels always hold?
No. They are notes about the past, and price can pass through them. How often they hold is something to count on real data rather than assume.
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. The prices are made up and it does not consider your situation or give any signal.
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