Markets › Metals · XAUUSD spot, 1-hour bars from 1-minute data
Engulfing Candle Strategy Backtest: 22 Years of Gold on the 1-Hour Chart
The bullish and bearish engulfing patterns are among the first candlestick setups every trader learns. We traded every one on gold's 1-hour chart from 2004 to 2026, with the textbook stop, two targets and two popular filters.
Buried · CostsThe pattern beat chance. The spread beat the pattern.
Variants tried: 4 · Passed every gate: 0 · Beat the random control: 4 · Holdout opened: yes (already used)
Short answer: not after costs. On 22 years of gold 1-hour bars the engulfing pattern made a small profit before costs and beat the same trades on random days, but with the stop at the engulfing candle (a median of $2.98 away) the $0.30 round trip took about 0.15 R a trade, and every version lost: -0.134 R a trade with a 1R target, -0.088 R with a 2R target and a 200 EMA trend filter.How much costs took here, compared across all 54 of our tests →Compare all 14 gold strategies we tested →
00The verdict in three lines
- We tested the engulfing candle strategy on gold (XAUUSD) 1-hour bars from 2004 to October 2026: enter after a bullish or bearish engulfing candle, stop at the engulfing candle's low or high, target 1R or 2R; two versions add a reversal-context filter or a 200 EMA trend filter. $0.30 an ounce a round trip.
- The pattern beat random timing, and still lost money. Before costs it made +0.012 R to +0.056 R a trade; the cost was about 0.146 R a trade, because the median stop was only $2.98. Net: -0.134 R (1R target) to -0.088 R (with the trend) a trade over 6,254 to 12,186 trades.
- Buried, cause Costs, for all four versions. The lesson is about stop size, not about candlesticks.
01What is an engulfing candle?
An engulfing pattern is a two-candle formation where the second candle's body completely covers the body of the first, in the opposite colour.
- Bullish engulfing pattern: a down candle followed by an up candle that opens at or below the down candle's close and closes above its open. It is read as buyers overpowering sellers, and taught as a buy signal, especially after a decline.
- Bearish engulfing pattern: an up candle followed by a down candle that opens at or above its close and closes below its open; taught as a sell signal, especially after a rise.
- Engulfing candle stop loss: the textbook stop is just beyond the engulfing candle, below its low for a bullish pattern and above its high for a bearish one; the target is a multiple of that risk.
On gold's 1-hour chart the pattern is common: 17,823 engulfing patterns in 22 years (9,001 bullish, 8,822 bearish), about 13.8% of all bars, close to a thousand a year recently.
02The engulfing candle strategies we tested
- Entry: at the open of the next minute after the engulfing candle closes: long after a bullish engulfing, short after a bearish one. One trade at a time.
- Stop: the engulfing candle's low (long) or high (short). R = the distance from entry to stop.
- EG-1R and EG-2R: every pattern, target 1R or 2R.
- EG-2R-REV: the reversal context: a bullish engulfing only when the candle before it closed below the 20-bar moving average (it came after a decline), a bearish one only above it.
- EG-2R-200: the trend filter: longs only above the 200-bar EMA, shorts only below.
- Stops and targets are checked minute by minute (the stop first when both fall in the same minute); a gap through a level fills at the gapped price.
We fixed these four versions, the costs and the gates on 21 October 2026, before computing a single pattern. Related candlestick test: the inside bar on EUR/USD.
03How we tested it
XAUUSD from the IC Markets MetaTrader 4 history, 1-minute bars from June 2004 to 7 October 2026 on the New York clock, built into 129,857 one-hour bars, the same file as our other gold tests. Costs: $0.30 an ounce a round trip, as in every gold test on this site; no slippage beyond gapped fills, which flatters the result. Periods: 2004 to 2012, 2013 to 2019, and a holdout from 2020 already used by earlier gold tests. First-period bar t ≥ 2.0 (a pattern not tested before here). Control: every trade moved to another day at the same time, same direction, same stop and target distances, 500 times. Engine check: hand-worked patterns (equal opens, a doji, a close exactly at the open, a gap through the stop, stop and target in the same minute, both filters, one position at a time) and an independent re-implementation that matched every one of the 33,541 trades; the self-test caught one rounding issue in the 20-bar average before any result was computed (eg_selftest_result.txt).
04Results: does the engulfing candle strategy work?
| Variant | Rule | Trades | Win rate (95% range) | Gross per trade | Cost per trade | Net per trade | Net total | Profit factor | Verdict |
|---|---|---|---|---|---|---|---|---|---|
| EG-1R | Every engulfing pattern, target 1R | 12,186 | 49.9% (49% to 51%) | +0.012 R | −0.146 R | -0.134 R | -1,632 R | 0.77 | Buried |
| EG-2R | Every engulfing pattern, target 2R | 8,825 | 33.9% (33% to 35%) | +0.028 R | −0.142 R | -0.113 R | -999 R | 0.85 | Buried |
| EG-2R-REV | Only after a move the other way (reversal context), target 2R | 6,276 | 34.1% (33% to 35%) | +0.031 R | −0.145 R | -0.114 R | -716 R | 0.85 | Buried |
| EG-2R-200 | Only in the direction of the 200 EMA, target 2R | 6,254 | 35.2% (34% to 36%) | +0.056 R | −0.143 R | -0.088 R | -549 R | 0.88 | Buried |
Cumulative net R by month (1 R = the distance from entry to the stop). * Holdout already used before this test.
Engulfing pattern win rate: 49.9% with a 1R target and 33.9% with a 2R target, almost exactly what a coin flip gives with those targets before costs. The median trade lasted 1.4 hours (1R) to 2.8 hours (2R).
05Why it lost: the stop is too close for the cost
The cost of a trade is fixed in dollars ($0.30 an ounce), but results are measured against the risk, the distance to the stop. On gold's 1-hour chart the engulfing candle is usually small, so the stop is close: the median R was $2.98, and a third of the trades had a stop under $2.09.
| Stop distance (thirds of EG-1R trades) | Average cost per trade, EG-1R | EG-1R net per trade (trades) | EG-2R net per trade (trades) | EG-2R-REV net per trade (trades) | EG-2R-200 net per trade (trades) |
|---|---|---|---|---|---|
| Small stop (under $2.09) | 0.294 R | -0.278 R (4,053) | -0.266 R (2,821) | -0.249 R (2,092) | -0.239 R (2,081) |
| Medium ($2.09 to $4.30) | 0.103 R | -0.098 R (4,057) | -0.101 R (2,917) | -0.084 R (2,061) | -0.072 R (2,051) |
| Large ($4.30 and over) | 0.041 R | -0.026 R (4,076) | +0.015 R (3,087) | -0.010 R (2,123) | +0.046 R (2,122) |
The smaller the stop, the worse the result: the cost takes a bigger bite of each trade. With the largest stops the plain 2R and the trend-filtered versions were slightly positive. That split was not part of the rules, so we do not treat it as a filter; it shows where the money was lost. You can check your own numbers with our trading cost calculator.
06Engulfing pattern or random entry?
| Variant | Trades | Real net per trade | Random days, median | Random, 5th to 95th | Percentile (95 needed) |
|---|---|---|---|---|---|
| EG-1R | 12,186 | -0.134 R | -0.171 R | -0.195 R to -0.149 R | 99.6 |
| EG-2R | 8,825 | -0.113 R | -0.161 R | -0.197 R to -0.123 R | 98.4 |
| EG-2R-REV | 6,276 | -0.114 R | -0.160 R | -0.202 R to -0.119 R | 96.4 |
| EG-2R-200 | 6,254 | -0.088 R | -0.156 R | -0.197 R to -0.110 R | 99.6 |
The control places every trade on another day at the same time, with the same stop and target distances. Moved trades lost more than the real ones in every version, so the pattern did pick slightly better moments. (A moved trade that lands on a weekend, or overlaps the previous one, is skipped, so each control run keeps a little over half of the trades.) Beating chance is one gate of six; the pattern still lost money.
07By period and by year
| Variant | 2004 to 2012, net per trade (trades) | 2013 to 2019 (trades) | Holdout* 2020 to Oct 2026 (trades) | t, first period | PF, second period |
|---|---|---|---|---|---|
| EG-1R | -0.185 R (3,579) | -0.161 R (4,316) | -0.063 R (4,291) | -7.46 | 0.72 |
| EG-2R | -0.151 R (2,718) | -0.139 R (3,127) | -0.051 R (2,980) | -4.16 | 0.82 |
| EG-2R-REV | -0.118 R (1,878) | -0.140 R (2,275) | -0.083 R (2,123) | -2.56 | 0.82 |
| EG-2R-200 | -0.125 R (1,807) | -0.122 R (2,308) | -0.019 R (2,139) | -3.55 | 0.84 |
| Year | Engulfing patterns | EG-1R net (trades) | EG-2R net (trades) | EG-2R-REV net (trades) | EG-2R-200 net (trades) |
|---|---|---|---|---|---|
| 2004 (from July) | 161 | -42 R (141) | -42 R (111) | -20 R (75) | -20 R (67) |
| 2005 | 345 | -109 R (289) | -82 R (230) | -53 R (169) | -28 R (126) |
| 2006 | 405 | -53 R (328) | -14 R (281) | -32 R (188) | -5 R (171) |
| 2007 | 515 | -132 R (391) | -99 R (299) | -77 R (206) | -60 R (188) |
| 2008 | 624 | -14 R (468) | +3 R (392) | +67 R (249) | -21 R (251) |
| 2009 | 684 | -110 R (498) | -86 R (398) | -38 R (262) | -40 R (261) |
| 2010 | 654 | -112 R (502) | -73 R (382) | -69 R (273) | -49 R (261) |
| 2011 | 659 | -15 R (480) | +2 R (335) | +8 R (233) | +5 R (259) |
| 2012 | 762 | -75 R (482) | -19 R (290) | -8 R (223) | -9 R (223) |
| 2013 | 866 | -85 R (550) | -76 R (420) | -28 R (325) | -41 R (306) |
| 2014 | 913 | -127 R (600) | -92 R (439) | -33 R (293) | -71 R (318) |
| 2015 | 913 | -80 R (575) | -35 R (414) | -34 R (307) | -35 R (298) |
| 2016 | 895 | -90 R (646) | -54 R (441) | -33 R (315) | +3 R (300) |
| 2017 | 928 | -119 R (630) | -28 R (447) | -95 R (317) | -30 R (339) |
| 2018 | 991 | -105 R (636) | -72 R (467) | -51 R (369) | -52 R (367) |
| 2019 | 1,060 | -90 R (679) | -78 R (499) | -44 R (349) | -54 R (380) |
| 2020 | 978 | -54 R (661) | -2 R (455) | -28 R (327) | -22 R (322) |
| 2021 | 1,036 | -97 R (635) | -25 R (399) | -38 R (292) | -23 R (301) |
| 2022 | 994 | -36 R (645) | -66 R (470) | -21 R (320) | +0 R (316) |
| 2023 | 932 | -55 R (603) | -5 R (381) | -13 R (301) | -5 R (296) |
| 2024 | 944 | -38 R (649) | -1 R (472) | -19 R (348) | +17 R (323) |
| 2025 | 757 | +1 R (535) | -22 R (411) | -33 R (277) | -3 R (302) |
| 2026 (to 7 Oct) | 807 | +7 R (563) | -31 R (392) | -24 R (258) | -5 R (279) |
EG-1R lost money in every year from 2004 to 2024 and was roughly flat in 2025 and 2026.
08The gates
| Variant | Trades | 1. PF ≥ 1.2 in validation | 2. ≥ 50 trades in each period | 3. t ≥ 2.0 on development | 4. Above the 95th percentile of the moved-entry control | 5. Positive without the 10 best trades | 6. Holdout net positive (already used) |
|---|---|---|---|---|---|---|---|
| EG-1R | 12,186 | fail | pass | fail | pass | fail | fail |
| EG-2R | 8,825 | fail | pass | fail | pass | fail | fail |
| EG-2R-REV | 6,276 | fail | pass | fail | pass | fail | fail |
| EG-2R-200 | 6,254 | fail | pass | fail | pass | fail | fail |
| Variant | Cause | Gates failed | Verdict |
|---|---|---|---|
| EG-1R | Costs | 1, 3, 5, 6 | Buried |
| EG-2R | Costs | 1, 3, 5, 6 | Buried |
| EG-2R-REV | Costs | 1, 3, 5, 6 | Buried |
| EG-2R-200 | Costs | 1, 3, 5, 6 | Buried |
The data-gap check removed 680, 726, 513 and 453 trades open across a suspect gap in the data; no verdict changed. Costs means positive before costs and negative after: the pattern found something, but not enough to pay for trading it with this stop.
TWhat this shows, and what to take into your own tests
What the results show
- On 22 years of gold 1-hour bars the engulfing candle had a small edge before costs (+0.012 R to +0.056 R a trade) and picked better moments than the same trades on random days, but with the stop at the engulfing candle's extreme the round-trip cost was about 0.146 R a trade, so every version lost money.
- The typical stop was only $2.98 away. Gold's 1-hour engulfing candles are small and common (13.8% of all bars), and $0.30 a round trip is a tenth of a $3 risk.
- Filters changed little: trading only with the 200 EMA trend lost least (-0.088 R a trade), the reversal-context version lost as much as trading every pattern.
What remains unknown
- A version with a minimum stop or a wider stop. On trades whose stop was over $4.30 the trend-filtered version was slightly positive, but that split was not in the rules, so it is a question for a new test, not a result.
- Daily or 4-hour engulfing candles, where the same cost is a much smaller share of the risk, and other markets.
- A broker with lower costs. At half the cost the versions would still have lost on average, but by less.
Why it was buried
The pattern was not useless: on average it was right a little more often than the same trade placed on another day. But a 1-hour engulfing candle on gold is usually a few dollars tall, so the stop at its low or high is close, and costs that look tiny in dollars are large in units of risk. On the third of trades with the smallest stops (under $2.09) the cost alone averaged 29% of the risk, and those trades lost 0.278 R each.
What you can apply to your own tests
- Divide your cost by your stop distance before you trust any candlestick setup. On small timeframes this one number decides the result.
- Compare with random entries that use the same stop and target. A pattern can beat chance and still lose money.
- If you add a minimum stop size after seeing a result like this, treat it as a new rule to test on new data, not a fix.
A note on the numbers: drawdown figures are measured on closed trades unless a table says it includes open losses. Open losses inside a trade are not counted in a closed-trade drawdown, so real account risk is higher, especially for systems with no stop. Backtests are not live trading.
FAQCommon questions
What is a bullish engulfing pattern?
A down candle followed by an up candle whose body covers the down candle's body: it opens at or below the down candle's close and closes above its open. It is taught as a buy signal, especially after a decline. A bearish engulfing pattern is the mirror image.
Does the engulfing candle strategy work?
Not in our gold test: 12,186 trades with a 1R target lost 0.134 R each after costs, and the filtered 2R versions lost too. The pattern did slightly better than random timing; the problem was the cost relative to the stop.
What is the win rate of the engulfing pattern?
49.9% with a 1R target and 33.9% with a 2R target on gold 1-hour bars, close to what random entries with the same targets give before costs.
Where should the stop loss go on an engulfing candle?
The textbook stop is beyond the engulfing candle's low (bullish) or high (bearish). On gold's 1-hour chart that put the median stop only $2.98 away, so a $0.30 cost was a large share of the risk, and the trades with the smallest stops lost the most.
How was the strategy tested?
On XAUUSD 1-minute data from 2004 to 2026, built into 1-hour bars, $0.30 an ounce a round trip, with rules written and dated before the data was run, costs included on every trade, results split into development, validation and holdout periods, a random-entry control as the benchmark, and every variant reported. Read the protocol.
09Check our arithmetic
eg_spec.md
eg_lib.js · eg_ref.js · eg_selftest.js · eg_run.js
control_audit_lib.js · em_lib.js · fx_data.js · gh_lib.js · gx_lib.js · hourly_lib.js · ma_lib.js · rb_lib.js · rs_lib.js · rsi2_protocol.js
eg_selftest_result.txt · eg_results.txt · eg_summary.json
Code provenance: our own code, written from the specification.
10Data notes
Source. IC Markets MetaTrader 4 XAUUSD 1-minute bid history (a demo server), the file of our other gold tests; in many weeks of 2004 to 2010 its time labels are an hour early, which moves whole 1-hour bars in time without changing them, and nothing in these rules depends on the time of day. Trades open across a suspect gap in the data are listed in the gap check above. Fills: the open of the first minute after the engulfing candle; stops and targets at their level, or the minute's open if it gapped through.
11Corrections
22 Oct 2026, navigation: added links to the gold strategies guide, which now includes this test. No result changed. 22 Oct 2026, navigation: added a link to the new guide comparing trading costs across all our tests. No result changed. 22 Oct 2026, navigation: added a link to the new guide comparing trend following and mean reversion across all our tests. No result changed.
+More tests and guides
- Best gold trading strategy
- Inside bar trading strategy
- Head and shoulders pattern
- H1 open trap strategy
- Trend following vs mean reversion: this test next to the others of its style
- Free prop firm challenge calculator
- What all the backtests found so far
- The backtesting protocol
- How to backtest a trading strategy without fooling yourself
- Backtesting glossary