Engulfing compares two candle bodies. It can be one condition in a tested plan, but does not establish who controls the market, a later entry price or a profitable reversal. Recognise the completed geometric pattern separately from placing and executing an order. The fictional EUR/USD model below makes that distinction explicit.

What is the Engulfing pattern and what does it really show?

In a conventional bullish reversal interpretation after a decline, a bearish body is covered by a later bullish body; the bearish interpretation mirrors it after a rise. The body is the open-to-close interval. Specify boundary treatment, any relative-size threshold and the preceding-trend rule rather than assume every detector uses identical “small” and “large” settings.

Body containment does not require containment of every wick. A Harami pattern instead places a smaller second body inside the first under its selected definition. These describe geometry, not confirmed changes of ownership, intent or future control.

Our strict bullish rule requires O2 < C1 and C2 > O1, with opposite colours; the bearish rule mirrors it. A first quote, a prior close and a smoothed candle open are different data conventions. OANDA’s candle API, for example, distinguishes an open based on the interval’s first price from optional smoothing using the prior close. Do not replace a strict inequality with equality because a series is labelled Forex, or assume that every provider’s adjacent bars join without gaps.

Inverting the quote reverses colour, not body containment

Before calling an engulfing bullish, record which currency is in the price numerator. The same fictional candle pair reverses direction when the quote is inverted.

Scroll sideways to see the full diagram

Inverting the quote reverses colour, not body containmentTwo fictional candles in positive price B per A have OHLC100,101,96,98 and97,102,95,101. Body1[98,100] is strictly inside body2[97,101], and candle2 rises. In inverse A per B, each point becomes1/P: High is the reciprocal of old Low and Low of old High. Containment remains, but candle2 falls. Each panel has its own linear price axis and the same candle order.Same containment, opposite directionOur positive-price model has no spread.B per1 AA per1 B = 1/P95981010.00980.01010.01041212Body1 is inside body2 in both quotes.Green: Close>Open. Maroon: Close<Open.

Our model: positive synthetic price P in currency B per1 A, without spread, costs or execution. This is a mathematical transformation of one series, not actual Bid/Ask quotes for two instruments.

For inverse price: Open′=1/Open, Close′=1/Close, High′=1/Low, Low′=1/High. The function1/P decreases for P>0, reversing the order of interval endpoints. Transformed body1 is[1/100;1/98] and body2[1/101;1/97]. Body2 still contains body1. However,1/101<1/97, so candle2 falls.

TA-Lib code checks both body directions and their containment. OANDA OHLC documentation defines High/Low as the period’s extreme prices. We test containment and direction only, rather than gaps, trend context or the label’s predictive edge.

The body still engulfs its predecessor, but reciprocal price reverses direction.
CandleOpen PHigh PLow PClose P
11001019698
29710295101

What separates a good Engulfing from a random one?

Location at support or resistance, relative body size and preceding context can be additional filters to define and compare. A larger body changes a ratio; it does not by itself demonstrate stronger predictive accuracy or a transfer of market control. Use information available at the decision time and retain failed cases as well as visually convincing examples.

A volume filter needs an identified field. MetaTrader tick volume counts received ticks in the supplied feed; it is not the size of trades, market-wide turnover or participant identity. Actual exchange volume may be available for exchange instruments, while OTC Forex data depend on the provider. Specify the series and test the activity rule separately; a larger tick count does not automatically improve the signal.

What does it look like in an example?

Assume a prior decline separately, then use fictional completed EUR/USD Bid candles on a linear scale with one pip = 0.0001. Their complete OHLC below pass our strict body condition. No historical support level, participant identity or observed trade is claimed.

Fictional completed Bid candles; body test versus full range
Candle 1O 1.0800; H 1.0840; L 1.0775; C 1.0780: 20-pip bearish body
Candle 2O 1.0779; H 1.0834; L 1.0768; C 1.0830: 51-pip bullish body
Body containment[1.0780,1.0800] lies strictly inside [1.0779,1.0830]
Not a full-range outside barSecond High 1.0834 is below first High 1.0840

