Back to session review

Session review · EURUSD · Jul 31, 2026

EURUSD July 31 Review: A Dismissed Print Triggers a Violent Round Trip Through 1.1482

EURUSD closed July 31 at 1.15306, just 5 pips above the 1.15256 open, but the session's Neutral/Wait lean survived a genuine stress test the prep didn't script: a decisive break below 1.1500, 1.1482 and 1.1475 beginning almost exactly at the 14:00 UTC final Michigan sentiment release — a print the prep had explicitly waved off as 'a volatility window only, not a trigger' — sent price to a 1.14547 low by 16:00 UTC, before a reversal reclaimed 1.1500 within the hour and carried EURUSD to a marginal new high of 1.15372 by the pre-weekend close. The lead scenario's literal terms (contained 1.1482-1.1550 all session) failed intraday even though the day-type call and neutral lean were vindicated by the flat close.

Grading the exact preparationEURUSD July 31: Friday Digestion Above 1.1500, a Wage-Cost Print the Lone TriggerOpen the original prep

Session vs preparation

H1 · UTC · EURUSD
  • Observed candles
  • Reviewed session
  • Preparation levels
EURUSD — session vs prep levelsH1
Shaded band: the reviewed session. Price lines: the original preparation’s levels. Times shown in UTC.

Called vs actual

Every element is assessed against the preparation as written.

Grade card

