The bullish engulfing is the candle that looks most like a turn. After a fall, one up day swallows the whole body of the down day before it: the buyers took back everything the sellers did, and more. StockCharts’ candlestick dictionary files it as a reversal pattern at the end of a downtrend.
I tested it on the S&P 500 since 2014 with the same exits as the hammer test: the stop under the pattern’s low and the target twice that distance above the close. 40 closed trades.
The rules
- Buy when the S&P 500 prints a bullish engulfing pattern after a fall: a down day (close below open) followed by an up day whose body completely covers it, opening at or below the first day’s close and closing above the first day’s open.
- It has to come after a fall: the first day’s close is below the close five trading days earlier.
- Sell when a close goes below the pattern’s low (the lower of the two days’ lows, the stop), when a close goes above the engulfing day’s close plus twice its distance to that low (the target, 2R), or after 20 trading days. All three are fixed on the day of the buy signal.
- Daily open, high, low and close from January 2014 (older S&P 500 opens in the free data are copies of the previous close). Long only; in cash between trades.
Market: S&P 500 index (^GSPC), price only, dividends not included.
The result
| Bullish engulfing | Buy-and-hold | |
|---|---|---|
| Annual return | −0.29% | 11.88% |
| Total return | −4% | 322% |
| Max drawdown | −20.5% | −33.9% |
| Worst fall, from – to | May 2021 – Sep 2022 | Feb 2020 – Mar 2020 |
| Time in the market | 11% | 100% |
| Trades | Value |
|---|---|
| Closed trades | 40 |
| Winners | 15 (37.5%) |
| Average winner | +3.37% |
| Average loser | −2.06% |
| Win/loss ratio | 1.64 |
| Profit factor | 0.98 |
| Best / worst trade | +12.1% / −7.9% |
| Average holding time | 9 sessions |
My read
It comes up more often than the hammer, about 3 trades a year, and it was in the market 11% of the days. 38% of the trades won. The average winner made 3.4% and the average loser lost 2.1%, so the winners were bigger, but only by enough to come out close to even: the profit factor was 0.98.
The best trade, bought in Apr 2020, made 12.1% in 4 trading days, in the rebound after the Covid crash. The worst, bought in May 2022, lost 7.9%. That bear year was also the busiest: 8 of the 40 trades started in 2022, and only 2 of them won. In a falling market every bounce looks like a turn, and most of them aren’t.
Over the whole period it lost 0.29% a year while holding the S&P 500 made 11.9% a year. Its worst fall was 20% against 34% for holding, but that is mostly because it sat in cash 89% of the time. All of this is before costs.
My read: an engulfing day is a real event, not noise, but on the index it carries no edge on its own. Like the hammer and the inside bar, it tells me where to put a stop, not whether to buy. I would only take it in the direction of a trend I already trust, and in a strong uptrend it rarely shows up at all, because it needs a fall first.
Every trade
40 closed trades, newest first
| Bought | Price | Sold | Price | Result |
|---|---|---|---|---|
| 2026-10-21 | 7,757 | 2026-10-23 | 7,624 | −1.7% |
| 2026-03-10 | 6,781 | 2026-03-16 | 6,699 | −1.2% |
| 2026-01-26 | 6,950 | 2026-01-28 | 6,978 | +0.4% |
| 2025-11-06 | 6,720 | 2025-11-07 | 6,729 | +0.1% |
| 2025-10-01 | 6,711 | 2025-10-13 | 6,655 | −0.8% |
| 2025-08-27 | 6,481 | 2025-09-03 | 6,448 | −0.5% |
| 2025-04-10 | 5,268 | 2025-05-09 | 5,660 | +7.4% |
| 2024-12-23 | 5,974 | 2025-01-13 | 5,836 | −2.3% |
| 2023-10-09 | 4,336 | 2023-10-24 | 4,248 | −2.0% |
| 2023-09-29 | 4,288 | 2023-10-04 | 4,264 | −0.6% |
| 2023-06-23 | 4,348 | 2023-06-26 | 4,329 | −0.4% |
| 2023-03-27 | 3,978 | 2023-04-03 | 4,125 | +3.7% |
| 2023-03-03 | 4,046 | 2023-03-10 | 3,862 | −4.5% |
| 2022-10-14 | 3,583 | 2022-11-11 | 3,993 | +11.4% |
| 2022-09-20 | 3,856 | 2022-09-22 | 3,758 | −2.5% |
| 2022-08-25 | 4,199 | 2022-08-26 | 4,058 | −3.4% |
| 2022-07-05 | 3,831 | 2022-07-22 | 3,962 | +3.4% |
| 2022-05-26 | 4,058 | 2022-06-14 | 3,735 | −7.9% |
| 2022-04-14 | 4,393 | 2022-04-25 | 4,296 | −2.2% |
| 2022-04-08 | 4,488 | 2022-04-12 | 4,397 | −2.0% |
| 2022-02-09 | 4,587 | 2022-02-14 | 4,402 | −4.0% |
| 2021-11-17 | 4,689 | 2021-11-29 | 4,655 | −0.7% |
| 2021-04-22 | 4,135 | 2021-05-13 | 4,113 | −0.5% |
| 2020-04-03 | 2,489 | 2020-04-09 | 2,790 | +12.1% |
| 2018-09-12 | 2,889 | 2018-09-21 | 2,930 | +1.4% |
| 2018-08-03 | 2,840 | 2018-08-28 | 2,898 | +2.0% |
| 2017-08-22 | 2,453 | 2017-08-23 | 2,444 | −0.3% |
| 2016-12-27 | 2,269 | 2016-12-29 | 2,249 | −0.9% |
| 2016-09-16 | 2,139 | 2016-10-14 | 2,133 | −0.3% |
| 2016-07-29 | 2,174 | 2016-08-03 | 2,164 | −0.5% |
| 2016-06-17 | 2,071 | 2016-06-27 | 2,001 | −3.4% |
| 2016-05-09 | 2,059 | 2016-05-31 | 2,097 | +1.9% |
| 2016-03-30 | 2,064 | 2016-04-27 | 2,095 | +1.5% |
| 2015-11-17 | 2,050 | 2015-12-14 | 2,022 | −1.4% |
| 2015-08-17 | 2,102 | 2015-08-21 | 1,971 | −6.3% |
| 2015-03-30 | 2,086 | 2015-04-13 | 2,092 | +0.3% |
| 2015-01-20 | 2,023 | 2015-02-13 | 2,097 | +3.7% |
| 2014-09-17 | 2,002 | 2014-09-26 | 1,983 | −0.9% |
| 2014-06-30 | 1,960 | 2014-07-29 | 1,970 | +0.5% |
| 2014-05-12 | 1,897 | 2014-05-28 | 1,910 | +0.7% |
How it was tested
- Signals are read on the daily close; each trade happens at the next day’s close. No look-ahead.
- Long only, fully in or fully out. No commissions, slippage, interest or dividends.
- The test starts on the first day every indicator has a value (Jan 2, 2014); buy-and-hold covers the same days.
- Prices: Yahoo Finance daily data (^GSPC), snapshot
spx-2026-10-28.csv. Checked by a second, independent program before publishing.
Not financial advice. This is educational content, shared for information and entertainment only, and it is not a recommendation to buy or sell any asset. Backtests and past results do not guarantee future results, and the numbers or charts here may contain mistakes. Trading carries risk, including losing all the money you put in. Do your own research before you make any decision.