# Progress — lesson

Gym heading: Read the chart (shelf 01; built for the /v3 preview, on the site since Sep 22 2026). Written before the code (Sep 21 2026), from the three-P framework in the Sep 21 2026 transcripts (projection and pullback, measured; pitch is Efficiency at swing scale and is not read here). 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 opening bars come from point-at-the-bar's generator v2 (the pre-line regimes, by way of structure); the three pushes are legs between authored swings, built the way structure builds its tail.

Choices made where the transcripts were silent:

- A push is a leg from a swing low to the next swing high, and a swing is a bar higher (or lower) than one bar on each side, structure's definition. Inside a leg every bar has a higher high and a higher low than the one before, so the swings are exactly the turns. The last bar on the chart is never a swing.
- The three pushes are the last three swing highs and the last three swing lows on the chart, interleaved low, high, low, high, low, high. The six are drawn in the normal colour; any earlier swing is dimmer. The chart is frozen one to three bars after the third high, so the third push is complete.
- The first push has no extension: it sets the high the second push is measured against. The rule compares the third extension with the second and the second pullback with the first. Two ratios, read at two decimals of the two-decimal distances the reveal prints.
- The lines are 1.25 and 0.80 for both ratios. A ratio between them is inside the band. Some reps sit within 0.03 of a line on purpose (config share); the reveal shows the numbers either way.
- NEITHER comes in three kinds at config shares: both ratios inside the band (holding); one past a line and the other inside the band (one only); both past a line, disagreeing (opposite). Every kind scores NEITHER; the reveal names which.
- The bars per push (3 to 6), per pullback (2 to 4), the entry leg (1 to 2) and the exit leg (1 to 3), the first push's height, the second extension, the first pullback's share of the first push, the height from the first low to the third high, the opening's regime and the mirror are drawn once per rep and kept across rebuilds, so none of them can carry the case; the case sets only the two ratios, and the amplitudes are scaled to the rep's height draw. The harness checks all of it.
- The chart is 46 bars: the opening fills whatever the tail leaves. M is the median range of the last 20 bars, as everywhere in the gym.
- Half the charts are mirrored: a downtrend's pushes are legs from a swing high to the next swing low, extension is how much lower each low got than the one before, and pullback depth is how far price bounced after each low.
- The next 20 bars are drawn with follow rates that are config constants and are never shown; the reveal says what price did, in M from the last close, and nothing about how often.
- Soft clock 10 seconds: four distances, two comparisons.

Persistent header: **"Training your eye for whether each push is getting further than the last."**

## Before you join

- **A push** — A leg from a swing low to the next swing high. Three pushes are on every chart, the swings marked with triangles: the first push makes high 1, the second makes high 2, the third makes high 3. The pullback after each high runs to the next low.
- **Extension** — How much higher a push got than the one before it: high 2 minus high 1, and high 3 minus high 2, in M. The first push has no extension; it sets the high the second is measured against.
- **Pullback depth** — How far price came back after a high: high 1 minus low 1, and high 2 minus low 2, in M.
- **The rule** — Compare the third extension with the second, and the second pullback with the first. The extension grew when the third is at least 1.25 × the second; it shrank when the third is 0.80 × the second or less. The pullback shallowed when the second is 0.80 × the first or less; it deepened when the second is at least 1.25 × the first. GAINING is the extension grew and the pullback shallowed. LOSING is the extension shrank and the pullback deepened. NEITHER is anything else: both inside the band, one inside the band, or the two disagreeing.
- **Why it matters at the trade** — In a trend that is gaining, the pullbacks are getting shorter and the pushes longer: a pullback is where a with-trend entry has location. In a trend that is losing, the side in control is making less progress per push and giving more of it back; the next pullback is not a with-trend entry at the old depth. This describes the last three pushes. It does not forecast the fourth.
- **What it doesn't say** — Gaining is not a forecast and losing is not a reversal. It says nothing about which side has the trend (Structure), how much of the travel stuck (Efficiency), whether participation is keeping up with price (Fuel), or whether the next push fails (The second push). A trend can lose progress and keep going; the fourth push is what it is.
- **The mirror** — In a downtrend the pushes go down: extension is how much lower each low got than the one before, and pullback depth is how far price bounced after each low.
- **Check measurements** — The four distances and the two ratios, in M at two decimals, are available before answering. They are the same rounded numbers the rule uses.
- **M** — The median high-to-low range of the last 20 bars. 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

Four distances, two comparisons: extension 3 against extension 2, pullback 2 against pullback 1. Did the pushes get further and the pullbacks get shorter, the reverse, or neither?

## The rep

Forty-six bars, frozen one to three bars after the third high, the swings marked with small triangles, the six that count in the normal colour. M is stated. The question, in full: **"Three pushes, the swings marked. Is the trend gaining, losing, or neither?"** Gaining, Losing, or Neither, with a confidence.

## The reveal

The chart again with the six swings joined and the four distances bracketed and labelled in M, then the next 20 bars. The banner, the answer, the two ratios against the lines, the verdict, and one takeaway line. Templates:

- GAINING: **"Extension {e3} M against {e2} M, pullback {d2} M against {d1} M: each push got further and each pullback got shorter. Gaining under this rule; the fourth push is unknown."**
- LOSING: **"Extension {e3} M against {e2} M, pullback {d2} M against {d1} M: the push got less and the pullback took more back. Losing under this rule; this is not a reversal call."**
- NEITHER, holding: **"Extension {e3} M against {e2} M, pullback {d2} M against {d1} M: neither changed past the lines. Holding; no read from progress alone."**
- NEITHER, one only: **"Extension {e3} M against {e2} M, pullback {d2} M against {d1} M: the {extension|pullback} moved past a line and the other did not. No read from progress alone."**
- NEITHER, opposite: **"Extension {e3} M against {e2} M, pullback {d2} M against {d1} M: the extension {grew|shrank} and the pullback {deepened|shallowed}. The two disagree; no read from progress alone."**

Every rep ends on one of these lines. Each is a decision: the pullback is where the with-trend entry has location, the old depth is no longer an entry, or nothing from this read. Then what the next 20 bars did, in M. No win percentage is shown anywhere.

## Answer key

Swings: a swing high is a bar whose high is above the highs of the bar on either side, a swing low the mirror; the last bar is never a swing. The three pushes are the last three swing highs and the last three swing lows on the chart, which must interleave as low 0, high 1, low 1, high 2, low 2, high 3 (the mirror in a downtrend).

`e2 = round2((H2 − H1) / M)`, `e3 = round2((H3 − H2) / M)`, `d1 = round2((H1 − L1) / M)`, `d2 = round2((H2 − L2) / M)`; `re = round2(e3 / e2)`, `rd = round2(d2 / d1)`.

`grew = re ≥ 1.25`, `shrank = re ≤ 0.80`, `shallowed = rd ≤ 0.80`, `deepened = rd ≥ 1.25`.

- **GAINING**: grew AND shallowed.
- **LOSING**: shrank AND deepened.
- **NEITHER**: otherwise. Holding when neither ratio is past a line; one only when exactly one is; opposite when both are and they disagree.

The three answers come up a third each (config); NEITHER's kinds at config shares. Nothing but the four distances carries the case: not the bars per push or pullback, not the entry or exit legs, not the first push's height, not the height from the first low to the third high, not M, not the opening's regime, not the mirror.
