Article contents
- Evidence and scope
- Illustration
- Process
- Two different structures share a reversal hypothesis
- Engulfing bodies with deterministic boundary treatment
- Three-candle stars and a separate no-gap variant
- Numerical qualification, rejection and losing trades
- From the final close to an executable order
- Assign volume to the relevant candle
- Validate each version and preserve rejected candidates
- Common pitfalls
- Practical checklist
- Frequently asked questions
- Research sources
Evidence and scope
The references provide three official morphology descriptions. They contain no account records or backtest supporting the proposed numerical thresholds, order policy or expected profitability.
Practical workflow
- Freeze contextTrend and zone information precede the first candle.
- Measure bodiesApply two-body coverage or the three-candle sequence.
- Check gapsKeep gapped and no-gap versions distinct.
- Wait for completionPublish only after the final candle closes.
- Execute and testPreserve the chosen stop, TTL and volume policy.
Two different structures share a reversal hypothesis
TradingView describes bullish engulfing in terms of the candle body rather than mandatory coverage of the entire high–low range [1]. Its traditional morning-star description includes three candles and gaps [2]; evening star is the bearish counterpart [3]. This article turns those descriptions into explicit research variants rather than treating a pattern name as an order instruction.
Reversal context must exist before the first candle. One proposal defines a prior downtrend through two already-confirmed lower swing highs and lower swing lows. Without sufficient history, retain the geometric label but do not claim a trend reversal. Patterns in the center of a range and patterns after a decline belong in separate contextual groups.
The two pattern families should not be pooled simply because both can end with an upward candle. Engulfing measures a two-body relationship; a star introduces an intervening small body, gap conditions and another bar of delay. Those differences alter both the opportunity set and the achievable entry price.
Engulfing bodies with deterministic boundary treatment
Proposed bullish conditions are C[t−1]<O[t−1], C[t]>O[t], O[t]≤C[t−1] and C[t]≥O[t−1], with at least one boundary extending by one tick. Require current body size≥0.8×ATR[t−1] to reject tiny two-candle configurations. The 0.8 multiplier is an experimental setting. Mirror the comparisons for bearish engulfing.
Requiring H[t]>H[t−1] and L[t]<L[t−1] adds an outside-bar condition. It is not part of the body-only baseline. An outside bar can fail engulfing when its body does not cover the previous body; conversely, a valid body engulfing can leave one or both previous wicks uncovered.
Use tick-aware comparisons rather than arbitrary floating-point tolerances. Define how an exactly equal body boundary is handled, and retain the one-tick extension requirement consistently. A first-candle doji fails the strict direction condition in this version; admitting it would create another registered variant.
bull_engulf(t):
opposite = C[t-1] < O[t-1] and C[t] > O[t]
covers = O[t] <= C[t-1] and C[t] >= O[t-1]
extends = O[t] <= C[t-1]-tick or C[t] >= O[t-1]+tick
sizeable = abs(C[t]-O[t]) >= 0.8*ATR[t-1]
return opposite and covers and extends and sizeable
# Signal only after close t; proposed stop below min(L[t-1],L[t]).
Three-candle stars and a separate no-gap variant
Let a, b, c be consecutive candles and A the ATR available before a. The proposed morning_star_gap requires a bearish a with body≥0.8A, b with body≤0.3A entirely below a's body, and a bullish c with body≥0.8A. Candle c must open above the top of b's body and close above the midpoint of a's body.
The evening version mirrors these relationships: a large bullish body, a small body above it, then a large bearish body opening below b's body and closing below a's midpoint. The size multipliers are research choices rather than parameters optimized by the cited sources.
A continuously traded crypto market may support a separately named three_candle_reversal_no_gap experiment that removes the two gap requirements. Give it its own version and results. Do not retain the traditional gapped name while silently changing its population, or transfer a gapped-pattern performance claim to the continuous-market variant.
Body gaps and full-range gaps are also different. Wicks may overlap while the bodies meet the proposed star rule. Store both flags if useful, but select the relevant one before evaluation. Session boundaries, overnight trading and corporate-action adjustments can otherwise manufacture apparent gaps.
Numerical qualification, rejection and losing trades
Synthetic engulfing example: prior O=102, C=100, H=103, L=99.5; current O=99.8, C=102.4, H=102.8, L=99.6. The new body covers the old body even though its range does not cover both old extremes. With ATR=2, body size 2.6 exceeds the required 1.6. If the new close were only 101.8, the body-coverage condition would fail.
Synthetic morning star: a has O=105, C=101; b has O=100, C=100.2; c has O=100.5, C=103.5, with A=3. Body sizes are 4,0.2,3. Both body-gap conditions hold and 103.5 exceeds a's midpoint of 103. A final close at 102.8 fails the midpoint condition even if the sequence looks like a rebound.
A proposed entry at 103.7 after c with stop 99.5 has 4.2 points of planned risk and a 2R target of 112.1. A synthetic continuation to that target is a success under the rule. A decline to 99.4 instead produces a stopped trade. Both start from valid morphology; the pattern only determines eligibility, not the subsequent path.
A missing third candle is not a partially successful star. Keep it as an unfinished candidate until confirmation or expiry. If an anticipatory strategy enters during b, its outcomes must be evaluated independently from the completed-three-candle baseline.
From the final close to an executable order
The proposed baseline enters at the next available open after the final candle and stops beyond the full pattern extreme plus a buffer. An alternative places a stop entry beyond the pattern high with a three-bar lifetime. Register both timing and expiration before looking at subsequent paths.
A large pattern can make the stop wide. Reduce quantity under a fixed risk budget rather than moving the stop into the body merely to manufacture a desired R multiple. Record whether a setup was rejected before submission because its available reward or liquidity was insufficient.
If engulfing and star labels share the same final anchor, use one event identity or a portfolio rule preventing duplicated risk. A still-unfilled order may be canceled on a predeclared invalidation; a filled trade remains in the record. The final daily close cannot remove a stop order that already executed intraday.
For gaps between confirmation and execution, retain the original signal while recalculating realized entry risk. A stop crossed immediately after entry requires a feasible fill price, not an assumed exact stop. Same-bar stop and target touches need finer data or a stated adverse-path convention.
Assign volume to the relevant candle
Proposed features include RVOL of the engulfing candle or star candle c, and activity in b relative to its baseline. Low volume in b may reflect a narrow range or a quiet time of day; it does not automatically prove that sellers are exhausted. Same-time comparisons reduce intraday seasonality effects.
Test morphology alone, morphology at a pre-existing zone and then the added volume condition. Keep prior trend, stop and fill model consistent. A very high-volume engulfing candle following news can have more expensive spreads and gaps, so gross confirmation scores are insufficient.
Do not compare total volume from a three-candle star against a two-candle engulfing sequence without accounting for duration. A per-bar mean, final-candle RVOL or separately defined event window makes the question clearer. Volume used for a completed pattern is available only when its contributing candles have completed.
Validate each version and preserve rejected candidates
Fixtures should include equal body boundaries, a doji first candle, body gaps with overlapping wicks, outside bars without body engulfing, stars missing c and split-adjustment errors. Mirror the input around a fixed price center to detect incorrect bearish signs. The signal must appear only after the final required candle closes.
Report engulfing, star_gap and no_gap separately, including candidates that never trigger, duplicate patterns, fees, drawdown and out-of-sample return. Register body, gap and context thresholds before selecting a final version. An attractive winning example cannot replace results across the complete opportunity set.
A useful ablation removes only the gap requirement while preserving all other star conditions, then removes only the body-size filter. This reveals what changes the signal population. If several conditions change at once, the difference in performance cannot be attributed to one specific morphological feature.
Common pitfalls
Entering before the third star candle
The sequence is unfinished; an anticipatory entry belongs to a different strategy.
Removing gaps while retaining the original claim
Changing the gap definition changes the sample, particularly in continuously traded markets.
Checking only candle colors
A color change alone does not satisfy body coverage, size or midpoint conditions.
Checklist before using this method
Check each item after verifying it on your data. Progress is saved in this browser; it does not certify a profitable strategy.
Frequently asked questions
Must engulfing cover both wicks?
Not in the body-only baseline. Full high–low coverage adds an outside-bar requirement and should be evaluated separately.
Must the middle star candle be a doji?
Not in this version. A small body is sufficient; a doji-star variant is a more restrictive subset requiring its own threshold.
Research sources
Each source supports the definition or evidence described beside it. The pseudocode, synthetic examples and proposed parameters require separate validation.
- Engulfing - BullishTradingView. Read the distinction between body and full-range coverage. Checked: .
- Morning Star - BullishTradingView. Read the three-candle structure and gap requirements. Checked: .
- Evening Star - BearishTradingView. Read the bearish variant and midpoint condition. Checked: .
Related methods
Risk note
This content supports education and research design, not financial advice. Backtest is historical simulation, does not guarantee future performance and does not place real trades. Methods in this library are not automatically features available in the app. See methodology and learning center.
Validate rules before risking real capital
Check app support, data and individual simulated trades; advanced detectors may require a separate implementation.
Download Backtest on the App Store