Trading Education Platform SystemSubscribe for Free
Pattern Reality Check / Supply and demand zones
PATTERN REALITY CHECK · SMART MONEY AND LEVELS · TESTED 8 OCT 2026

Supply and demand zones: does it work after costs?

A tight base of small candles before a sharp move. Courses say price returns to it.

Too few trades to judge

Verdict

Too few trades to judge

This rule fires rarely, so the sample is small. We found no edge, but a small one cannot be ruled out with this many trades.

Average per trade+9.3%+0.093Rof the amount risked, after costs and funding. 95% range: -7.1% to +27.0%.
Trades tested37529 coins2020-06-28 to 2026-09-15, 4-hour candles.
Trades won39%needs 36% to break evenWins averaged +1.915R, losses -1.056R.
Against random entries100%of random runs beatenRandom entries averaged -8.1%, because costs hit every trade. Beating them is not enough: the average must also be clearly above zero.
Read with care. Limit orders are assumed to fill whenever price touches the level, which is optimistic. The sample is also small.

Percentages are % of the amount risked per trade. New to R? Read this first.

What courses teach

The idea

Close cousin of the order block: a "base" of small candles followed by a strong move away is called a demand (up) or supply (down) zone, said to hold unfilled orders.

The rules we froze

These numbers are the usual textbook values. They were written before we saw a single result and were not changed afterwards.

PartRule, fixed before the test
Signal
2 to 6 small candles (each under 0.7 ATR) followed by a move away of at least 2.5 ATR.
Entry
Limit order at the near edge of the zone, filled if price returns within 60 candles.
Stop
0.25 ATR beyond the far edge. At least 1 ATR from entry.
Target
Twice the distance to the stop (2R).
Time limit
Closed after 60 candles (10 days) if neither stop nor target was hit.
Costs
0.14% round trip plus real funding, charged on every trade.
What it looks like

Examples, good and bad

Two real trades picked by a fixed rule, not for being pretty, and six drawn at random from the held-back period (the most recent two years). 4 of the 6 won. Examples show the rule, they are not results: the results are the numbers further down.

Supply and demand zones example that reached the target
Supply and demand zones example that was stopped out
Supply and demand zones example 1
Supply and demand zones example 2
Supply and demand zones example 3
Supply and demand zones example 4
Supply and demand zones example 5
Supply and demand zones example 6
Results

Trade after trade

All 375 trades added up, with the three periods shaded. The right axis shows euros if you risked €100 on each trade. The dashed line is what random entries would have done.

Supply and demand zones cumulative result

By period

The same average, split by period. The black bars are the 95% range: if they cross zero, we cannot tell the result from luck.

PeriodTradesAverage per tradeTrades won95% range
Build
181
+16.4% +0.164R
40.9%
-10.1% to +43.0%
Validation
131
+10.8% +0.108R
38.9%
-16.4% to +41.0%
Held-back
63
-14.5% -0.145R
31.7%
-49.6% to +24.0%
Supply and demand zones result by period

By version

VersionTradesAverage per tradeTrades won
Long
218
+20.2% +0.202R
42.2%
Short
157
-5.8% -0.058R
33.8%

How the trades ended

Supply and demand zones trade outcomes
The honest yardstick

Compared with entering at random

A pattern should beat luck, not zero. We ran 1,000 simulations that enter at random times on the same coins and periods, in the same direction, with the same stop distance, target and time limit.

Supply and demand zones compared with random entries
In plain words

Why the numbers look like this

Random entries lose too. Entering at random times with the same stops and targets averaged -8.1% per trade (-0.081R) because of fees, funding and spread. The pattern averaged +9.3% and did better than 100% of 1,000 random runs. That is the honest comparison: not zero, but what luck plus costs produce.

Before costs: +15.5%. After costs: +9.3%. Fees, funding and slippage took 6.2% of the amount risked from every trade, on average.

Win rate versus break-even. It won 38.7% of trades. With average wins of +1.915R and losses of -1.056R, it needed 35.5% to break even. The win rate is above what it needs, which is what a positive result looks like.

Consistency across time. The average was positive in 2 of 3 periods. A real edge should not depend on which period you look at.

Sensitivity. Across 32 variations of the rule, 29 were positive and 3 negative. The best variation (+50.3%, 21 trades) is not a result: with 32 variations, a few green cells appear by chance. We look for a broad green region.

Stress tests

Does it survive changes?

Changing the pattern shape

Each cell is the same test with a different setting. The outlined cell is the rule we froze. Green is positive, red negative. We do not pick the best cell: we look for a broad region.

Supply and demand zones sensitivity to shape

Changing the exits

Same idea for the target and the stop.

Supply and demand zones sensitivity to exits

Changing the costs

CostsAverage per trade
No costs, funding only
+14.9% +0.149R
Half the costs
+12.1% +0.121R
Our costs (0.14% + funding)
+9.3% +0.093R
Double costs
+3.6% +0.036R
Triple costs
-2.0% -0.020R

Stricter limit-order fills

Limit orders rest at a level and fill when price touches it. In real markets, a touch is often not a fill: your order sits in a queue, and the touches that do not fill tend to be the ones that reverse in your favour. To test this, we kept only the trades where price went further through the level.

Fill ruleTradesAverage per tradeHeld-back period
Our assumption: filled when price touches the level
375
+9.3% +0.093R
-14.5%
Filled only if price trades 0.1 ATR through the level
297
+3.0% +0.030R
-0.4%
Filled only if price trades 0.25 ATR through the level
207
-5.4% -0.054R
-12.1%

If the result were real, it should survive a stricter fill. It does not: the more demanding the fill, the lower the average.

Another timeframe

On daily candles the same rule gave +9.0% over 57 trades.

Coin by coin

19 of 29 coins had a positive average. With a few dozen trades per coin, some are always positive by chance.

Supply and demand zones result by coin
Limits

What this does not say

  • It does not say supply and demand zones never works. It says this version of the rule, applied to every case, shows too few trades to judge in this data.
  • It is a simulation. Real fills, delays and emotions make results worse.
  • The market may change. Results from the past are not a forecast.
  • We publish tests of popular patterns, we do not publish or comment on strategies we use ourselves.

Method: how we test · Errors: corrections · Education only, not investment advice.

Questions

Questions about supply and demand zones

Does supply and demand zones work in crypto?

In our test of 375 trades on 29 crypto perpetuals, with real costs and funding, the average result was +0.093R per trade (+9.3% of the amount risked). Verdict: too few trades to judge. This applies to the textbook rule defined on this page, not to every way of using it.

Why do I see charts where supply and demand zones worked?

Because any rule produces winning examples. A chart that shows a winner says nothing about how often the same rule fails. The test above applies the rule to every case, with costs, without picking.

What would make this result change?

A different timeframe or market, different exits, or filters that add information the pattern does not contain. We tested a second timeframe and 32 variations of the rule; the numbers are on this page.

How should I read the percentages?

They are percentages of the amount you risk per trade, not of your account or of the coin price. +9.3% means +9.3% of the amount risked, on average. See what is R.