Inversion Gaps: Separate the Trigger From the Draw and Session Context

Video: Nobody Can Teach You to Trade IFVGs Like THIS
Creator: The Soup Room
Original Video: Watch the original video
Difficulty: Advanced

The Big Idea

An inversion fair value gap is a price pattern whose role changes after a completed break through it. The Soup Room uses that event within a larger thesis about higher-timeframe location, session timing, and an intended destination. The pattern is therefore a trigger candidate, not a self-contained reason that price must reach a target.

Define the Gap Before Discussing Its Failure

The source describes a three-candle fair value gap using nonoverlap between the first and third candle’s wicks. A bearish example has the third high below the first low, leaving an interval between them. The middle candle supplies the expansion context, but the pattern is not proof that no transactions occurred anywhere inside the interval.

For a bearish gap, continuation traders might expect a return into that interval to encounter resistance. A completed close above the interval instead creates the source’s bullish inversion hypothesis. That is a change in how the area is interpreted; it does not guarantee the next retest holds.

A bullish gap and bearish inversion are the directional mirror, but the companion indicator deliberately implements only the bearish-to-bullish case. Stating the direction clearly is better than implying a larger complete model exists because one pattern can be mirrored conceptually.

ObservationPrice definition in our baselineInterpretation still requiring context
Bearish gapCurrent high < low two bars earlier.A three-bar price nonoverlap, not a ledger of resting sell orders.
Bullish inversionA later completed close above the stored upper boundary.The prior bearish role may have failed.
Later responsePrice overlaps the interval and closes bullish above it.A possible hold after inversion, not a filled entry.
Overhead referenceA previously confirmed high above the inversion close.A chart objective candidate, not verified stop inventory.

The Source’s First Entry and Later Entry Are Different Policies

The video compares an early one-minute inversion with waiting for a five-minute inversion. The latter supplies more completed larger-bar evidence but occurs later. The source illustrates roughly 7.23R for one proposal and 4.96R for another; these are reported chart examples, not independently verified average returns.

The spoken rounded distances of 245 points reward and 34 points risk calculate to about 7.21, rather than exactly 7.23. That small difference can reflect rounding or different exact anchors, but the transcript alone cannot settle it. Preserve the distinction instead of treating every displayed number as an audited fill calculation.

Waiting does not mechanically raise the win rate. It changes the sample, timing, available price, and risk distance. A useful comparison must retain early signals that fail before five-minute confirmation and successful moves that never offer the later entry.

More confirmation can leave less nominal reward

These original long-side prices use one fixed stop at 98 and objective at 114, excluding costs.

StepObservation or calculationMeaning
Earlier proposal at 100Risk 2; reward 14Nominal 7R.
Later proposal at 102Risk 4; reward 12Nominal 3R to the same objective.
Move the stop to recover the old ratioA different invalidation hypothesisIt must be justified independently rather than adjusted to preserve an attractive number.
Earlier proposal never filledNo executed trade under that policyDo not compare ideal proposal prices with verified later fills as though they are the same evidence.

A Clear Draw Is a Hypothesis About Destination

The source marks untouched highs as possible upside destinations and distinguishes internal references from an external high at the edge of the chosen range. The range definition determines that distinction. A high can be external to a small range while remaining internal to a larger one.

Untested highs can be visible references without proving the amount of resting liquidity or that price must visit them. The presenter’s certainty about eventual target attainment in the successful example is retrospective commentary. Preserve cases that turn before those highs or never reach them.

The second example is particularly instructive because potential draws exist on both sides and the creator prefers no trade. A directional interpretation should allow ambiguity. A chart with several plausible targets is not automatically a reason to choose the nearest convenient one after an inversion forms.

Time and Higher-Timeframe Location Are Filters, Not Magic

The lesson focuses on the New York morning, especially roughly 09:00–11:00, and a four-hour bullish gap with lower-timeframe activity inside it. It also considers session lows and a response around the cash open. These conditions are part of the narrative; an isolated one-minute inversion does not reproduce them.

The source refers to a 9 a.m. CRT model but explicitly does not fully teach that model here. Its exact construction must not be invented from the name. The article and code do not reconstruct a timed range that the supplied material has not defined.

Use America/New_York for the observation clock rather than a permanent UTC offset. Daylight-saving transitions change the offset, and the chosen symbol’s sessions and data coverage still matter. A default morning window is a study boundary, not evidence that every setup inside it is superior.

The source’s rejected session reaches a relevant area later, after slow movement and without the desired five-minute inversion. This preserves the difference between a location eventually being touched and an eligible timely entry. Do not backdate that later information to make an earlier signal look qualified.

A Retest Is Another Event After Inversion

After a close above the bearish gap, a later return can test the new bullish interpretation. The code requires zone overlap, a bullish body, and a close above the upper boundary. A candle merely touching the interval does not satisfy all those conditions.

This is a later completed response, not the source’s earliest possible inversion entry. The tool marks the inversion with a small square and a qualifying later response with a triangle so those events do not become visually interchangeable. Neither symbol submits an order.

