# Gap — lesson

Gym heading: Situational awareness. Written before the code (Sep 7 2026). The teach screen shows this text; the answer key implements the rule in it and nothing else. Distances are in M everywhere. Harness, confidence, persistence, and reveal format follow stop-vs-noise; the prior session's bars come from point-at-the-bar's generator v2, and the gap and the first five bars are what this module adds.

Choices made where the order was silent:

- M is the median range of the prior session's last 20 bars: the ruler that existed when the gap printed. The first five bars don't move it. The chart's M is on the screen.
- The gap is |this session's open − the prior session's close| in M, read at two decimals, the precision the reveal shows, so the number on the screen is the number the rule compared.
- The retrace is measured on the extreme, not the close: the deepest point the first five bars reached back toward the prior close, from the open, in M, read at two decimals. A fill is price trading back to the prior close, and a wick that reaches half way is half a fill. Price that never looked back retraced 0 M. "Extend or hold" is one verdict, not two: any retrace short of half the gap is GAP AND GO.
- Half the gap is half the two-decimal gap; the reveal prints it.
- Between 0.25 and 0.5 M scores as NO GAP, as ordered, and the reveal says why. The share of the NO GAP reps built in that band is a config (drill 0.35, holdout 0.45), so every session carries a few.
- The three answers come up a third each (config). Some gaps sit a hair from 0.25 or 0.5 M on purpose, and some retraces a hair from half the gap; the reveal shows the numbers either way.
- The gap goes up or down, half each. The prior session's shape (rotation, leg, or mixed, at the family's shares) is drawn the same way for every case, and the gap's direction is drawn independently of it.
- The first five bars are built from the same shape menu for every case: a run away from the prior close, a hold near the open, a pullback past half, a fill. A small gap gets the same shapes as an event, so the first five bars alone never name a NO GAP; only the size does. Between GAP TO FILL and GAP AND GO the size carries nothing: both draw the gap from the same range. The harness checks both.
- The gap size is not printed on the rep. It is on the reveal.
- The next 20 bars are drawn with an outcome rate that is a config constant and is never shown; the reveal says what price did, in M, and nothing about how often.
- Soft clock 8 seconds: two checks (the gap against 0.5 M, the retrace against half the gap), one comparison each.

Persistent header: **"Training your eye for the gap that makes the prior close a level."**

## Before you trade the open

- **The gap** — The gap is the distance from the prior session close to this session's open, in M. Under 0.25 M it's nothing. Over 0.5 M it's an event: everyone who held overnight is either paid or trapped before the first bar prints, and the prior close is a magnet.
- **No gap** — Under 0.25 M. Nobody's trapped by the open. Trade the day as normal.
- **Gap to fill** — An event whose first five bars have already retraced half the gap: price traded back at least half way to the prior close. The prior close is the magnet; that's the target. The fill is the trade in balance.
- **Gap and go** — An event whose first five bars extended or held: the deepest pullback is short of half the gap. Overnight holders are paid and adding. The prior close is now the stop level, not the target. The failure to fill is the trend tell.
- **Between 0.25 and 0.5 M** — Not nothing, not an event. It scores as NO GAP by design, and the reveal says why.
- **Why it matters at the trade** — Decision: a small gap is ignored. A large gap makes the prior close the first level of the day — the fill is the trade in balance, the failure to fill is the trend tell.
- **What it doesn't say** — Gap to fill is not a forecast that it fills; gap and go is not a forecast that it runs. Each says where the first level of the day is and which side of it you're on. Whether the stop survives the noise (Stop vs noise) and whether the target has room (Runway) are other modules.
- **M** — The median high-to-low range of the prior session's last 20 bars, the ruler that existed when the gap printed. Every distance here is in M. The number for the current chart is on the screen.
- **Confidence is a number** — Low means 40%, Medium 65%, High 90% that your call is right. Scored Brier-style: sure and wrong costs 0.81, unsure and wrong costs 0.16, sure and right costs 0.01. Being certain is as expensive as being wrong.

## The read

Two numbers, both in M: the gap (prior close to this open), and how far the first five bars came back toward the prior close. Then the question: under 0.5 M, nothing; over it, has half the gap been retraced?

## The rep

The prior session's last 20 bars, a gap, this session's first five bars, the prior close drawn across, frozen. M is stated; the gap size is not. The question, in full: **"The session just opened. The grey line is the prior close. No gap, gap to fill, or gap and go?"** No gap, Gap to fill, or Gap and go, with a confidence.

## The reveal

The chart again with the next 20 bars, the 0.5 M event lines drawn around the prior close and, for an event, the half-gap line and the deepest retrace marked. The gap in M, the first-five-bar retrace in M, the verdict, and one takeaway line. Templates:

- NO GAP: **"{gap} M. Nobody's trapped by the open. Trade the day as normal."**
- NO GAP, between the bands: **"{gap} M: past 0.25, short of 0.5. Not nothing, not an event. Scores as NO GAP; trade the day as normal."**
- GAP TO FILL: **"{gap} M gap, half retraced already. The prior close is the magnet; that's the target."**
- GAP AND GO: **"{gap} M gap, holding. Overnight holders are paid and adding. The prior close is now the stop level, not the target."**

Every rep ends on one of these lines. Each is a decision: trade the day as normal, target the prior close, or put the stop behind it. Then what the next 20 bars did, in M. No win percentage is shown anywhere.

## Answer key

`gap = |open − prior close| / M`; `retrace = max(0, the deepest point of the first five bars back toward the prior close, measured from the open) / M`; both at two decimals.

- **NO GAP**: gap < 0.25.
- **NO GAP, ambiguous by design**: 0.25 ≤ gap < 0.5. Scores as NO GAP; the reveal says why.
- **GAP TO FILL**: gap ≥ 0.5 and retrace ≥ gap / 2.
- **GAP AND GO**: gap ≥ 0.5 and retrace < gap / 2 (the first five bars extended or held).

The three answers come up a third each (config); the ambiguous band is a config share of the NO GAP third. Between GAP TO FILL and GAP AND GO nothing but the retrace carries the case: not the gap's size, not its direction, not the prior session's shape, not the size of the first five bars.
