# Wyckoff Pro+ — TradingView publication description

> Paste the block below into the TradingView description field.
> **Publish as OPEN-SOURCE** — see the licence note at the bottom of this file.

---

Wyckoff Pro+ marks up the full Wyckoff cycle on your chart — climax, range, test, breakout, retest and completion — and tells you which step comes next.

Rather than firing an opinion on every bar, it tracks one structure at a time through its lifecycle: a climax establishes a trading range, the range gets tested, a breakout either confirms or traps, and the structure finally retires when the move it predicted has played out. Everything you see on the chart is a stage in that sequence.

── CREDIT AND WHAT IS DIFFERENT ──

Built on the open-source Wyckoff indicator by faytterro (Mozilla Public License 2.0), which supplied the original climax-and-range concept. This is a rewrite rather than a tweak, and adds:

• Structural Spring and UTAD detection — the classic definition of a probe below the range floor (or above the ceiling) that fails to hold and closes back inside, rather than an oscillator threshold. Early "Spg?" and "UT?" watch labels flag the setup before it confirms.
• SOS / SOW breakout detection with the LPS / LPSY retest that follows — the leg of the cycle where the classic low-risk entry actually sits.
• A structure lifecycle. Accumulation retires at its measured-move target or a set number of bars after the LPS, printing "Markup ✓" and clearing its boundary lines. Distribution mirrors it. Without this, floors and ceilings live forever and the script keeps flagging failures at levels that stopped mattering months ago.
• Volume grading. Climaxes, secondary tests and breakouts that occur on genuinely expanded volume are marked with a ★. Grading is cosmetic — it never adds or removes a signal, it only tells you how well-supported one is.
• Shakeout and Upthrust re-arming. When a structure fails, a bounded window opens in which the failure itself can become the trade — a false breakdown that snaps back is the highest-quality Wyckoff entry there is.
• Failed-breakout (trap) detection. An SOS that sinks back into the range, or an SOW that recovers into it, prints an explicit failure and fires an exit alert.
• A dashboard that names the current phase, the last event, the range boundaries, relative volume, the measured-move target, and — most usefully — the specific event to wait for next.
• O(1) range tracking and realtime-safe state, so the script does not slow down on long histories and labels do not flicker intrabar.

── WHAT YOU SEE ON THE CHART ──

Accumulation events: SC (Selling Climax), AR (Automatic Rally), ST (Secondary Test), Spring, SOS (Sign of Strength), LPS (Last Point of Support).

Distribution events: BC (Buying Climax), AR-D (Automatic Reaction), DST (Distribution Secondary Test), UTAD (Upthrust After Distribution), SOW (Sign of Weakness), LPSY (Last Point of Supply).

Failure and trap events: "✖ Acc fail" / "✖ Dist fail" when a range is lost, "✖ SOS fail" / "✖ SOW fail" when a breakout reverses, and the "⚡🌀 Shakeout" / "⚡ Upthrust" re-entries those failures can produce.

Completion: "Markup ✓" / "Markdown ✓" when the cycle finishes.

Shaded boxes mark the accumulation or distribution range, dashed lines mark the live ceiling and floor, and a dotted line marks the measured-move target projected from the breakout.

── THE DASHBOARD ──

Phase — where the current structure stands.
Last Event — the most recent confirmed Wyckoff event.
Next Step — the event to wait for, in plain language ("Wait for LPS pullback (best entry)", "Wait for Spring or SOS breakout", "Cycle complete — trail longs, wait for new BC").
Range Ceiling / Range Floor — the live boundaries.
20-bar Volume — current volume against its recent average.
Target — the measured move projected at the breakout, cached so it survives the LPS.

── HOW TO USE IT ──

Read the Next Step row first. The script is a roadmap, not a signal generator — its value is in telling you what has already happened and therefore what to watch for, so you are waiting at the level rather than chasing the move.

The two classic entries are the Spring (a failed breakdown out of accumulation) and the LPS (the first pullback after an SOS breakout). Their mirrors are the UTAD and the LPSY. The events in between — AR, ST, DST — are context, not triggers.

Stops come from the structure: below the Spring low, below the LPS pivot, above the UTAD high, above the LPSY pivot. That is the point of trading a range — the invalidation level is defined before you enter.

Works on any market and any timeframe, though Wyckoff structure is most legible on daily and weekly charts where a range takes weeks or months to build.

── SETTINGS WORTH KNOWING ──

Pivot Length — how much structure a swing must have to count as an event. Raise it for cleaner, rarer events.
Use Volume Confirmation and Climax Volume Multiple — how demanding the ★ grading is.
Confirm Spring/UTAD/SOS/SOW on bar close — ON prevents intrabar flicker and un-firing alerts. Recommended.
Structure Expiry (bars after LPS/LPSY) — how long a completed structure stays on the chart before retiring.
LPS max % above ceiling — how close a pullback must come back to the broken ceiling to count as a genuine retest.
Detect SOS/SOW breakouts + LPS/LPSY — turn the whole breakout leg off if you only want range work.

── ALERTS ──

Sixteen named alert conditions cover every event, each with a message describing what happened and what it implies. The four structure-invalidation events additionally fire a guaranteed alert at bar close, so an exit notification cannot be missed because of the frequency setting chosen in the alert dialog.

── LIMITATIONS ──

Wyckoff is a framework for reading supply and demand, not a mechanical system. Events are identified from price and volume structure and can be revised as new bars arrive — the confirm-on-close setting exists for that reason. Ranges that never resolve, low-volume instruments, and illiquid sessions all degrade the reading. The measured-move target is a projection, not a forecast.

This script is a charting and research tool. It does not provide financial advice, and nothing in it should be treated as a recommendation to buy or sell.

---

## Publication checklist (not part of the description)

1. **Publish as OPEN-SOURCE.** The source carries a Mozilla Public License 2.0 header from faytterro's original. MPL 2.0 is file-level copyleft: a modified version of an MPL-licensed file must stay under MPL and its source must remain available. Publishing this as Protected or Invite-only would breach that licence. Keep the existing `// © faytterro` and MPL header lines in the code exactly as they are.
2. **Keep the credit paragraph.** TradingView's House Rules require scripts based on another author's open-source work to credit the original and explain what is meaningfully different. The "CREDIT AND WHAT IS DIFFERENT" section above is written to satisfy that — do not trim it.
3. **Chart on publish.** Use a clean chart showing only this indicator, on a symbol with a clear completed accumulation → markup cycle so SC / AR / ST / Spring / SOS / LPS / Markup ✓ are all visible in one view. TradingView rejects publications whose chart is cluttered with other indicators.
4. **No performance claims.** The description above deliberately makes none. Do not add backtest results, win rates, or profit language in the description or the chart annotations.
5. **Title.** "Wyckoff Pro+" is fine. Avoid adding words like "best", "profitable" or "signals" to the title.