The baseline retains the newest bearish gap until it inverts or expires. Newer gaps replace older noninverted candidates, even if the older area remains relevant. That is a material sampling shortcut: it does not identify the first gap after an independently defined higher-timeframe setup or track every gap simultaneously.

Freeze the Zone and Be Honest About the Target Proxy

At inversion, the boundaries are frozen. The latest already confirmed high is stored as an overhead reference only if it is above the inversion close. If no such high is available, the tool does not manufacture a destination. The source’s full stack of untouched one- and five-minute highs is not reproduced.

The inverted zone retires after a completed close below its lower boundary, after the observation window ends, or after thirty chart bars by default. One later response is allowed per inverted zone. It then stays visible until retirement, with the status stating the response allowance was consumed.

The noninverted gap expires after sixty chart bars by default, but can be replaced earlier by a newer gap. These are original lifetime rules. On one-minute and five-minute charts the same counts represent different durations. No higher-timeframe final values or pivots are drawn back as though they were known before confirmation.

Breakeven and Re-entry Need Their Own Rules

The source considers moving protection near entry at an internal high, partly because the cash open is approaching. It also considers a later re-entry if protection is hit. Those are distinct management policies with different participation and cost consequences.

A breakeven reference is not a risk-free position. Spread, fees, gaps, and order execution can produce a loss, and an actual amended order must be distinguished from a line on a chart. Re-entry adds exposure and a new decision; it is not automatically a continuation of the earlier trade’s economics.

A partial exit leaves a real remaining position

This fictional long example assumes 100 units bought at 100 with initial stop 98 and ignores costs.

StepObservation or calculationMeaning
Initial planned price-distance risk100 × 2 = $200A fixed reference unit for the example.
Sell half at 10450 × 4 = $200 realized grossFifty units remain exposed.
Remaining units later exit at 9950 × (99 − 100) = −$50Combined gross result $150, not a guaranteed free remainder.
Re-enter another 100 unitsRequires a new entry and invalidation planDo not hide the new exposure inside the first trade’s realized gain.

What Remains Outside a Candle-Only Baseline

The code does not score V-shaped recovery quality, combine several higher-timeframe gaps, verify a session sweep, or decide which opposing draw is more compelling. Those omissions are central to interpretation. The output is a pattern observation for contextual review, not the source’s full permission checklist.

An OHLCV chart also cannot prove that a gap contains unused institutional orders that must rebalance. The geometric pattern can be measured without endorsing that causal certainty. Research should compare behavior after the pattern rather than assume the explanation establishes its effectiveness.

Pine Script Indicator

View Pine Script Indicator Code
//@version=6
// Article: https://candlechasers.com/inversion-gap-draw-context/
// Original educational indicator; no orders or broker execution.
indicator("CC Bearish Gap Inversion and Retest Context", overlay=true)
life = input.int(60,"Candidate maximum age / chart bars",minval=1)
inverseLife = input.int(30,"Inverted-zone display lifetime / chart bars",minval=1)
window = input.session("0900-1100","New York observation window")
strength = input.int(3,"Context swing-high confirmation",minval=1,maxval=10)
inWindow = not na(time(timeframe.period,window,"America/New_York"))
ph = ta.pivothigh(high,strength,strength)
var float knownH = na
var int stage = 0
var int born = na
var int flipped = na
var float top = na
var float bottom = na
var float targetRef = na
var bool used = false
bool inversion = false
bool retest = false
if chart.is_standard and barstate.isconfirmed
    bool occupied = stage != 0
    if stage == 1
        if bar_index-born > life
            stage := 0
        else if bar_index > born and close > top and inWindow
            inversion := true
            stage := 2
            flipped := bar_index
            targetRef := knownH > close ? knownH : na
            used := false
    else if stage == 2
        if not inWindow or bar_index-flipped > inverseLife or close < bottom
            stage := 0
        else if bar_index > flipped and not used and low <= top and high >= bottom and close > top and close > open
            retest := true
            used := true
    // Until inversion, the NEWEST confirmed bearish three-bar gap replaces the old one.
    bool newGap = high < low[2]
    if not inversion and stage != 2 and newGap
        top := low[2]
        bottom := high
        born := bar_index
        stage := 1
    if not na(ph)
        knownH := ph
