Power of Three indicator rules for TradingView
A Power of Three (PO3) indicator labels a proposed sequence of accumulation, manipulation and distribution (AMD). On TradingView, those labels need explicit rules for a range, a sweep and a later price move. They describe a price pattern; they do not reveal institutional intent or establish that the next move will reverse.
Draft a PO3 indicator with AIKey Takeaways
- Freeze the accumulation range before looking for a sweep. Otherwise later bars can change the level that supposedly triggered the signal.
- Treat manipulation as a label for a specified price event, not evidence that someone deliberately hunted stops.
- A confirmed bar can confirm a rule was met. It cannot confirm a future distribution move or profitable trade.
- The example below is an untested specification for a custom indicator, with failure cases and timing rules. It is not a ready-made Pine Script or a performance result.
What accumulation, manipulation and distribution mean
PO3 is used in ICT trading discussions to organize a range, an excursion beyond it and a subsequent expansion. For example, the Flux Charts publisher describes its TradingView PO3 indicator using these three terms. A publisher description explains that implementation, not a universal rule followed by markets. Different PO3 scripts can assign different labels to the same chart.
- Accumulation: a reference range chosen by a time window or a measurable compression rule. OHLC prices alone do not show who built positions inside it.
- Manipulation: in a mechanical model, an excursion beyond a known boundary followed by a specified rejection. The label does not prove intent or reveal actual stop orders.
- Distribution: a subsequent move measured against a level fixed in advance. It may never occur, and an observed expansion can reverse.
An untested PO3 specification for the 9:30 open
The NYSE core session begins at 9:30 a.m. Eastern Time. The following windows are illustrative design choices around that open, not established high-probability periods. Use a five-minute standard candlestick chart, weekday bars and America/New_York time. The symbol must provide the required premarket bars; a session filter cannot create missing price data.
- Build the reference high H and low L from bars opening at or after 08:30 and before 09:30. Require all 12 five-minute bars, then freeze both levels. Skip the day if data is missing or H equals L. This is a timed range, with no claim that it is unusually compressed.
- Between 09:30 and 10:30, accept the first closed bar whose low is at least one minimum tick below L and whose close is strictly between L and H as a bullish sweep candidate. A bearish candidate requires a high at least one tick above H and a close strictly inside the range.
- If a bar crosses both boundaries, or a later bar crosses the opposite boundary before or on the confirmation bar, cancel the candidate for the day. OHLC data does not resolve the ordering of every intrabar event.
- For a bullish candidate, require a later bar to close above the frozen midpoint (H + L) / 2. For a bearish candidate, require a later close below it. Allow up to three subsequent bars, all closing by 10:30, and place the marker on that confirmation bar.
- Track expansion separately after confirmation: a bullish expansion requires a later close above H, and a bearish expansion a later close below L, by 11:30. If price first breaks the sweep extreme again, record failure; if neither happens, record expiry. Give failure priority when both occur on one bar and keep the original confirmation marker.
- Before confirmation, invalidate a bullish candidate if price trades below its sweep low, or a bearish candidate if price trades above its sweep high. Invalidation takes precedence over confirmation on the same bar. Accept at most one candidate per day and reset at the next reference window.
A worked label and a failed setup
These are invented prices to explain the rules, not historical trades. Suppose H is 100, L is 98 and the minimum tick is 0.01. A closed bar with a low of 97.90 and a close of 98.40 creates a bullish candidate. A later bar closing at 99.10 within the deadline confirms the midpoint rule, provided price has not first traded below 97.90 or crossed above H. The marker belongs on the later bar, when confirmation became available.
- No rejection: a bar trades below 98 but closes at 97.95. It does not satisfy the inside-range close rule, so there is no candidate.
- Failed candidate: after the 97.90 sweep, price reaches 97.80 before confirmation. Cancel it even if the chart later rallies to 100.
- Expired candidate: the next three bars fail to close above 99. Cancel the candidate rather than waiting indefinitely for a favorable label.
- Failed follow-through: a valid confirmation marker can still be followed by a decline. Record that outcome; do not erase the marker because the expected expansion failed.
How to review a TradingView PO3 indicator
Before installing an accumulation manipulation distribution indicator, read how its author defines each phase. Time-based boxes, volatility thresholds and higher-timeframe candle displays answer different questions. A daily candle shows its open, high, low and close, but does not by itself tell you whether the high or low occurred first. Do not infer an OLHC or OHLC path from candle color.
- Check whether a label appears when the condition is known or is drawn on an earlier candle after later evidence arrives. An earlier visual location is not an earlier usable signal.
- Check the timezone, session boundaries and chart timeframe. America/New_York follows daylight-saving changes; a fixed EST or UTC offset does not represent New York time throughout the year.
- Check that the displayed range stops changing before sweep detection starts, and that failed or expired candidates remain auditable.
- Check whether alerts use the same closed-bar conditions as the visible markers. A script name or screenshot cannot establish that behavior.
From an indicator to a backtestable strategy
An indicator marker is not an order-fill model. Before testing the specification, define entry timing, position size, stop, target, session exit and how simultaneous stop/target touches are handled. For example, an experimental strategy could submit an order after the confirmation close, use the sweep extreme as its stop reference and H or L as its target. It must reject entries whose fill leaves an invalid stop or target. These are additional assumptions to evaluate, not recommendations.
- TradingView strategies simulate orders through a broker emulator. By default, a market order created after a bar closes fills on the next available tick, usually the next bar open in historical testing.
- Include commission and slippage. Report the symbol, timeframe, session data, date range, trade count and drawdown alongside any return metric.
- Keep a later period separate from parameter selection. Trying more sweep buffers or deadlines can fit historical noise; the best in-sample result does not establish an edge.
- This page has no measured win rate, profit factor or verified performance result for the proposed rules.
A coding brief for Pineify
Give Pine Script AI Coding Agent the session specification above and ask for an editable v6 indicator with frozen range lines, candidate states, confirmation markers and cancellation reasons. Request closed-bar signals and no labels placed on earlier bars after confirmation. Review the generated source, run syntax validation and compare each state transition against the worked cases in TradingView. Syntax acceptance alone does not establish correct signals.
- Keep the timezone, range window, sweep buffer and confirmation deadline explicit in the brief.
- Build a strategy version only after defining order and exit behavior. Then use Strategy Optimizer to compare supported input combinations on that strategy.
- Retain the original settings and an untouched evaluation period so parameter changes can be assessed against a baseline.
Pineify next step
Turn your PO3 rules into reviewable code
Use Pine Script AI Coding Agent to draft the indicator from explicit session and sweep rules. Review its signals before creating a strategy for parameter testing.
This page is educational and is not investment advice. The example rules have not been backtested. Trading can result in substantial losses, and historical or simulated results do not guarantee future performance.