Where do you place the entry, stop-loss and target?

After-close and pullback entries are different hypotheses. Define order type, availability time, cancellation and missed-fill handling rather than label either automatically cautious or valid. For the fictional pair, after Bid Close 1.0830 a later quote is Bid/Ask 1.0831/1.0833. Assume the whole purchase actually fills at Ask 1.0834, one pip worse than the displayed Ask. A quote need not fill an arbitrary size. OANDA Asia Pacific’s execution policy distinguishes the server-valid execution price from what is displayed; that document governs its own product/entity scope, not every broker.

A stop below the pattern and any target are chosen exit rules, not compulsory geometric consequences. Define their prices, size, cost and execution assumptions. OANDA Asia Pacific’s policy routes activated FX stop orders to market execution; activation is distinct from an exact fill at the trigger. Under adverse conditions an ordinary stop can realise a larger loss than its planned distance.

Use a separate fictional USD-account position of EUR 20,000, so one pip is USD 2. Assume Ask buy fill 1.0834, target Bid sale fill 1.0930, stop Bid sale fill 1.0764, and USD 4 total commission. The target is a chosen scenario, not supplied by engulfing geometry or known resistance. The link on stop-loss and take-profit provides order context.

Alternative full closes, not outcomes to add together
Assumed sale Bid fillPrice resultAfter total commission
1.0930, target96 pips × USD 2 = USD 192+USD 188
1.0764, chosen stop fill−70 pips × USD 2 = −USD 140−USD 144
1.0761, three pips worse−73 pips × USD 2 = −USD 146−USD 150

Compute each as (sale−purchase)×20,000−4. Spread is already in the assumed Ask/Bid fills; financing, conversion and other fees are omitted. The Close-to-stop distance 66 pips differs from the actual assumed fill-to-stop 70 pips: the extra 4 pips combine the later quote, spread and slippage. Do not deduct them again. Net gain/loss 188/144≈1.3056 is neither a probability nor the strategy’s expected value.

Why does Engulfing fail in a range?

Separate conventional trend interpretation from the detector. TA-Lib C 0.6.4 checks body colours and containment but not preceding trend. In a hypothetical boundary exercise the first candle is 100/101/96/98. With second H 102, L 95, the pairs O/C 97/101,98/101,97/100 and 98/100 give codes 100,80,80 and 0 respectively. Three earlier 100/110/98/105 bars provide sufficient history. A positive-code filter accepts three cases; a code-equals-100 filter accepts one. These are exact checks of the read branch, not success probabilities or native-library execution.

The site’s existing 120-bar Kraken EUR/USD H1 classification from 21–25 September 2026 contains 15 nonzero CDLENGULFING codes. Independent branch recalculation matches those saved codes. The sample and codes establish no profitable trade or worldwide occurrence rate. Define trend, boundary and fill assumptions before evaluating later data.

Engulfing and outside-bar tests are not interchangeable or general subsets. The worked EUR/USD pair engulfs bodies without engulfing the first High. Conversely, an arbitrary pair 100/101/96/98 followed by 99/102/95/100 has a second full range outside the first but no engulfing body. Neither is inherently weaker. Compare the piercing line and dark cloud cover patterns and Three Outside Up and Down setup using complete definitions rather than a ranking based on body size.

What to do tomorrow

  1. Choose a series and interval, freeze body-boundary and trend rules, then check completed candles without using later information.
  2. Compare support/resistance, body-size and activity filters as separate hypotheses. State their availability and retain rejected cases instead of assume one is superior to every indicator.
  3. Record actual or explicitly assumed quote-side entry and exits, size and costs. A reward smaller than a planned loss does not alone establish that the entire strategy is unprofitable.
  4. Record the accepted detector codes, body ratios and identified volume field. Twenty observations or more received ticks do not by themselves prove improved returns or trading turnover.
  5. Use the technical analysis section to compare body and full-range rules. If one bar reaches both chosen stop and target, use finer data or a stated sequence assumption rather than automatically choose the profitable exit.