plot(knownH,"Latest confirmed swing high: context only",color=color.new(color.gray,60),style=plot.style_stepline)
p1 = plot(stage != 0 ? top : na,"Gap upper boundary",color=stage == 2 ? color.orange : color.red,linewidth=2,style=plot.style_linebr)
p2 = plot(stage != 0 ? bottom : na,"Gap lower boundary",color=stage == 2 ? color.orange : color.red,linewidth=2,style=plot.style_linebr)
fill(p1,p2,color=stage == 2 ? color.new(color.orange,85) : color.new(color.red,90))
plot(stage == 2 ? targetRef : na,"Frozen known overhead high (not verified resting orders)",color=color.teal,style=plot.style_linebr)
plotshape(inversion,"Completed bearish-gap inversion",shape.square,location.belowbar,color.orange,size=size.tiny)
plotshape(retest,"Later completed bullish inverted-zone response",shape.triangleup,location.belowbar,color.aqua)
alertcondition(inversion,"Gap inversion close","CC: completed close above newest bearish gap inside selected NY window. Context and risk require separate review.")
alertcondition(retest,"Inverted-gap response","CC: later completed bullish zone response. No fill or draw-on-liquidity guarantee.")
var table panel = table.new(position.top_right,1,2,bgcolor=color.new(color.black,10))
if barstate.islast
    table.cell(panel,0,0,not chart.is_standard ? "Use STANDARD candles" : stage == 0 ? "Waiting for bearish three-bar gap" : stage == 1 ? "Newest bearish gap stored; waiting for inversion close in window" : used ? "Inverted zone retained; retest allowance consumed" : "Inverted zone frozen; waiting for later response",text_color=color.white)
    table.cell(panel,0,1,"LONG context proxy | no 4h/15m zone, CRT, sweep or competing-draw model",text_color=color.white,text_size=size.small)

What This Indicator Shows

Standard candles display the newest stored bearish gap and its inversion state, with an orange zone after a qualifying morning close above it. A square marks inversion, a triangle marks one later completed bullish response, and a known overhead pivot may provide a frozen context line. The status panel explains waiting and consumed states. Start with one- or five-minute charts to study the examples; the code operates on its current chart interval only.

What This Indicator Does Not Show

It does not implement the full 9 a.m. CRT model, four-hour/15-minute zone alignment, first-eligible-gap selection, sweep validation, competing draws, all untested highs, or a probability score. The newest-gap retention and lifetime rules are ours. Context lines are not verified liquidity or orders. No entry fills, stop execution, partial exits, re-entry accounting, or performance results are generated.

Setup and Validation

Paste the complete code into TradingView’s Pine Editor, save it, and add it to the chart. Use the chart type, timeframe, and context described above, then inspect the status panel and reference plots before expecting a marker. Use Once Per Bar Close for the supplied alert conditions and recreate alerts after changing code or settings. No alert submits an order.

Validation status: Statically reviewed for completed-bar timing, source-versus-proxy distinctions, future-data use, state behavior, reference replacement and expiry, and visible output. This code has not been compiled or chart-tested in TradingView here. No historical performance or live-execution results are claimed. Use replay to check the described behavior and report any compiler or runtime message exactly.

Practice: Record the No-Trade Session Too

Before revealing an inversion outcome, mark the intended destination, opposing references, higher-timeframe area, clock window, and missing evidence. Timestamp the gap, inversion, and any later retest separately. Preserve ambiguous draws, expired windows, gaps replaced before inversion, and sessions with no valid permission. Then compare an early entry proposal with a later-confirmation policy using feasible prices.

Research and Comparison Lab

These are original proposed experiments, not results established by the source. Change one main feature at a time, retain failures and missing opportunities, and reserve later observations for evaluation rather than repeatedly selecting rules from the same outcomes.

What does the larger-bar confirmation change?

Compare predeclared one-minute and five-minute confirmation policies on the same independently identified contextual opportunities. Keep destination, money-risk policy, costs, and evaluation period consistent. Measure nontriggering cases, delay, and remaining reward rather than assume a higher success rate.

Does clear destination selection add information?

Classify candidate sessions as one-sided or competing draws before outcomes are visible using a written rubric. Compare the same inversion observations under each classification, retaining reviewer disagreements. Do not select the draw after price visits it.

How much does newest-gap retention omit?

Compare the baseline with a manually recorded inventory of all valid gaps using identical expiry and response rules. Measure candidates lost by replacement and later outcomes under a separate execution policy. More tracked zones change the sample, not necessarily its quality.

Check Your Understanding

Does a three-bar gap prove no trades occurred in its interval? No. It is a candle-geometric nonoverlap.

Is a later five-minute signal guaranteed to have a higher win rate? No. That requires a matched study.

Does the code track the source’s first eligible IFVG? No. It retains the newest bearish candidate.

What if both directions have plausible draws? The source allows no trade rather than forced conviction.

Does breakeven protection remove all loss risk? No. Execution and costs remain.

Final Takeaway

The source treats an inversion as one part of a location, time, and destination decision, and its rejected example is as useful as its winner. Keep those layers separate, make the sampling policy visible, and compare early and later permission without granting either an ideal historical fill.

Risk Disclosure

This material is educational and is not personalized financial, investment, or trading advice. Trading can cause substantial losses. Source-reported results, hypothetical examples, and probability illustrations do not establish future performance. Calculations depend on their assumptions and omit costs unless stated. Commissions, spread, slippage, gaps, leverage, liquidity, borrowing, financing, and changing market conditions can materially affect outcomes. Indicators do not simulate broker execution or establish profitability. Short exposure can involve losses beyond the initial sale value. Evaluate any approach with appropriate data, realistic costs, and explicit risk limits before considering live use.

This is an independent educational companion and is not affiliated with, sponsored by, endorsed by, or authorized by the source creator, channel, or TradingView.

As an Amazon Associate I earn from qualifying purchases.