Backtested

Order blocks strategy: does it work? Backtested on the top 10 coins

Weak. We ran the order block rule on the top 10 coins at once, each with an equal share of the account, as Hyperliquid perpetuals with fees, slippage and funding paid, and it made money on the portfolio in at least one run, but no run cleared our bar. The textbook version, 4h, long and short, returned -7.8% with a Sharpe of -0.40, against -7.7% for holding all 10 coins. Its best single coin was ENA 1d, long and short, with a Sharpe of 1.35.

By Keel Research Team
Updated October 15, 2026

Data through 2026-09-29 on Hyperliquid perpetuals, net of fees, slippage and funding

GradeWeak

The rule run across the top 10 coins, equal weight (a pinned list): BTC, ETH, SOL, XRP, NEAR, ENA, UNI, DOGE, SUI and TAO.

Sharpe of the Order blocks rule on the portfolio, by timeframe and direction
long onlylong and short
4h0.05-0.40
1d0.450.73

Sharpe of each portfolio run. Green cleared our bar, amber came close, and the outlined square is the textbook rule. Holding all 10 coins had a Sharpe of 0.42. Net of fees, slippage and funding.

The order block rules we tested

An order block is a zone smart money traders draw at the start of a strong move, where they believe large orders were filled. They expect price to react when it comes back to that zone. Traders draw the block in different ways, so this page states the one it tested. Below are the exact rules the backtest ran. Signals are read when a bar closes and orders fill at that close. The grade is over the long and short version, and the results show the other direction too. Every portfolio run trades the top 10 coins at once, each with 10% of the account. The coins are a fixed list (BTC, ETH, SOL, XRP, NEAR, ENA, UNI, DOGE, SUI and TAO), pinned for the whole test and the same on every page. The list is pinned rather than picked at each point in time because some large coins listed partway through the window and have no data for its start. Under the rules is the strategy itself, block by block. Fork it to change it and run your own backtest.

Entry
A swing high or low is a bar that is the extreme of the 5 bars on each side. When a bar closes above the last swing high, the bullish block is the lowest candle of the move from that swing to the break (its full high-low range); the bearish block is the mirror. A block stays active until price first touches it, for at most 200 bars. Buy when a bar closes inside an active bullish block; short when a bar closes inside an active bearish block.
Exit
1R is the 14-bar ATR at entry. Close at a loss of 1R or a profit of 2R, measured close to close. An opposite signal flips the trade.
Sizing
Each of the ten coins trades its own signal and opens each trade at 1/10 of the account. While a trade is open, if its share of the account drifts more than 25% from that tenth, it is trimmed or topped up back to the edge of that range.

The coins: The 10 Hyperliquid perps with the most traded dollar volume in the 90 days to 2026-09-29, among perps that traded for the whole test window, pinned: the same 10 coins are held for the whole test.

Not tested: a stop at the block edge; the ICT last-opposite-candle block (this test uses the extreme candle of the leg); intra-bar touches and limit orders at the block (decided on the bar close); higher-timeframe bias and premium/discount zones.

The strategy behind the portfolio at 4h, long and short, block by block.

Fork this strategy

Opens it in Keel as your own draft, to change and backtest.

Configuration

Globalsconfig
target_timeframe4h
UniverseassetsManual · HL Perps · 10 symbols10 resolved
Executionorders
rebalanceBufferedbuffer_threshold0.25buffer_moderelative+1
Pipeline21 steps
PriceDataLoaderData Loader
ohlcvstore
ATRIndicator
period14
atrstore
ohlcvload
OrderBlockIndicator
directionbullishconfirmstructure_breakwidth5mitigationtouch+1
ob_bullstore
ohlcvload
OrderBlockIndicator
directionbearishconfirmstructure_breakwidth5mitigationtouch+1
ob_bearstore
Parallel2 branches
long_in
ob_bullload
BelowThresholdFilterSignal Transform
threshold0inclusivetrue
long_instore
short_in
ob_bearload
BelowThresholdFilterSignal Transform
threshold0inclusivetrue
short_instore
Parallel2 branches
fast
long_inload
slow
short_inload
CrossoverSignal Composer
ThresholdCrossSignal Transform
upper0.5lower-0.5modesymmetric
entriesstore
TradeManagerPosition Manager
entriesentriespricesohlcv
Parallel2 branches
numerator
TradePnLPosition Manager
denominator
AtEntryPosition Manager
slotatr
SignalRatioSignal Composer
Parallel2 branches
stop
BelowThresholdFilterSignal Transform
threshold-1inclusivetrue
ExitPosition Manager
target
AboveThresholdFilterSignal Transform
threshold2inclusivetrue
ExitPosition Manager
ExposurePosition Manager
EqualWeightSizerPosition Sizer
target_leverage1max_weight0.1