4 of 9 correct
  1. Day-type callPartial
    Called
    Range (digestion)
    Actual
    Whipsaw — decisive intraday breaks of 1.1500/1.1482/1.1475 to the downside, then a reversal to a marginal new high, before closing flat
  2. LeanCorrect
    Called
    Neutral/Wait
    Actual
    Closed +5.0 pips (+0.04%), essentially flat despite an 82.5-pip high-low range
  3. Lead scenario — Range holds above the break (45%)Incorrect
    Called
    Contained roughly 1.1482-1.1550 through the session, including through the 12:30 UTC ECI print
    Actual
    Broken decisively below 1.1482 (to a 1.14547 low) for the 14:00-16:00 UTC window before reversing; the stated corridor did not hold all session
  4. Key level 1.1500 (support/pivot)Incorrect
    Called
    Expected to hold, keeping the breakout thesis alive
    Actual
    Closed below it for three straight H1 bars (14:00-16:00 UTC) before reclaiming at 17:00
  5. Key level 1.1482 (support, flipped)Incorrect
    Called
    Loss reopens a retest of the full former supply zone
    Actual
    Held H1 close below it at 16:00 UTC (1.14663)
  6. Key level 1.1475 (support, flipped)Incorrect
    Called
    A held loss would erase most of Thursday's confirmation
    Actual
    Breached — 16:00 UTC close 1.14663 and session low 1.14547 both below it
  7. Key level 1.14340 / 1.1424 (deeper structural support)Correct
    Called
    Only in play on a failed retest of 1.1475
    Actual
    Never reached — session low held at 1.14547
  8. Key level 1.1550 (continuation trigger)Correct
    Called
    Confirms continuation if a held H1 close clears it
    Actual
    Never touched — session high 1.15372
  9. Key level 1.15364 (Thursday's high)Correct · within noise
    Called
    First reaction point on any renewed push higher
    Actual
    Pierced intrabar to 1.15372, but no H1 close held above it — capped the late rally as expected

Showing 9 of 9 elements

The tape

How the session unfolded, in chronological order.

The tape

  1. Open (00:00-06:00 UTC)

    EURUSD opened at 1.15256 and drifted in a tight, roughly 20-pip band through the Asian session, easing toward the low-1.151s by 04:00-06:00 UTC without threatening any flagged level — consistent with the prep's expected thin, digestive Asian read.

  2. Mid-session

    The London open (07:00-09:00 UTC) produced only a shallow dip toward 1.1504-1.1506 — no displaced break above 1.1550, so the continuation branch's Judas-roundtrip risk never even got a first leg. NY morning built back toward 1.1525 by 11:00 UTC before fading into the 12:30 UTC Employment Cost Index print, which passed with only a mild reaction (the 12:00-13:00 UTC candle eased to 1.1505). The session's defining move came ninety minutes later: the 14:00 UTC candle — coinciding almost exactly with the final Michigan sentiment revision the prep had dismissed as "a volatility window only, not a trigger" — dropped sharply from 1.15016 to a close of 1.14847, decisively through both the 1.1500 pivot and the 1.1482 invalidation line in a single hour. The break extended into the 16:00 UTC candle, tagging a session low of 1.14547 — punching through the 1.1475 support shelf the prep had reserved for a "held reclaim" pullback scenario, though never reaching the deeper 1.14340/1.1424 structural cluster.

  3. Late/close

    The break did not hold. Within the 17:00 UTC hour, price reversed violently — from a 1.14621 low to a 1.15043 close, reclaiming 1.1500 in a single hour — and kept climbing through the NY afternoon, printing a marginal new high of 1.15372 at 20:00 UTC (just above Thursday's 1.15364 high). This push through the 18:00-21:00 UTC window ran directly counter to the prep's expectation of pre-weekend liquidity thinning and range compression; only the final three hours (21:00-23:59 UTC) actually compressed, settling into a tight range just under 1.1536 and closing at 1.15306, effectively flat versus the 1.15256 open.

A correct forecast does not establish an executable or profitable trade. Every scored preparation stays in the public record.

See the full track record
Read the full original review

Session Summary

EURUSD's July 31 session (00:00-23:59 UTC) delivered a genuine two-way stress test the prep didn't script — a decisive break of the post-breakout support shelf into the final Michigan sentiment print, followed by a single-hour reversal that carried price to a marginal new high — before closing almost exactly where it opened.

Session:            EURUSD Post-Breakout Digestion Session Preparation
Symbol:              EURUSD
Window:              00:00 – 23:59 UTC
Day type called:     Range
Day type actual:     Whipsaw
Lean outcome:        Correct
Regime:              Whipsaw digestion — violent two-way test of the post-breakout range before closing flat
Preparation:         Partially accurate
Surprises:           High

Grade Card

Prep elementCalledActualVerdict
Day-type callRange (digestion)Whipsaw — decisive intraday breaks of 1.1500/1.1482/1.1475 to the downside, then a reversal to a marginal new high, before closing flatPartial
LeanNeutral/WaitClosed +5.0 pips (+0.04%), essentially flat despite an 82.5-pip high-low rangeCorrect
Lead scenario — Range holds above the break (45%)Contained roughly 1.1482-1.1550 through the session, including through the 12:30 UTC ECI printBroken decisively below 1.1482 (to a 1.14547 low) for the 14:00-16:00 UTC window before reversing; the stated corridor did not hold all sessionIncorrect
Key level 1.1500 (support/pivot)Expected to hold, keeping the breakout thesis aliveClosed below it for three straight H1 bars (14:00-16:00 UTC) before reclaiming at 17:00Incorrect
Key level 1.1482 (support, flipped)Loss reopens a retest of the full former supply zoneHeld H1 close below it at 16:00 UTC (1.14663)Incorrect
Key level 1.1475 (support, flipped)A held loss would erase most of Thursday's confirmationBreached — 16:00 UTC close 1.14663 and session low 1.14547 both below itIncorrect
Key level 1.14340 / 1.1424 (deeper structural support)Only in play on a failed retest of 1.1475Never reached — session low held at 1.14547Correct
Key level 1.1550 (continuation trigger)Confirms continuation if a held H1 close clears itNever touched — session high 1.15372Correct
Key level 1.15364 (Thursday's high)First reaction point on any renewed push higherPierced intrabar to 1.15372, but no H1 close held above it — capped the late rally as expectedCorrect (within noise)

The day-type and lean calls held up on a closing basis, but the literal terms of the lead scenario — that price would stay contained inside 1.1482-1.1550 through the session — failed for a two-hour stretch. Every downside level the prep flagged as meaningful (1.1500, 1.1482, 1.1475) was breached before the session snapped back, and the map's own pullback-branch invalidation ("a held reclaim of 1.1500") is exactly what ended the move. This is a prep that named the right levels and the right lean, but underweighted how violently the corridor itself could be tested.


The Tape

Open (00:00-06:00 UTC): EURUSD opened at 1.15256 and drifted in a tight, roughly 20-pip band through the Asian session, easing toward the low-1.151s by 04:00-06:00 UTC without threatening any flagged level — consistent with the prep's expected thin, digestive Asian read.

Mid-session: The London open (07:00-09:00 UTC) produced only a shallow dip toward 1.1504-1.1506 — no displaced break above 1.1550, so the continuation branch's Judas-roundtrip risk never even got a first leg. NY morning built back toward 1.1525 by 11:00 UTC before fading into the 12:30 UTC Employment Cost Index print, which passed with only a mild reaction (the 12:00-13:00 UTC candle eased to 1.1505). The session's defining move came ninety minutes later: the 14:00 UTC candle — coinciding almost exactly with the final Michigan sentiment revision the prep had dismissed as "a volatility window only, not a trigger" — dropped sharply from 1.15016 to a close of 1.14847, decisively through both the 1.1500 pivot and the 1.1482 invalidation line in a single hour. The break extended into the 16:00 UTC candle, tagging a session low of 1.14547 — punching through the 1.1475 support shelf the prep had reserved for a "held reclaim" pullback scenario, though never reaching the deeper 1.14340/1.1424 structural cluster.

Late/close: The break did not hold. Within the 17:00 UTC hour, price reversed violently — from a 1.14621 low to a 1.15043 close, reclaiming 1.1500 in a single hour — and kept climbing through the NY afternoon, printing a marginal new high of 1.15372 at 20:00 UTC (just above Thursday's 1.15364 high). This push through the 18:00-21:00 UTC window ran directly counter to the prep's expectation of pre-weekend liquidity thinning and range compression; only the final three hours (21:00-23:59 UTC) actually compressed, settling into a tight range just under 1.1536 and closing at 1.15306, effectively flat versus the 1.15256 open.


What We Learned

  1. Day-type precondition needs refinement. "No tier-1 print on the calendar" was treated as sufficient grounds for a quiet digestion day, but a dismissed tier-2 print still produced an 82.5-pip round trip through every flagged support level. Route: re-examine the range/digestion precondition check — absence of a tier-1 catalyst should not be read as absence of two-way volatility risk, especially in a corridor this narrow (68 pips between 1.1482 and 1.1550) coming off two consecutive elevated-volatility sessions.
  2. A print dismissed as "not a trigger" was the actual trigger. The final Michigan sentiment revision was waved off in the prep as a minor, non-tradable revision; instead its release window coincided almost to the minute with the session's decisive break of both defined invalidation levels. Route: driver-stack/priors revision — late "final" revisions to a preliminary read that already moved markets earlier in the week deserve the same pre-event blackout discipline as tier-2 prints proper, not a pass because they are officially a revision.
  3. Right scenario, untradable trigger. The pullback branch's trigger and path (a break below 1.1482, a retest toward 1.1475/1.14340) accurately described the shape of the move, but its own invalidation ("a held reclaim of 1.1500") fired inside the same session — a textbook trap that would have stopped out a pullback trade moments before the reversal completed. Route: tighten the tradability standard for level-break confirmation to require a minimum hold (e.g. two or more consecutive H1 closes) before treating a single-bar break as validated.
  4. The Neutral/Wait process worked as designed. With no branch clearing the 55% weight bar, the lean correctly kept the prep out of a session that would have run over a directional bet on either side. Worth reinforcing rather than revising.

Reviewed prep: 2026-07-31-eurusd-session-preparation