Backtest the Holy Grail strategy on BTCUSDT
On the 4-hour chart of Bitcoin it buys when ADX(14) > 30, ADX(14) is higher than one candle ago, +DI above −DI (14) and candle low touches or crosses below EMA(20). Stop beyond the 5-candle swing, target 2× risk, 1% of the account per trade.
5 notes about this test
- Short trades (a pullback to the 20 EMA in a downtrend) cannot be executed on Spot, so only the long side is tested.
- "First" pullback is mechanical here: any candle whose low touches or crosses the 20 EMA while ADX(14) > 30 and rising qualifies, so more setups are taken than a discretionary trader would take.
- "Previous swing high" as the target is approximated by a fixed 2R target, because the published rule depends on the trader's own reading of the chart.
- The buy stop is valid for 3 candles; the published rule says "a few bars".
- The setup was published for stocks and futures; this test runs on the crypto pair you named.
Market
Timeframe
Account
History
6 fixes since this report
- This report was produced before RSI, ATR and ADX were warmed up for Wilder smoothing; its ADX/DI rules started trading on a shorter warm-up, so the first signals and the tested window's start may differ. Re-run to get corrected results.
- This report was produced before R was measured in stop distances; 1 of the 10 stored trades were size-capped, so the R figures first shown for them (average trade, winners, losers) were % of equity per 1% risk, not stop distances. This page now shows the corrected reading; the stored original is unchanged. Re-run to get a report produced with the fix.
- This report was produced before limit fills stopped taking slippage in their price, and a re-picked target waits for the script; defect "target filled beyond its limit": its target fills were shown 0.02% short of the target (the P&L effect is commission × slippage, below 0.001% per trade). Re-run to get corrected results.
- This report was produced before a resting order's fill candle was judged only after the fill; defect "resting-order fill candle": its entries are resting orders (stop_above_high), so exits on the candle each order filled on may have been booked from prices printed before the fill. Re-run to get corrected results.
- This report was produced before an entry whose fill gapped past its stop was dropped; a trade whose fill gapped past its stop may be missing from this report; a re-run includes it (usually a small loss at the open). Re-run to get corrected results.
- This report was produced before an entry that filled exactly on its stop was dropped; a trade whose fill opened exactly on its stop may be missing from this report; a re-run includes it (about zero before costs). Re-run to get corrected results.
50.0%win rate · 10 trades, too few to judge
RECOMMENDEDWeak evidence- Trades
- 10
- Timeframe
- 4H
- Tested over
- 2920 days
- Time in market
- 1.3%
large winners · 10 trades, limited sample
- Verdict rules v1
What to watch
- 1 of 10 trades were size-capped at 1× equity
What the data supports
Months in profit
56% of months closed up
5 of 9 months in the tested window
Best month
+2.0%
2026-04 · 1 of 10 trades · best of 9 months
Made money after costs
profit factor 1.83
all 10 trades
Net return
+4.5%
all 10 trades
Trust scoreThe fixed factors behind the trust score, each with its own measurement.
C
Grade
RECOMMENDED
Verdict
Net return
4.5%
-1129.5 pts vs buy & hold
Win rate
50.0%
10 trades
Profit factor
1.83
5 wins · 5 losses
Max drawdown
-1.1%
from peak
Strategy replay
Entry
81,065.72
Buy · 11 May, 04:00 NY · 8 bars
Stop loss
80,279.77
0.97% away
Take profit
82,637.62
1.94% away
Result
-1.12R
Stop loss · -1.09% of equity, size-capped
Monthly returns
Best month
2.0%
Worst month
-1.1%
Typical month
0.91%
Months in profit
56%
Account curve
$10,000
Starting balance
$10,446
Final balance
$123,398
Buy & hold
Wins and losses
- Wins5
- Losses5
Rules
Buys when
ADX(14) > 30 and ADX(14) is higher than one candle ago and +DI above −DI (14) and candle low touches or crosses below EMA(20)
Stop
lowest low of the 5 completed candles before the signal candle
Target / exit
2R (R = entry-to-stop distance)
Risk per trade
1% of equity risked to the stop · 1 of 10 trades were size-capped at 1× equity
Monthly heatmap
| Year | Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2019 | — | -1.0% | — | — | — | — | — | — | — | — | — | — |
| 2020 | — | — | — | 1.9% | — | — | — | — | — | — | — | — |
| 2021 | — | — | — | — | — | — | — | — | — | 0.9% | — | — |
| 2023 | 1.9% | — | — | — | — | — | — | — | — | -1.0% | — | — |
| 2024 | — | — | 1.9% | — | — | — | — | — | open | -1.0% | — | — |
| 2026 | — | — | — | 2.0% | -1.1% | — | — | — | — | — | — | — |
Latest trades
10 closed trades
| Date | Direction | Entry price | Exit price | Result |
|---|---|---|---|---|
| 11 May 2026 | long | 81065.7199 | 80263.7140 | Loss |
| 13 Apr 2026 | long | 73494.6960 | 79456.4335 | Win |
| 22 Sept 2024 | long | 64012.8000 | 62416.6742 | Loss |
| 27 Mar 2024 | long | 69419.8812 | 71177.3853 | Win |
| 1 Oct 2023 | long | 28071.1231 | 26948.6992 | Loss |
| 8 Jan 2023 | long | 17180.4254 | 17715.7323 | Win |
| 10 Oct 2021 | long | 56572.6223 | 54069.1840 | Loss |
| 4 Oct 2021 | long | 48509.7000 | 51050.4679 | Win |
| 4 Apr 2020 | long | 6766.2930 | 7093.2600 | Win |
| 23 Feb 2019 | long | 4146.2391 | 3932.3634 | Loss |
This is the free view of a shared report. Run your own strategy on the same engine.
Backtest a strategy