Results on the top 10 coins, equal weight

The rule ran on all 10 coins at once, each with an equal share of the account, on the 4h and 1d charts, in both directions. A portfolio of 10 coins is a better test than one coin. It trades many more times, so one lucky or unlucky coin cannot decide the result, and its drawdowns are usually smaller because each coin's bad stretch hits only its share of the account. It lifts a result only when the rule works across coins; a rule that works on one or two coins looks no better here. Running one rule over a whole portfolio in a single backtest is what Keel is built for. The long and short rows set the grade; the other direction shows whether any edge came from one side only. A run clears our bar when its Sharpe is clearly positive and it made enough round trips to trust. The idea should pay when strong moves leave levels that the market defends on a retest. It loses when price returns to a block and keeps going, which happens often in fast, one-way markets. Holding all 10 coins in equal weight is the bar to beat: over the same window it returned -7.7%. The textbook run made -7.8%, less than holding. Round trips count whole trades from entry to exit across every coin, fills count every order, and fees and funding are shown as a share of starting capital. Funding is what the positions paid: a positive figure is a cost, like fees, and a negative one means they received more funding than they paid.

Timeframe, sideSharpeTotal returnYearly returnWorst drawdownWin rateRound tripsFillsTime in marketFeesFunding paid
4h, long only0.05+0.2%+0.1%-10.3%38.9%3241,16546.6%2.2%+1.0%
4h, long and shorttextbook-0.40-7.8%-3.8%-9.9%38.9%6762,63171.6%4.5%-0.0%
1d, long only0.45+6.6%+3.1%-8.8%42.2%4517746.8%0.3%+0.9%
1d, long and short0.73+15.3%+6.9%-8.3%42.4%9939866.3%0.8%-0.3%

Holding all 10 coins instead

PortfolioSharpeTotal returnYearly returnWorst drawdown
Hold all 10, equal weight0.42-7.7%-3.6%-85.7%

Holding means a long perpetual position on each coin for the whole window, not spot. Like any perp long it pays funding out of the account while it is open, and these hold figures include that cost, so a hold can end near flat after a deep drawdown.

Coin by coin

The same rule on each coin alone, with the whole account on that one coin, at 4h and 1d, long and short. Read this if you trade one coin. Expect more spread here than in the portfolio: fewer trades per coin means more room for luck either way. The best single coin was ENA 1d, long and short, with a Sharpe of 1.35. On its own, the rule beat holding the coin on half of them at 4h.

The Order blocks rule on each coin alone, long and short
Coin4h Sharpe4h return4h round trips1d Sharpe1d return1d round tripsHold the coin
BTC-0.68-18.6%700.25+4.2%9+6.6%
ETH1.03+40.8%56-1.09-26.8%6-22.7%
SOL-0.17-9.9%730.37+12.8%14-36.7%
XRP0.10+0.3%61-0.70-25.5%10+98.3%
NEAR-0.07-10.0%63-0.06-8.2%8+0.9%
ENA-1.34-66.1%761.35+217.3%10-5.1%
UNI0.68+33.9%681.04+80.0%10+3.8%
DOGE0.63+28.0%69-0.06-12.0%12-65.5%
SUI-0.88-47.3%79-0.78-32.3%10-22.1%
TAO-0.07-11.3%610.52+26.2%10-34.0%

Holding means a long perpetual position on each coin for the whole window, not spot. Like any perp long it pays funding out of the account while it is open, and these hold figures include that cost, so a hold can end near flat after a deep drawdown.

Equity curve

The first chart is the textbook run, the portfolio at 4h, long and short; the second is the best portfolio run, the portfolio at 1d, long and short. Each line starts from the same balance as holding all 10 coins in equal weight, and the drawdown underneath shows how far the rule fell from its last high. A rule can end ahead and still be hard to hold through its worst stretch.

The textbook rule: the portfolio at 4h, long and short

Order blocks rule, 10 coinsHold all 10 coinsDrawdown

The best run: the portfolio at 1d, long and short

Order blocks rule, 10 coinsHold all 10 coinsDrawdown

Does a simple fix help?

Two of the most common changes traders make to a rule like this, each run on the same portfolio at 4h and 1d, long and short. Each fix gets its own grade by the same rules as the page grade. Neither fix lifts the grade above Weak. A fix that helps on one window is a lead to test further, not a finding.

Vol-targeted sizing

Weak

Vol-targeted sizing keeps the rule's entries and exits and changes only the size. Each trade is sized from the coin's average true range, so that a move of one average true range costs the same small share of the account on every coin. A calm coin gets a bigger position and a wild one a smaller one, with a cap on any one coin. It raised the Sharpe on one timeframe and not the other. With it, the rule grades Weak.

RunSharpeAs writtenTotal returnWorst drawdownRound trips
4h, long and short-0.37-0.40-5.0%-8.1%676
1d, long and short0.470.73+6.6%-8.0%99

200-day trend filter

Weak

The 200-day trend filter keeps the rule's entries but lets a long through only while the coin closes above its 200-day simple moving average, and a short only while it closes below. Sizing stays the same. It follows the old rule of not trading against the big trend. The average needs that much price history before its first reading, so the filter sits out the start of the window and its runs trade over a shorter period than the rule as written. Keep that in mind when you compare the two. It raised the Sharpe on one timeframe and not the other. With it, the rule grades Weak.

RunSharpeAs writtenTotal returnWorst drawdownRound trips
4h, long and short-0.25-0.40-3.3%-9.0%261
1d, long and short0.470.73+5.8%-5.6%38

Best Order blocks settings for crypto

We ran every combination of swing width in bars (3, 5, 8, 13) and profit target in R (1, 1.5, 2, 3) on the portfolio, on the 4h chart, long and short, and kept everything else the same. Each square is one full backtest of all 10 coins, coloured by Sharpe, and the outlined square is the textbook setting. The setting to trust is one whose neighbours also did well. A lone bright square in a dark grid is usually luck, and a grid run on a whole portfolio is harder to fool than one run on a single coin.

Sharpe, from losing (red) to strong (green)“works” and “partly” mark settings that cleared the bar, or nearly didthe default settingwiped out

Top 10 coins, 4h, long and short

On the portfolio, one setting carries the result and its neighbours did much worse, which is a warning sign: a result that needs one exact setting tends not to repeat. The textbook setting ranks 5th of 16 by Sharpe. The best square was swing width 8 bars and profit target 3R, with a Sharpe of 0.35, and the worst was swing width 5 bars and profit target 1R, at -1.28.

Order blocks settings on the top 10 coins: Sharpe for each combination
Swing width (bars)across: Profit target (R)11.523
3-0.97-0.78-0.64-0.29
5-1.28-1.04-0.400.21
8-0.72-0.57-0.200.35best
13-0.76-0.42-0.53-0.42

What this test does not tell you

A backtest answers a narrow question: what this exact rule did on these coins over this window. Read these before you trust any number on this page.

  • The test covers 2024-08-15 to 2026-09-29, one stretch of the crypto market. A rule that worked here can fail in the next stretch, so every result on this page is "in this test", not a forecast.
  • These are Hyperliquid perpetual futures, not spot coins. Every open position paid or earned funding, and the results include it, which most published backtests leave out.
  • Costs: every fill pays a 4.5 bp fee and 4.5 bp of slippage, so a round trip costs 18 bp, and every open position pays or earns funding each hour. A rule that trades often pays these many times over, which is why the fee column matters as much as the Sharpe.
  • Orders fill at the close of the bar that gives the signal. Intrabar stops, limit orders and wicks that touch a level and come back are not modelled.
  • The textbook portfolio run made 676 round trips across its coins: enough trades for the result to mean something, though one window is still one window. A single coin makes far fewer, so read the coin-by-coin table with more caution.
  • The coin list is fixed for the whole window. Coins that were large at the end of the window may have been smaller at the start, so a pinned list leans a little toward coins that did well.
  • How this test defines the order block: a block only counts once a bar closes beyond the last confirmed swing high or low. The block is the most extreme candle of the leg before that break, the lowest candle for a bullish block and the highest for a bearish one, and it covers that candle's full high-to-low range. It stays active until price first touches it, or until it gets old. The trade opens when a bar closes inside an active block: long in a bullish block, short in a bearish one. The classic reading, the last opposite candle before the move, is not tested here; the two often pick the same candle, but not always. Stop and target are measured in R, where one R is the average true range when the trade opens, so the same bracket fits a quiet coin and a wild one. Traders draw this differently, so this is a test of one exact definition. The settings grid varies swing width in bars (3, 5, 8, 13) and profit target in R (1, 1.5, 2, 3) to show how much the choice matters.
  • Sizing: Each of the ten coins trades its own signal and opens each trade at 1/10 of the account. While a trade is open, if its share of the account drifts more than 25% from that tenth, it is trimmed or topped up back to the edge of that range. This tests the rule on its own. A trader who adds judgment, other filters or a different position size is running a different strategy.

How Sharpe and drawdown are measured: the Sharpe calculator and the drawdown calculator. Why the best square in a grid flatters itself: overfitting in crypto backtests.

Test it yourself

Take the rule into Keel, or hand it to your AI assistant, and change the coins, the timeframe or the settings. A result you reproduce and then break on purpose is worth more than any single table.

Fork this strategy in Keel

Opens the textbook rule on all 10 coins, 4h, long and short, as your own draft, ready to change and backtest.

Fork this strategy in Keel

Ask your agent

With Keel connected to Claude, ChatGPT or another assistant, paste:

Backtest the Order blocks strategy from usekeel.io/strategies/backtested/order-blocks on an equal-weight basket of BTC, ETH, SOL, XRP, NEAR, ENA, UNI, DOGE, SUI and TAO at 4h with Keel

FAQ

Order blocks strategy questions

Does the order block strategy work in crypto?

Weak, in this test. Run on the top 10 coins in equal weight, after fees, slippage and funding, it made money on the portfolio in at least one run, but no run cleared our bar. The textbook version, 4h, long and short, returned -7.8% with a Sharpe of -0.40, against -7.7% for holding all 10 coins. The best portfolio run was 1d, long and short, with a Sharpe of 0.73 and a total return of +15.3%. Whether that is worth trading depends on the timeframe and the coin: the results show every run, and the settings grid shows whether the good runs depend on one exact setting.

What are the best order block settings for crypto?

On the portfolio, the textbook setting ranked 5th of 16 on the 4h chart, and the best square was swing width 8 bars and profit target 3R, with a Sharpe of 0.35. There, one setting carries the result and its neighbours did much worse, which is a warning sign: a result that needs one exact setting tends not to repeat. Prefer a setting whose neighbours also did well over the single best square.

Does the order block strategy work on Bitcoin?

On BTC 4h, long and short, with the whole account on Bitcoin, the rule had a Sharpe of -0.68 and returned -18.6%, against +6.6% for holding BTC over the same window, net of fees, slippage and funding. One coin is a small sample, so the portfolio result above is the better guide; the coin-by-coin table shows BTC next to the other coins.

What is an order block in trading?

It is a zone drawn from a candle at the start of a strong move. ICT teaches the last opposite candle before the move, such as the last red candle before a rally; other schools take the most extreme candle of the leg, which is the version this page tests. Either way, traders treat the block as a footprint of large buyers or sellers and look for price to react when it comes back. The settings grid varies the swing size and the target.

How realistic is this backtest?

Closer than most published backtests. Every fill pays fees and slippage, and every open position pays or earns funding, as a real perpetual futures position does. Orders fill at the close of the signal bar, so the test never buys at a price the chart only touched. It covers one window, so treat the result as evidence, not a promise. How it works explains the engine in depth.