Previous Day High Low Key Levels, Reach Stats & Alerts [LunqFX]The previous day high and previous day low — PDH and PDL — are the first two levels most intraday traders mark on the chart, together with the previous week high and low. They are not hand-drawn support and resistance: they are objective facts of what the market did, which is exactly why price keeps reacting to them. This indicator plots those key levels automatically on any symbol and any timeframe, shades the previous day's range, tracks which levels are still untested, and answers the question no other levels tool answers — how often price actually reaches them on the instrument you are trading.
❶ THE LEVELS IT PLOTS
Every level is taken straight from the instrument's own higher-timeframe candles, so nothing needs configuring and it works the same on forex, gold, indices, crypto and stocks.
PDH and PDL — previous day high and low. The core intraday support and resistance levels.
PWH and PWL — previous week high and low. Higher-timeframe context for swing trading.
PMH and PML — previous month high and low, optional, for the bigger picture.
Each level is labelled with its name and exact price, and each timeframe gets its own label column on the right, so levels sitting at almost the same price never overlap.
❷ UNTESTED vs TESTED — WHICH LEVEL STILL MATTERS
This is the difference between a level that will move price and one that already has.
UNTESTED — price has not returned to it in the current period. It is drawn bright, solid and glowing. Untested levels are the strongest magnets, because the orders resting there have not been filled yet.
TESTED ✕ — price has already traded through it. The line turns dashed and dim, and the label gets a ✕. Its pull is spent, so you stop treating it as a fresh level.
The dashboard also names the NEAREST MAGNET: the closest untested level above or below price, which is the most likely place price travels to next.
❸ REACH STATS — WHAT MAKES THIS DIFFERENT
Most key-level indicators simply draw lines and stop there. This one measures how your symbol actually behaves, over the last 100 completed days:
PDH reached — the share of days on which price traded all the way up to the previous day's high.
PDL reached — the same for the previous day's low.
Break rate — of the days that did reach the level, how often price closed through it instead of rejecting from it.
That turns a line into a decision. If the previous day high is reached on 68% of days but broken on only 27% of them, a rejection is far more likely than a breakout — so you plan a fade, not a chase. On another symbol the numbers flip, and so does the plan.
❹ HOW TO TRADE IT
1 — Read the DAY RANGE state. INSIDE RANGE means balance and rotation: fade the edges back toward the middle. EXPANSION means price has left yesterday's range and the day is trending: trade continuation, not reversals.
2 — Pick the target. The NEAREST MAGNET is the closest untested level — use it as the objective for a trade you are already in.
3 — Check the stats before you commit. High reach rate with a low break rate favours fading the level; a high break rate favours trading the breakout through it.
4 — Trade the reaction. Wait for price to arrive at an untested PDH, PDL, PWH or PWL, then enter on the rejection or on the break, using the level itself as your invalidation.
5 — Look for confluence. Weekly and monthly levels outrank daily ones, and when a daily level sits right on top of a weekly level, that is the strongest zone on the chart.
❺ HOW IT WORKS
Each level is read from the previous completed higher-timeframe candle, using the offset pattern that keeps higher-timeframe data fixed, so a level never changes after it is drawn. A level is flagged tested the moment price trades through it, and resets when the new period begins. The reach statistics are calculated only from completed daily candles: the share of days whose high reached the prior day's high, whose low reached the prior day's low, and — as a conditional rate — how many of those days closed beyond the level. Nothing repaints and nothing looks into the future.
SETTINGS — turn day, week and month levels on or off, hide tested levels, shade the previous day and week range with adjustable transparency, control level width, right extension and line thickness per timeframe, switch the custom candles off, and place the dashboard strip where you want it.
ALERTS — previous day high reached, previous day low reached. Both fire on closed bars only.
This indicator is an educational market-analysis tool, not financial advice. The reach statistics describe past behaviour on the current symbol and do not guarantee future results. Always confirm with your own analysis and manage your risk.
Penunjuk

Penunjuk

Penunjuk

MTF Wick DetectorMTF Wick Detector
Spot rejection wicks from higher timeframes without ever leaving your chart.
MTF Wick Detector scans the 15m, 30m, 1h, 2h and 4h candles in real time and marks every significant wick directly on your current chart — no matter what timeframe you are trading on. Instead of flipping between five charts to check whether the 4h just printed a rejection, you see it the moment it happens, exactly where it happened.
WHAT IT DOES
• Monitors five higher timeframes at once: 15m, 30m, 1h, 2h, 4h — each one can be toggled on/off and has its own color.
• When a higher-timeframe candle closes with a significant wick, a small triangle is drawn on the exact chart bar that printed the extreme, at the exact price of the wick tip — above the bar for upper wicks (selling rejection), below it for lower wicks (buying rejection).
• Works only on closed HTF candles → no repainting. What you see in a backtest is what you would have seen live.
• Optional summary table (top right) shows the latest wick readings for every active timeframe.
• Built-in alert: get notified when a significant wick prints on any active timeframe.
HOW A "SIGNIFICANT WICK" IS DEFINED
Upper wick = high − max(open, close). Lower wick = min(open, close) − low.
A wick is marked only if it passes BOTH filters (set either to 0 to disable it):
1. Percent of range — the wick must be at least X% of the candle's total high-to-low range (default 50%). This captures the proportion: the candle visually looks like a rejection.
2. Minimum height in pipettes — the wick must be at least X ticks tall (default 50; on 5-digit FX quotes 1 pipette = 0.00001, so 50 pipettes = 5 pips). This removes the noise: tiny doji candles that are "50% wick" but only a couple of pips tall are ignored.
The combination is the point: a proportional filter alone flags meaningless micro-candles, an absolute filter alone flags big candles with irrelevant proportions. Together they isolate candles that actually show rejection.
WHY WICKS MATTER
A large wick on a higher timeframe means price traveled somewhere and was aggressively pushed back before the candle closed — a footprint of absorption or rejection at that level. These levels frequently act as support/resistance and as origin points for reversals. Seeing them appear live on your execution timeframe lets you react while the information is still fresh.
HOW TO USE IT
• Best used on chart timeframes at or below 15m (scalping/intraday execution charts). The chart timeframe should always be lower than or equal to the timeframes you monitor.
• Color code: orange = 15m, yellow = 30m, aqua = 1h, purple = 2h, green = 4h (all customizable).
• Stacked triangles of different colors on the same bar = multiple timeframes rejecting the same level — the strongest signal this tool produces.
• Tune the two filters to your instrument: the pipette threshold uses the symbol's own tick size, so it adapts automatically from FX to futures, but the right number differs per market.
LIMITATIONS (read before using)
• Signals appear only after the HTF candle closes — by design (no repaint), which means the marker arrives at candle close, not at the wick's live formation.
• A wick is context, not a trade signal. This tool tells you WHERE rejection happened; it does not tell you whether to fade it or follow it.
• On chart timeframes above 15m, lower-timeframe requests return sampled data — keep the chart TF at or below the lowest monitored TF.
Feedback and feature requests are welcome in the comments. Penunjuk

Edo Reaction ZonesEdo Reaction Zones — Five Moving Averages Wrapped in ATR-Adaptive Reaction Zones, with Structure Reading, Active Zone and Bounce-or-Break Tracking
On a real chart, price almost never touches a moving average at an exact point and bounces with clockwork precision. It approaches the average, pierces it a little, hovers around it for a few candles, and eventually bounces or breaks. The average therefore behaves like a region — a reaction zone — not a line. Edo Reaction Zones draws that region as it really is: it wraps five moving averages in bands whose width breathes with volatility, marking the real range where price is likely to react.
From that idea, the indicator adds three coordinated reads: a score of the moving-average structure — how they are stacked and where they point — the real-time identification of the active zone — the average nearest to price and its role as support or resistance — and a follow-up of what happens when price enters that zone, distinguishing a bounce from a break. Everything is summarized in a compact panel on the chart, without repainting and validated on closed bars. It brings together classic, public-domain technical-analysis concepts — the exponential moving average, the average true range (ATR) and moving-average crosses — into a single trend-and-reaction reading tool.
THE FIVE MOVING AVERAGES
The skeleton is five exponential moving averages, all configurable, chosen to span from the immediate trend to the underlying trend. By default: EMA 9 (lime, thin line) tracks price closely and describes the immediate trend; EMA 20 (yellow) marks the short term; EMA 50 (aqua, heavier) the medium term; EMA 100 (orange) the medium-to-long term; and EMA 200 (red, thick line) the underlying trend. Line thickness grows with length, so the slow average stands out as the main reference while the fast ones keep the chart uncluttered. The distance between the averages is itself a read of trend strength: widely separated, ordered averages mean a powerful trend; averages bunched together and tangled mean a directionless market.
ATR-ADAPTIVE REACTION ZONES
Each average is wrapped in a reaction band whose half-width is the ATR multiplied by a factor (Zone width, 0.6 by default): the band extends that distance above and below the average. Because ATR measures volatility, the band automatically widens in turbulent stretches and narrows in calm ones. This is the key difference versus a fixed-width envelope — which would be too tight in volatile markets and too wide in quiet ones: here the zone breathes with the market and always represents a realistic reaction range. Each band is tinted according to price position relative to its average: green when price is above — the zone acts as potential support, the region where price could find footing if it pulls back — and red when price is below — the zone acts as potential resistance, the region price must clear to reclaim the average. Transparency is configurable (85 by default): a high value keeps the bands soft so they do not hide the candles. With the five bands overlaid, the whole forms a kind of "river" whose colour and shape tell the health of the trend at a glance.
STRUCTURE: THE MOVING-AVERAGE STACK
The way the five averages are stacked summarizes the health of the trend. The indicator turns it into a score (Alignment) by evaluating each pair of adjacent averages: if the faster is above the slower, it adds; if below, it subtracts. With four pairs (9 over 20, 20 over 50, 50 over 100 and 100 over 200), the score runs from −4 to +4. At +3 or +4 the structure is a Bull Stack: the fast averages dominate the slow ones, a healthy and aligned uptrend. Between −2 and +2 it is Mixed: the averages cross, a market in transition, range or doubtful trend. At −3 or −4 it is a Bear Stack: the slow averages dominate the fast ones, a healthy downtrend. A +4 means all five averages are perfectly ordered from fast to slow top to bottom — the textbook image of a strong uptrend — and a −4 is its bearish mirror. Intermediate values (Mixed) warn that the structure is tangled and caution is warranted: it is the typical state of ranges and turns. The panel shows both the state and the exact signed number, coloured green, grey or red.
ACTIVE ZONE: NEAREST AVERAGE, ROLE AND DISTANCE
Of the five averages, at any moment one is the most relevant to price: the nearest. That is the active zone, the average price is about to test or is separating from. The indicator identifies it by computing the distance from price to each average and keeping the smallest, then determines its role from price position: Support when price is above the active average — the zone sits below and acts as potential footing — and Resistance when price is below — the zone sits above and acts as a potential ceiling. The distance from price to the active average is expressed in ATR multiples (Dist ATR), which makes it comparable across instruments and moments regardless of nominal price: 0.10× means price is practically glued to the average, inside the zone and about to react, while 1.50× means price is very extended, far from any reference and likely to seek the average again.
REACTION TRACKING
The heart of the indicator is what happens when price enters the active average's zone. Instead of assuming a bounce, it follows it: it records the moment of contact — when the candle's range touches the active average's band, noting which average was touched and in which role — and watches the following candles within a confirmation window (5 candles by default) until it resolves in one of four ways. Bounce up: the average was acting as support and price moves away upward by at least Move to confirm × ATR (0.5× by default) above the average; support has held. Bounce down: the average was acting as resistance and price moves away downward by that same distance; resistance has stopped price. Break down: the average was support but price breaks below the zone; support has given way. Break up: the average was resistance but price breaks above; resistance has fallen. If neither the move-away nor the break occurs within the window, the follow-up closes without a resolution. The result appears in the panel, in the Last react. row, with the type of reaction and the average where it happened — for example "Bounce up (EMA 9)" — coloured green if bullish and red if bearish. The distinction is the operative key: a bounce confirms the average still defends the trend; a break warns the reference has given way and the structure may be changing. The indicator does not guess which it will be; it waits for price to decide on the closed bar.
CROSS MARKERS (SECONDARY)
As a secondary, optional layer, the indicator marks the crosses between averages, a classic technical-analysis event and a visual complement that is not the protagonist — the weight of the read rests on the zones and the structure. A fast cross up (the fast average crosses above the next, 9 over 20) draws a small green x below the candle; a fast cross down, a red x above the candle. The classic golden cross (the intermediate average crosses above the slow one, 50 over 200) appears as a yellow diamond, and the death cross (50 below 200) as a maroon diamond. The x-crosses warn of early turns in the immediate trend; the diamonds are classic signals of an underlying trend change. This whole layer can be switched off entirely with a single toggle for a clean read focused on the zones.
INFORMATION PANEL
The panel condenses, in a compact table under a header carrying the indicator's name, everything worth knowing at a glance, and it is drawn only on the last bar to keep the calculation light. It shows five rows: Structure (the stack state: Bull Stack, Mixed or Bear Stack), Alignment (the exact score from −4 to +4 with sign), Active zone (the nearest average and its role, e.g. "EMA 50 - Resistance"), Dist (ATR) (the distance from price to the active average in ATR multiples) and Last react. (the last recorded reaction, bounce or break, and the average where it happened). Each row is coloured by its state. The panel sits in any of the four chart corners (Top Right by default), offers two themes (Dark and Light) to blend with the background, and can be hidden entirely.
NO REPAINTING
All calculation runs on the current chart timeframe, with no higher-timeframe functions, which keeps the indicator light. Every confirmation — a bounce, a break, a structure change — is fixed on the candle close: the reaction tracking does not guess the future, it waits for price to move far enough from the average to declare a bounce, or to break the zone to declare a break. In exchange for not getting ahead of itself, it does not mislead.
CONFIGURATION
The inputs are grouped by functional block. EMAs sets the five lengths (9 / 20 / 50 / 100 / 200 by default). Reaction Zones controls band visibility, the ATR length (14), the width factor (Zone width, 0.6) and the transparency (85). Reaction Tracking defines the confirmation window (5 candles) and the bounce-confirmation distance (Move to confirm, 0.5× ATR). Cross Markers turns the x-crosses and diamonds on or off. Dashboard controls panel visibility, position and theme. The defaults are calibrated to work without adjustment on stocks, crypto, forex, indices and futures, on any timeframe. The parameter most worth exploring is Zone width (ATR x): raising it produces wider, more tolerant zones — fewer breaks, more bounces — and lowering it, tighter, more demanding zones.
ALERTS
Three predefined alerts are configured from TradingView's alert menu by selecting the indicator as the condition. Reaction zone entered fires when price enters the active average's reaction zone — it has just touched the band and the follow-up opens: the earliest signal, but the least confirmed, since it is not yet known whether a bounce or a break will follow. Reaction confirmed waits for the bounce to materialize — price has moved away from the average by the required distance in the direction of the role — and is more reliable at the cost of arriving later. Stack structure change flags the stack's structure turns (for example, from Mixed to Bull Stack), useful to detect trend-regime shifts. All fire on bar close, consistent with the indicator's anti-repaint validation.
HOW TO READ IT
Trade with the structure: in a Bull Stack, looking for footing on the green dynamic-support bands has the wind at your back; in a Bear Stack, looking for rejections on the red bands; when the structure is Mixed, the prudent move is to cut exposure or wait, because the market has no clear direction. Use the active zone as an immediate reference: a support zone with price glued to it (low Dist ATR) is a typical setting for a possible bounce with the trend, while a resistance zone with price very extended warns that price is far from any reference. Wait for the reaction to resolve: contact with a zone is not, by itself, a signal — waiting for the follow-up to settle, Bounce or Break, reduces premature decisions. And read the band width as a volatility gauge: wide bands mean a volatile market and warrant more room; narrow bands mean calm and often the prelude to a move. A reaction gains reliability when it coincides with relevant levels on the instrument itself, a demand zone or a higher-horizon support: the indicator provides the trend-and-reaction context; confluence with the broader market structure turns the read into an opportunity.
OPEN SOURCE
Edo Reaction Zones is published as a free open source indicator. The full Pine Script is publicly accessible on TradingView for study, adaptation and integration into any workflow. Part of the Edolab Markets free tools ecosystem, all publicly available on TradingView.
This indicator is a technical analysis tool for educational and informational purposes only. It does not generate automatic buy or sell signals and should not be considered financial advice. Trading financial markets involves significant risk of capital loss. Past performance does not guarantee future results. Always use proper risk management. Penunjuk

Year of Jubilee - Chart SetupA free, visuals-only indicator built for gold (XAUUSD) day trading, though it works on any symbol.
This does not generate entries, alerts, or trade signals. It exists so every trader's chart shows the same reference points: trend direction, fair value gaps, supply and demand, market structure, and the New York opening range.
What it draws:
- Fast/slow EMA trend lines with a trend cloud between them
- Fair Value Gap zones (bullish and bearish)
- Supply and demand zones based on swing structure
- Market structure breaks (BOS) and structure reversals (MSB), with HH/HL/LH/LL swing labels
- 9:30-9:45 AM ET Opening Range box
- Adjustable AM session background highlight
- All times run on ET (New York) regardless of your chart's timezone
Every element has its own on/off toggle and color settings, so you can turn off what you don't need. Built for beginners who want a clean, consistent chart before they start reading price action on their own.
No repainting logic, no hidden signals, no proprietary strategy. What you see is what it does. Penunjuk

Penunjuk

ChartHawk - Key Levels + 8EMA Bias [Free]Premarket and prior-day levels, drawn clean, with a daily 8EMA bias tag.
Every session opens with the same four lines that matter: the premarket high and low, and yesterday's high and low. This plots all four automatically and keeps them on your chart, so you are not redrawing levels every morning.
How to read it:
- Green marks a high (PMH / PDH). Red marks a low (PML / PDL).
- Dotted lines are premarket. Solid lines are prior day.
Colour tells you which side of the range you are looking at; line style tells you which session it came from.
The tag in the corner reads LONG or SHORT off the daily 8EMA - a quick top-down read on whether the name is trending with you or against you before you take an intraday setup.
Premarket levels are pulled from the extended session, so they populate whether or not you have extended hours turned on for your chart. Prior-day levels use confirmed daily data and do not repaint.
Alerts - five built in, all confirmed-close only, so a wick through a level cannot trigger them:
- Closed above premarket high
- Closed below premarket low
- Closed above prior-day high
- Closed below prior-day low
- Daily 8EMA bias flipped
Settings: session window, timezone, EMA length, tag size, colours, and price labels are all editable.
Educational tool only. Not financial advice, no signals, no trade recommendations.
Built by a trader who runs these live. Full multi-ticker screener and entry taggers at charthawkhq.com Penunjuk

Penunjuk

Penunjuk

Sniper FVGThis Pine Script indicator, Sniper FVG, is designed to highlight Fair Value Gaps (FVGs) within a defined trading session based on India Standard Time (IST). The user specifies a session window (default 19:00–01:40 IST), and the script automatically shades the chart background outside this range to keep focus on active trading hours. It also draws dashed vertical lines at session start and end for clear visual boundaries.
To filter signals, the script references higher‑timeframe EMA values (15m, 30m, 1h). At the first candle of each session, a bias is set: bullish if price is below all EMAs, bearish if price is above all EMAs, and neutral otherwise. Only FVGs aligned with this bias are drawn. The detection logic checks for gaps between the high of candle 1 and the low of candle 3 (bullish) or the low of candle 1 and the high of candle 3 (bearish). Boxes are extended a few bars forward, with customizable transparency, color, and minimum size percentage to avoid insignificant gaps.
Overall, the script combines session management, bias filtering, and gap visualization to help traders focus on meaningful FVG setups during their chosen trading hours. Penunjuk

Intraday Liquidity Sessions [dpTrades]Intraday Liquidity Sessions
WHAT IT IS
An intraday view of session liquidity. It draws the New York, London and Tokyo sessions, and
adds an analytics layer that plain session tools do not have: it marks when a session runs the
liquidity left by its own previous instance, and reports whether each session is expanding or
compressing relative to its own recent behaviour. "Liquidity" here means the session highs and
lows that resting orders sit against, not a volume heatmap.
WHY THESE COMPONENTS BELONG TOGETHER
Session boxes on their own only tell you when a session happened. The information a trader
actually needs is what that session is doing relative to what the same session normally does,
and whether it has taken out the level the previous one left behind. Those two readings are
only meaningful in the context of the session they belong to, which is why the drawing layer
and the analytics layer are one script rather than two: the ranges, the averages and the sweep
detection are all computed from the same per-session state.
METHOD
Each session is tracked independently, with its own state:
- Range tracking: while a session is open, the script keeps its running high and low, and the
price at which the session opened.
- Previous-instance memory: when a session closes, its high and low are stored as the reference
for the next instance of that same session.
- Rolling average: the range of each completed session is folded into a rolling average over a
configurable number of past instances (default 20). The current session's range against that
average is what classifies it as expanding or compressing. The comparison is always a session
against itself, never against another, since Tokyo and New York are not comparable in size.
- Directional bias: measured as the current close against the session's own opening price.
- Liquidity sweep: while a session is open, price is checked against the high and the low left
by the previous instance of that same session. When it trades through one of them, the event
is marked on the chart and flagged in the table.
Session hours are timezone-aware, so the windows stay correct regardless of the exchange
timezone of the charted symbol.
HOW TO USE IT
Read the table first. A session opening expanded versus its own average usually means
participation is above normal; a compressed one often precedes a range. The bias column shows
which way that session has leaned since its open. The sweep marker tells you the previous
session's liquidity has already been taken, which is context rather than a signal.
Sessions, hours, colours and drawing style are configurable. The default set is New York,
London and Tokyo in New York time, each shown in its own colour so they are easy to tell apart.
LIMITATIONS
- Intraday timeframes only. On daily and above there are no session windows to resolve.
- While a session is still open its range, bias and stats update in real time as price moves.
They are final only once the session closes.
- The rolling average needs several completed sessions before expanding or compressing means
anything. Early in the chart history it will be unreliable.
- A liquidity sweep describes what already happened, not a prediction. It marks that a level was
taken, nothing more.
- This is a context tool. It produces no entries, no exits and no buy or sell signals.
Educational content only. Not financial advice. Trade at your own risk. Penunjuk

Penunjuk

Linear GANN 2.0 - Adib NooraniLinear GANN 2.0 is a clean, visually unobtrusive indicator designed to automatically plot key mathematical price levels on your chart. Instead of manually drawing horizontal lines every day, this script instantly applies a massive array of predefined Gann-based numerical levels, saving you time and keeping your analysis consistent.
The Math Behind the Indicator
TradingView requires transparency in how indicators are calculated. This script does not use moving averages or volume; instead, it plots a hardcoded sequence of mathematical values inspired by Gann theory and the Square of Nine.
If you look at the underlying array, the price levels follow a distinct geometric sequence based on squares. The pattern alternates between perfect odd squares and even squares plus one:
1
5 (which is 2² + 1)
9 (which is 3²)
17 (which is 4² + 1)
25 (which is 5²)
37 (which is 6² + 1)
...and so on, scaling all the way up to accommodate high-value assets like Bitcoin or major indices.
How to Use It in Your Trading
Because these numbers act as psychological and mathematical pivot points, traders can use these lines as traditional Support and Resistance zones.
1. Trend Continuations - If the price breaks cleanly above a Gann line and retests it, that level often flips from resistance to support. The next line up becomes your logical take-profit target.
2. Reversals - Watch for exhaustion or liquidity sweeps around these exact levels. If price wicks heavily at one of these lines, it can signal a potential reversal.
Key Features
Dynamic Labels - To prevent chart clutter, the price labels are coded to constantly push to the far right edge of your screen, mimicking the native price scale.
Infinite Lines - The lines use the `extend.both` property, meaning no matter how far back or forward you scroll, your levels are always there.
Customization - Fully customizable line thickness and colors to match both dark and light themes, with a toggle to turn labels on or off.
Always use candlestick patterns or consolidation breakouts around the GANN levels to enter with good Risk : Reward Penunjuk

Kurdistani BITCOIN POWER LAWKurdistani Bitcoin Power Law
The Kurdistani Bitcoin Power Law is a long-term macro analysis tool for Bitcoin ( CRYPTOCAP:BTC $), built entirely in **Pine Script v6**. It models Bitcoin's historical growth trajectory over time using a log-log power-law relationship, treating time not as a linear metric, but as an exponential driver of value.
This script maps out Bitcoin's structural "Fair Value" alongside its cyclical boundaries, providing long-term investors with clear macroeconomic floors, ceilings, accumulation zones, and historical touch-points.
---
🔬 The Math Behind the Model
Unlike standard exponential models that eventually experience unrealistic vertical explosions, a power law models a diminishing growth rate over time.
The indicator calculates elapsed days since Bitcoin's Genesis Block (January 3, 2009) and uses the following regression formula to establish the center fair value band:
$$P(t) = 8.31 \times 10^{-17} \times t^{5.48}$$
Where $t$ represents the total number of days elapsed since the genesis block. This model boasts an incredibly high historical correlation coefficient ($R^2 = 0.9976$).
---
🎨 Visual Breakdown & Color Map
The chart overlays a structured channel designed for high visual clarity, utilizing a custom dark theme interface:
Center Line (Pure Red): The fundamental **Fair Value** anchor of the Power Law model.
Upper Band (Pure Yellow): Represents a **+10% deviation** above the fair value corridor, acting as a historical resistance zone during expansion phases.
Lower Band (Pure Green): Represents a **-10% deviation** below the fair value corridor, acting as the structural macro support floor.
Holographic Line (Glow White Dotted): Projects the model's current fair value coordinate smoothly across the active price bars.
Glow Shading: Dynamic, semi-transparent background color fills between the bands to visually isolate overvalued or undervalued territories easily.
---
⚙️ Configurable Inputs & Features
The script features a highly customizable input menu divided into functional groups:
🌐 Language Localizer: Fully multi-lingual interface supporting **English**, **Persian (فارسی)**, and **Kurdish (کوردی)** across the HUD table layout.
🌀 Toggle Visibility: Independent control switches to show or hide the Main Power Law line, Upper Band, Lower Band, Holographic Dotted Line, and Channel Glow Fills.
🔮 Custom Macro Targets: Allows you to input custom price expectations for key future cyclical milestones (**2026E**, **2030E**, and **2035E**) directly into the on-screen display panel.
🟢 Dynamic Buy Zone Percentage: Define custom deep-value accumulation triggers (Default is **18% below the lower band**).
📜 Historical Touch Tracker: Automates historical data tracking by searching through historical bars to identify and display exactly when Bitcoin hit its ultimate cycle floors.
---
📈 How to Use the Indicator for Trading & Investment
1. Identifying the Macro Buy Zone
When Bitcoin’s market price drops below the defined lower band offset percentage, the chart background dynamically shifts to a soft green shade. Historically, these moments represent generational accumulation phases (e.g., the absolute bottoms of macro bear markets).
2. Fair Value Tracking (The Mean Reversion Anchor)
The center red line acts as a strong gravity anchor. During bull market bubbles, price overextends aggressively above it; during capitulations, it snaps below it. Long-term positions can be assessed relative to whether the current price is trading at a premium or a discount to this red value line.
3. The On-Screen HUD Table
Positioned cleanly in the top-right corner of your screen, the Head-Up Display (HUD) table keeps you constantly updated on:
* The raw underlying power-law formula.
* The live asset **Fair Value** adjusted to the current day.
* Your personalized macro target projections for upcoming years.
* An integrated ledger highlighting exactly which **Cycle Touch Years** marked historical bottoms alongside their precise historical dollar-value floors.
4. Automated Alert System
The script comes equipped with an integrated alert condition trigger. You can set a native TradingView server alert for the event `🟢 Bitcoin BUY ZONE` to notify your desktop or mobile device the exact moment Bitcoin drops into the structural deep-value buying zone.
---
💻 Source Code Overview
The code leverages the latest **Pine Script v6** performance upgrades, introducing modern array mechanics to track cycle anomalies efficiently without slowing down chart rendering engines, capping maximum visual line, label, and box memory footprints safely at 500 units each. Penunjuk

S&R + Trends | Polytrends Method (gracefultrading)SUPPORT & RESISTANCE + TRENDS | POLYTRENDS METHOD
Maps market structure automatically: every trend is detected, classified, and turned into support/resistance levels that know their own state. Built around the polytrends method of reading structure through trends and progression. This is my own independent, open-source interpretation of the framework, coded from scratch based on publicly available material. For educational purposes only — not financial advice.
TRENDS AND CONTAINMENT
Every pivot is compared against the previous pivot in the same direction. A swing that pushes past the prior trend is a valid continuation and draws in the trend colour. A swing that fails to exceed it — a lower high on the way up and or a lower low on the way down — is a containment trend, drawn in its own colour and style.
The current in-progress leg draws dashed, so you always see the swing being built. Pivot detection reacts to wick pullbacks, close-breaks of the prior candle, structural breaks, and same-bar reversals — not fixed-length lookbacks.
LEVELS WITH STATE
Each trend leaves a level at the candle body, committed only after the next opposite pivot confirms it. Every label shows the level's current state at a glance:
G — gained
SG — support gained
L — lost
RL — resistance lost
State updates bar by bar as price closes through or reclaims a level. An optional break/test offset (in ticks or percent) means a level only counts as gained, lost, or tested once price clears it by your buffer.
PAIRED STRUCTURE
Levels come from trends and draws in colour-matched pairs from a 12-colour set, each pair originating from the same piece of structure.
Tested levels draw in a different line style from untested ones and can be hidden entirely; when hidden, you choose whether each pair still shows its tested partner so pairs stay intact. At high relevance settings, clustered tested levels within a tick distance thin down to the strongest one.
POLYBOUNDS
Experimental.
A corner readout that reduces the chart to the two prices that matter:
▲ hold above — the key gained level below price. Bulls are in control while price holds above it.
▼ hold below — the key lost level above price. Bears are in control while price holds below it.
Each line is coloured to match its pair on the chart, and the box only quotes levels that are actually drawn. A Trend Day row (1H and below) reads whether the session is shaping up bullish, bearish, or rangebound based on where price sits against the bounds.
SETTINGS
Levels above/below counts. A relevance dial controlling how deep into history levels are pulled from (50 bars to full history). Independent colours, styles, and widths for trends, containment trends, and levels. Configurable label background and twelve pair colours. A right-offset so all level rays align cleanly ahead of price.
HOW TO READ IT
The market is always in progression — always attempting either a new high or a new low. Every swing this indicator draws is one attempt in that sequence, and every level is the footprint it leaves behind.
Progression rule: in an uptrend, price should not lose the previous swing low if it intends to go higher — losing it shifts probability toward the opposite objective. Mirror logic in a downtrend. Watch the level states: a support flipping from SG to L is that shift happening in real time.
Containment is the early warning. A containment trend (lower high in an uptrend, higher low in a downtrend) means the progression is failing before any level has broken. Trend weakness is the warning; level failure is the confirmation.
Levels mark accepted value. They're built from candle bodies, not wicks — the goal is to see where the market accepted or rejected value, which is why the break/test offset exists to filter wick noise.
Untested levels react first. Fresh levels are the highest-priority reaction zones; tested levels remain valid structure and become targets when price is nearer to them. The pair colours show you which structure each level came from.
Timeframes nest. Higher-timeframe levels are destinations; lower-timeframe levels are the navigation between them. Significant trends typically start from higher-timeframe pivots — the biggest swings on your chart usually trace back to them. RTH-formed levels tend to carry the most weight.
Works on any symbol and timeframe; the Trend Day readout is built for intraday. This is a tool for reading structure, not a signal service — nothing replaces risk management. Penunjuk

Advanced Support and Resistance with Reversal [AlphaPine]Advanced Support and Resistance with Reversal | AlphaPine
I built this indicator for a simple reason: a breakout line on its own does not tell me enough. I also want to know whether price comes back, holds the level from the other side, and later loses it again.
The script starts with confirmed swing highs and lows. Those become resistance and support. It then follows each level through three possible events: breakout, retest, and failure. Nothing here predicts the next move. It is a way to keep market structure organised without redrawing the same levels by hand.
The image below shows the full level lifecycle in one view, including the symbols that appear at each stage:
How a level is created
A resistance level comes from a confirmed pivot high. A support level comes from a confirmed pivot low. If zones are enabled, the zone uses the wick range of the pivot candle rather than an arbitrary fixed width.
Pivot confirmation takes time. With Pivot Length set to 10, for example, the script needs ten bars on the right side of the pivot before the level exists. This delay is intentional.
Pivot Length controls how selective the swing detection is. A larger value usually gives fewer levels and confirms them later.
Lookback Period sets how long a level remains in the script's working history.
Maximum Levels per Type limits stored resistance and support records so the chart does not keep growing indefinitely.
Wick Dominance Filter keeps only pivot candles whose rejection wick is larger than the body and opposite wick.
Merge Nearby Active Levels removes clutter by skipping a new pivot when an active level of the same type is already nearby. Broken levels do not block a fresh one.
The merge distance uses ATR-14, so it adjusts to the instrument instead of relying on one fixed price interval.
Breakouts
The default breakout mode is Close . Resistance must close above its boundary, while support must close below it. This avoids counting every small wick through a level.
Wick mode reacts earlier. It triggers when the high or low crosses the boundary during the live candle. The recorded extreme cannot retract, but price can still close back inside the level, so Wick mode will naturally include more intrabar fakeouts.
Breakout Buffer adds an optional ATR-based distance beyond the level. Leave it at zero for the exact boundary, or raise it if very small breaks are not useful for your chart.
By default:
A resistance breakout prints an upward blue triangle below the candle.
A support breakout prints a downward orange triangle above the candle.
The marker colours are fully adjustable.
Retests and role reversals
After resistance breaks, the script waits to see whether price can retest it as support. After support breaks, it watches for the same level to act as resistance.
RS means old resistance has been confirmed as new support.
SR means old support has been confirmed as new resistance.
Reversal Confirmation controls what counts as a retest:
Close (default) requires the retest candle to touch the original zone and close back beyond the whole zone on the new-role side.
Touch accepts any later overlap with the zone. It is more sensitive and less strict.
Once confirmed, the new role stays fixed. An RS level remains tracked as support; it does not turn red merely because the latest candle happens to sit below it.
When a flip fails
A flipped level is removed when a confirmed candle closes through the far side of its zone. In other words, RS support fails below the zone and SR resistance fails above it.
If Show Reversal Failures is enabled, an ✕ marks the failure candle. The flipped line stops there, but the cross stays on the chart as a record of where the level died. That is why a failure cross can appear without a continuing line.
Breakout triangles and failure crosses use the original pivot as their Lookback anchor. This keeps their expiry on the same structural clock as the level they came from instead of giving every marker a new lifetime from its event candle.
Reading the chart
R1 is the nearest active resistance above price, followed by R2, R3, and so on.
S1 is the nearest active support below price, followed by S2, S3, and so on.
RS marks a confirmed resistance-to-support flip.
SR marks a confirmed support-to-resistance flip.
Triangles mark breakouts. Crosses mark failed flips.
A breakout marker is an event, not an entry instruction. I find the retest more useful than the first break, but how it is traded still depends on trend, execution, and risk rules outside this indicator.
Lines, zones, and historical placement
Historical Level Start decides where an original level begins:
Confirmation (default) starts it on the bar where the pivot became known in real time.
Pivot extends it back to the swing candle. This is useful for visual context, but the level was not available on that earlier candle.
Display as Zones replaces the single-price lines with the original pivot-wick range. If that level flips, the same price range is preserved; the zone is not moved to the opposite side of the price.
Colours
The Colors group separates colours by purpose, so changing a label does not force the matching line to use the same colour.
Resistance and support lines/zones.
RS and SR lines/zones.
Resistance, support, RS, and SR price labels.
Resistance and support breakout triangles.
Support and resistance failure crosses.
Zone fills and borders use transparent versions of the selected line colour so candles remain visible underneath.
Alerts
Seven alert conditions are included:
Resistance Breakout
Support Breakout
Resistance to Support Flip
Support to Resistance Flip
Flipped Support Failed
Flipped Resistance Failed
Any S/R Event
The combined alert is useful when one alert should cover every structural event. Separate conditions are available when different actions are needed for breaks, flips, or failures.
A sensible starting setup
The defaults use Close confirmation for both breakouts and retests. Start there if you prefer signals that wait for the candle to finish. Wick breakout and Touch retest are available when earlier, more sensitive reactions are more important.
If the chart feels crowded, try increasing Pivot Length, increasing Merge Distance, enabling the Wick Dominance Filter, or reducing Maximum Levels per Type. Settings should be adjusted for the instrument and timeframe rather than treated as universal values.
Important limitations
Confirmed pivots always arrive late by Pivot Length bars. That is how pivot confirmation works, not a hidden predictive signal.
Pivot historical placement back-draws a confirmed level for context. Use Confirmation placement when real-time availability matters.
Wick mode can mark a breakout that later closes back inside the level.
The current-bar drawings rebuild while the candle updates.
The script uses chart data only. It does not request higher-timeframe data or use lookahead.
It does not place orders, calculate position size, or guarantee that a level will hold.
Use it as a structure tool, then apply your own trade plan and risk management.
Penunjuk

Penunjuk

Previous Day Pivot Path - Intraday Support ResistancePrevious Day Pivot Path - Intraday Support Resistance
Overview
Previous Day Pivot Path is an intraday reference-level study built from the confirmed OHLC values of the previous selected trading day. It plots the current day's central pivot and support/resistance levels, then records the first chart bar in which each level is reached and assigns a compact arrival rank.
The script is intended for traders and researchers who want to identify the current day's mathematically derived reference levels without converting them into buy/sell instructions. It does not predict whether a level will hold or break, and it does not present win-rate, profitability, or performance claims.
What makes this implementation different
1. First-arrival path instead of static lines only
Each tracked level begins the day as pending. When the selected price source first reaches it, the script records an arrival rank and can place a numbered badge at the corresponding time.
If more than one previously unreached level is reached in the same chart bar, those levels receive the same rank. OHLC bars do not reveal the true tick-by-tick order inside that bar, so the script deliberately avoids inventing an intrabar sequence that the available data cannot prove.
2. Reached-level fading and next-level focus
Reached levels can fade automatically. The nearest unreached level can receive stronger line emphasis and an optional translucent focus halo. After all displayed levels have been reached, the focus can fall back to the nearest level or remain inactive.
This visual hierarchy separates completed parts of the day's path from levels that remain unvisited, while preserving the exact horizontal prices.
3. Confirmed previous-day data
All daily formula inputs are requested from the last completed daily bar. Open time, close time, open, high, low, and close are all offset by one daily bar before they are used. The current developing daily high, low, or close is never used in the pivot formulas.
The script also checks that the completed daily session is chronologically aligned with the selected intraday source day before it initializes new levels or arrival events.
4. Source-session freshness protection
Three OHLC source modes are available:
- Automatic: uses chart-context OHLC on standard candles and standard-symbol OHLC on non-standard charts.
- Chart context: preserves the chart's ticker modifiers, session, adjustment, and chart-type context.
- Standard symbol: removes non-standard ticker modifiers and uses standard market OHLC.
When the selected standard source has no bar aligned with the current chart timestamp, the script does not reuse an old forward-filled OHLC value. Arrival events pause, and existing drawings remain fixed at the last valid source bar until aligned data becomes available again.
5. Session-aware day handling
The script uses a trading-day key suitable for markets whose sessions cross midnight. This prevents a simple calendar-date change from being treated as the session boundary on many overnight Forex and futures markets.
If the first loaded dataset begins after the selected source day's opening bar, the earlier first-arrival sequence is unknowable. For that one partial day, arrival tracking and open-dependent features are conservatively bypassed rather than reconstructed from incomplete history.
6. Time-anchored persistent drawings
Persistent lines, boxes, right-edge labels, and arrival badges use UNIX-time coordinates. This avoids relying on very old bar_index coordinates on dense second charts and keeps historical drawings independent of the number of bars elapsed since their creation.
7. Multiple formula families plus an editable research mode
The script includes:
- Traditional
- Classic
- Fibonacci
- Camarilla
- Custom research
The custom mode lets users select the pivot center and edit three previous-range multipliers. The multipliers are sorted from smallest to largest before assignment to R1/S1, R2/S2, and R3/S3.
8. Price-grid and duplicate-level controls
Calculated levels can remain raw, round to the nearest minimum tick, or round outward so resistance is rounded upward and support downward. When rounding produces the same price for multiple logical levels, the script can merge them into one line and one badge with a combined code such as P/R1.
9. Researchable arrival definitions
Users can define a first arrival with:
- Wick range
- Candle body range
- Confirmed close crossing
Optional tolerance can be exact, a number of ticks, or a percentage of the previous-day range. Gap crossings can be counted or ignored. Arrival ranking can follow only displayed levels, the selected depth, or all levels produced by the formula.
10. Deliberate chart hygiene
The default presentation prioritizes P, R1/S1, and then outer levels through width, line style, transparency, and optional reached-level fading. Right-edge labels support automatic text contrast and horizontal lane staggering when prices are close.
Optional context references include:
- Central Pivot Range (CPR)
- Previous-day high and low (PDH/PDL)
- Previous-day close (PDC)
- Current selected-source day open
- Opening bracket between the nearest displayed levels above and below the day open
- Compact session brief
All context elements can be disabled independently.
Formula reference
Let O, H, L, and C be the confirmed previous selected daily bar, and let Range = H - L.
Traditional
P = (H + L + C) / 3
R1 = 2P - L
S1 = 2P - H
R2 = P + Range
S2 = P - Range
R3 = H + 2(P - L)
S3 = L - 2(H - P)
Classic
P = (H + L + C) / 3
R1 = 2P - L
S1 = 2P - H
R2 = P + Range
S2 = P - Range
R3 = P + 2Range
S3 = P - 2Range
Fibonacci
P = (H + L + C) / 3
R1/S1 = P +/- 0.382 x Range
R2/S2 = P +/- 0.618 x Range
R3/S3 = P +/- 1.000 x Range
Camarilla
P = (H + L + C) / 3
R1/S1 = C +/- 1.1 x Range / 12
R2/S2 = C +/- 1.1 x Range / 6
R3/S3 = C +/- 1.1 x Range / 4
Custom research
The center can be HLC3, HLCC4, OHLC4, midpoint, or previous close. Three editable multipliers are applied symmetrically to the previous-day range after being sorted from smallest to largest.
Arrival timing
Confirmed bar
This is the reproducible default. An arrival is recorded only after the chart bar is confirmed.
Live bar
Live timing is available for wick arrivals. Intrabar-persistent state latches a wick touch across realtime updates of the open bar. Because all levels first reached inside the same chart bar share one rank, the script does not claim a tick-level order that bar data cannot establish.
Body and close-cross modes automatically use confirmed bars to avoid transient open-bar signals.
Non-standard charts
Heikin-Ashi, Renko, Kagi, Line Break, Point & Figure, and Range bars can be synthetic or approximate. Automatic mode uses standard-symbol OHLC for the level and event source on non-standard charts, but arrival events are paused by default. Users can explicitly allow them for research after accepting the chart-type limitation.
The script is designed for time-based intraday charts. Tick charts and daily-or-higher charts are intentionally rejected with a visible notice rather than processed with ambiguous session assumptions.
Language and user interface
English is the default dynamic chart language. Selecting 日本語 changes dynamic labels, tooltips, safety notices, session-brief text, and language-aware alert() messages. Input names remain short bilingual labels so both English and Japanese users can configure the study.
Key Japanese UI translations:
未到達 = Pending
到達 = Reached
確定足 = Confirmed bar
ライブ・ヒゲ保持 = Live wick latch
前日値幅 = Prior range
次の未到達 = Next unreached
準備完了 = Ready
ソース足なし = Source bar unavailable
日次データ整合待ち = Aligning daily data
合成足イベント停止 = Synthetic events paused
International level codes such as P, R1, S1, PDH, and PDL remain unchanged in both languages.
Alerts
Neutral alert conditions are available for:
- Any pivot's first arrival
- P, R1, S1, R2, S2, R3, and S3 first arrivals
- Confirmed close crossing above or below P
An optional language-aware alert() call can include the reached level codes, shared rank, symbol, timeframe, and selected calculation method. Alerts describe observable level events only; they are not trade recommendations.
Suggested workflow
1. Use a standard candlestick intraday chart for the most direct interpretation.
2. Keep Automatic, Traditional, Nearest tick, Confirmed bar, and Wick for the conservative defaults.
3. Select the desired level depth and optional previous-day references.
4. Enable live timing only when intrabar wick monitoring is required.
5. Create alerts from the neutral first-arrival or confirmed P-cross conditions as needed.
6. Use Market Replay and several symbols/session types before relying on customized settings.
Important limitations
- A previous-day pivot is a mathematical reference, not a prediction that price will reverse or continue.
- Data vendors can revise historical bars, and exchange session definitions can differ across instruments.
- Standard-symbol mode can intentionally have no aligned bar outside its selected session. In that case, events pause instead of carrying stale OHLC forward.
- The first loaded partial source day cannot provide a complete earlier arrival sequence.
- A chart bar cannot prove the order of multiple level touches inside that bar; those first touches share one rank.
- Live wick tracking reacts to realtime updates. Reloaded historical bars contain finalized OHLC, not the original tick stream.
- Synthetic chart bars may not represent executable market prices. Arrival tracking on such charts is disabled by default.
- The study does not provide entries, exits, position sizing, stop placement, or performance statistics.
日本語説明
概要
Previous Day Pivot Pathは、選択したデータソースの確定済み前日OHLCから、当日のP・R・Sを自動計算して描画する日中足向けインジケーターです。
単に水平線を表示するだけではなく、各水準へ当日初めて到達したチャート足を記録し、到達順を番号で表示できます。売買推奨、勝率、収益性、将来予測を提示するものではなく、当日の数理的な節目と到達経路を研究するためのツールです。
主な特徴
初回到達経路
各水準は当日開始時に未到達状態となり、選択した価格ソースが初めて到達すると順位を記録します。同じチャート足の中で複数水準へ初回到達した場合、その足の内部順序はOHLCだけでは証明できないため、すべて同順位とします。
確定前日OHLC
日足リクエストでは、時刻・始値・高値・安値・終値のすべてを1本前へオフセットして使用します。形成中の日足高安や終値はピボット計算に使いません。
ソース欠損時の安全処理
標準銘柄ソースに現在時刻と一致する足がない場合、過去のOHLCを現在足へ持ち越して判定しません。到達イベントを停止し、既存描画を最終有効ソース足で固定します。
夜間市場を考慮した日付管理
Forexや先物など、セッションが日付をまたぐ市場に対応するため、単純なカレンダー日ではなく取引日キーを使用します。
秒足で古くなった描画への耐性
長期間保持する線、ボックス、到達バッジ、右端ラベルはUNIX時刻座標で管理します。高密度な秒足でも、古いbar_index座標による制限へ近づきにくい設計です。
5種類の計算方式
Traditional、Classic、Fibonacci、Camarilla、Custom researchを選択できます。Custom researchでは中心値と3つの前日値幅倍率を変更できます。
到達判定の研究性
ヒゲ、実体、確定終値通過から選択でき、許容幅は厳密一致、ティック数、前日値幅比率から設定できます。ギャップ通過を到達扱いにするかも切替可能です。
視認性
到達済み水準のフェード、最寄り未到達水準の強調、フォーカスハロー、自動文字コントラスト、近接ラベルの横方向段組みを実装しています。
CPR、前日高安、前日終値、当日始値、始値ブラケット、セッション概要は個別に表示・非表示を変更できます。
推奨初期設定
OHLC source Automatic
Pivot method Traditional
Level rounding Nearest tick
Arrival timing Confirmed bar
Arrival basis Wick
Touch tolerance Exact
Arrival universe Displayed levels
Synthetic chart events Off
Auto-stagger labels On
Auto contrast On
Focus halo On
ライブ中のヒゲ到達を監視するときだけ、Arrival timingをLive barへ変更してください。実体・終値通過は安全のため確定足判定になります。
言語切替
Language / 言語でEnglishまたは日本語を選択できます。日本語へ切り替えると、チャート上の動的ラベル、ツールチップ、安全性メッセージ、セッション概要、言語連動alert()が日本語になります。
P、R1、S1、PDH、PDLなどの国際共通コードは両言語で同じ表記です。
重要な注意事項
- ピボットは数理的な参照水準であり、反転やブレイクを保証しません。
- 読み込み初日が選択ソースの日中途中から始まる場合、それ以前の到達順は復元できないため、その日だけ経路追跡を停止します。
- 1本の足内で複数水準へ触れた正確な順序はOHLCから判定できないため、同順位になります。
- 標準銘柄ソースのセッション外では、古い価格を流用せず到達判定を停止します。
- Heikin-Ashi、Renko、Kagiなどの合成足では、到達イベントを既定で停止しています。
- Live barのヒゲ到達はリアルタイム更新に反応します。再読み込み後の履歴足には最終OHLCが残り、当時のティック列そのものは残りません。
- 本インジケーターはエントリー、決済、ストップ、ロット、成績表を提供しません。 Penunjuk

Round Number GridRound Number Grid is a visual price reference tool that draws psychological round-number levels around the current market price.
The purpose of this script is to help traders quickly see nearby round-number levels such as 50, 100, 150, 200, 250, 300, 500, or other clean price steps depending on the symbol and its volatility.
This is a visual tool only. It does not generate buy or sell signals, does not predict future price movement, and does not claim that round numbers will act as support or resistance.
How it works
The script can calculate the grid step in two ways:
- Auto from ATR: the script uses recent volatility to estimate a suitable distance between levels, then converts that distance into a clean round-number step.
- Manual: the user can manually choose the distance between grid levels.
In Auto mode, the script converts the ATR-based distance into a clean step such as:
- 1
- 2.5
- 5
- 10
- 25
- 50
- 100
This helps the grid adapt to different symbols and price ranges.
What the script shows
- Round-number levels above and below current price
- The nearest round-number level above price
- The nearest round-number level below price
- Optional major levels every selected number of steps
- Optional labels for visible levels
- A compact state label showing:
- Current grid step
- Nearest round level above
- Nearest round level below
- Percentage distance to the nearest levels
Visual features
The nearest level above price can be highlighted with a separate color and width.
The nearest level below price can also be highlighted separately.
Users can control:
- Number of levels shown above and below price
- Step mode: Auto or Manual
- Auto step multiplier from ATR
- Manual step size
- Major level frequency
- Line colors
- Line width
- Line style
- Label size
- Label visibility
- State label visibility
- Right-side line extension
Right extension
The script includes a right-extension setting so users can extend the grid lines farther to the right.
Users can choose between:
- Manual bars: extend levels by a selected number of bars
- Infinite right: extend the grid lines continuously to the right side of the chart
This makes the grid easier to read when the user wants more space between price, labels, and the right edge of the chart.
Alerts
The script includes alert conditions for:
- Round level crossed
- Nearest upper round level crossed
- Nearest lower round level crossed
These alerts are descriptive price-reference events only. They are not buy or sell signals.
Important note
Round numbers are psychological reference levels. They may be watched by market participants, but they are not guaranteed support or resistance levels.
A reaction near a round number does not guarantee a reversal, continuation, breakout, or rejection.
This indicator is intended for visual analysis, education, and chart context. It should be used together with broader market structure, trend, volume, support and resistance, and risk management.
Repainting / behavior note
This script does not use pivot confirmation, future-looking calculations, or predictive signals.
However, the visible grid is centered around the current price area. When price moves significantly, the displayed grid can recenter around the new price area. This is normal behavior for a visual round-number grid and should not be interpreted as a signal change.
The script is not a strategy, not financial advice, and not a standalone trading system. Penunjuk

Penunjuk

Nebbia Session Map & HTF Levels Nebbia Market Sessions & Liquidity Levels is an open-source intraday market-mapping indicator designed to combine session structure, liquidity references, higher-timeframe levels and the US Initial Balance in a single charting tool.
The script is intended primarily for traders who work on lower intraday timeframes and want a clear view of where price is trading relative to important session ranges, historical highs and lows, confirmed swing levels, opening prices and Initial Balance projections.
Market Sessions
The indicator can display the main intraday trading sessions:
Asia
London
New York AM
New York Lunch
New York PM
Each session can be enabled or disabled independently and has customizable hours, colors and transparency.
The first hour of the Asia and London sessions can also be highlighted separately, making it easier to identify their initial range and early-session price development.
Session times use timezone-aware calculations, allowing daylight-saving changes to be handled correctly when IANA timezones such as America/New_York, America/Chicago, Europe/London, Europe/Rome and Asia/Tokyo are selected.
Killzone Pivots
For every enabled killzone, the script can track the session high and low and extend them forward as potential liquidity levels.
These pivots can remain active according to three different expiration rules:
until the end of the trading day;
until the next occurrence of the same session;
until the level is mitigated.
A pivot stops extending once price trades through it.
Alerts can also be enabled for killzone pivot breaks.
Higher-Timeframe Liquidity Levels
Nebbia can display historical liquidity references from several timeframes:
past daily highs and lows;
past weekly highs and lows;
past monthly highs and lows;
two optional confirmed swing-timeframe slots.
The two swing slots are fully configurable. They may be used, for example, for:
4-hour swings;
1-hour swings;
30-minute swings;
or any other supported timeframe.
Swing highs and lows are confirmed only after the selected number of right-side bars has closed, preventing an unconfirmed pivot from being displayed prematurely.
The timeframe name is generated automatically in the label, producing references such as:
4H H
4H L
1H H
30M L
When two swing levels occur at the same price, the higher timeframe takes priority.
Level Confluence
When multiple liquidity references share the same price, Nebbia merges them instead of drawing several overlapping lines.
The hierarchy is:
Monthly → Weekly → Daily → higher swing timeframe → lower swing timeframe
The highest-priority line remains visible, while the label can report the relevant confluence.
Examples:
W LOW 09.06 / 4H L
D HIGH 16.07 / 1H H
M LOW 01.07 / W LOW 07.07
This keeps the chart readable while preserving the information contained in lower-timeframe confirmations.
Active and Mitigated Levels
Active liquidity levels are displayed using the selected active line style.
Once price trades through a level, it can be converted into a mitigated level using a separate broken-line style and transparency.
A dedicated setting allows mitigated levels to be shown or hidden completely.
This means the chart can be configured either to retain historical interaction points or to display only liquidity levels that remain untouched.
Level labels can also be enabled or disabled independently.
High labels are positioned above their level, while low labels are positioned below it.
Current Trading-Day High and Low
An optional developing mode can display the high and low of the current Chicago trading day.
These levels update throughout the session and are treated as provisional rather than as already-confirmed historical levels.
At the beginning of the next trading day, the completed daily range is transferred into the normal historical daily-level logic.
ADR5 Distance Filter
Nebbia includes an optional ADR5 filter, based on the average daily range of the five most recently completed trading days.
The ADR5 value is calculated and frozen at the beginning of each new trading day.
Only levels located within the selected ADR5 distance multiplier are displayed.
This can reduce chart clutter by hiding historical liquidity references that are too far away from current price.
For example:
1.0 displays levels within one ADR5;
1.5 displays levels within one and a half ADR5;
2.0 displays levels within two ADR5.
Opening Prices
The indicator can display the latest opening price for:
Daily Open — 00:00 Rome
Tokyo Open — 09:00 Tokyo
London Open — 08:00 London
US Cash Open — 08:30 Chicago
Each opening price has an independent visibility option, color and editable label text.
Only the latest relevant opening line is retained, preventing older opening levels from unnecessarily accumulating on the chart.
Time Markers and Separators
Optional vertical timestamps can identify:
00:00 Rome;
08:30 Chicago.
Daily, weekly and monthly separators can also be displayed independently.
Optional day-of-week labels may be placed at the top or bottom of the chart, with the possibility of hiding weekend labels.
US Initial Balance
Nebbia includes a dedicated US Initial Balance module based on the first hour of the US cash session:
08:30–09:30 America/Chicago
The Initial Balance can display:
IB High;
IB Low;
50% midpoint;
optional ×2 and ×3 extensions;
optional 50% levels between the main extensions;
a highlighted IB time window;
a tinted area between IB High and IB Low;
optional price labels;
configurable extension direction and line styles.
When lines are extended to the right, they remain active until the beginning of the next trading day’s Initial Balance rather than extending indefinitely.
The script can also calculate statistics from the previous 20 completed Initial Balance sessions.
Customization
Most visual components can be configured independently, including:
session colors and transparency;
swing timeframes and pivot sensitivity;
level colors and widths;
active and mitigated line styles;
label visibility and distance;
opening-price labels;
timestamp styles;
Initial Balance colors, widths and extensions;
timeframe visibility limits;
session-history drawing limits.
Credits
This open-source project was inspired in part by:
ICT Killzones + Pivots
by tradeforopp
Full recognition is given to the original author for the concepts and foundation that helped inspire the session and pivot components of this project.
Nebbia Market Sessions & Liquidity Levels is an independent expansion and redesign that adds higher-timeframe liquidity mapping, swing-timeframe slots, confluence management, ADR5 filtering, opening prices, timestamps and a complete US Initial Balance module.
Disclaimer
This indicator is provided for educational and analytical purposes only.
It does not constitute financial advice, investment advice or a recommendation to enter or exit any trade. Historical levels, session ranges, pivots and Initial Balance projections do not guarantee future market behavior. Penunjuk

Anchored VWAP Engine [Quantum Algo]Anchored VWAP Engine
====================================================
🔶 OVERVIEW
Anchored VWAP Engine is a multi-stream anchored Volume Weighted Average Price indicator that removes the hardest part of trading with anchored VWAP: choosing the anchor. The engine runs up to seven independently anchored VWAP streams that place and reset their own anchors automatically — the week open (the default stream), session open, month open, confirmed swing highs and swing lows, the highest-volume bar in a lookback, and a liquidity-sweep anchor that re-anchors from the exact bar where a stop run occurred. On top of the streams it adds volume-weighted deviation bands, automatic confluence cluster zones where multiple streams converge, band-rejection signals, and a stability metric that names which VWAP the market is currently respecting most.
Out of the box the chart shows a single clean line: the week-anchored Volume Weighted Average Price with its deviation bands. Every additional stream is one checkbox away.
🔶 WHAT IS AN ANCHORED VWAP?
The Volume Weighted Average Price is the average price of an instrument weighted by traded volume — the closest public approximation of the average position price of everyone who transacted since a chosen starting point. An anchored VWAP starts that calculation from a meaningful event rather than an arbitrary date: a weekly open, a swing low, a high-volume climax bar. Price above an anchored VWAP means the average participant since that event is in profit; price returning to it often behaves as a decision level, because it is where the average position breaks even. The power of the tool depends entirely on where it is anchored — which is exactly what this engine automates.
🔶 WHY THIS SCRIPT IS ORIGINAL
1. Automatic multi-anchor engine. Seven streams anchor and re-anchor themselves from objectively defined events — no manual anchor placement, no stale anchors, no guessing.
2. The liquidity-sweep anchor. When a swing level is wicked through and rejected — a stop run — the sweep stream re-anchors from that exact bar and colors itself by implication: the accumulation tone after a sell-side sweep, the distribution tone after a buy-side raid. Averaging from the stop-run bar tracks the entry basis of the participants who engineered it. To our knowledge this anchor type has not been published before.
3. Exact swing anchoring. Swing-anchored streams rebuild their sums retroactively from the true pivot bar once the pivot confirms, so the calculation is mathematically identical to a VWAP hand-anchored on the swing itself — not started late at the confirmation bar.
4. Confluence clusters. When two or more active streams converge within an Average True Range tolerance, the engine draws a cluster zone and labels its strength. Multiple independent volume-weighted averages agreeing on one price is the strongest form of VWAP confluence, detected automatically.
5. The In Control metric. An exponentially decayed crossing-rate measures how cleanly price is respecting each stream; the dashboard names the stream currently in control. Users learn which anchor matters today instead of watching all of them equally.
6. True volume-weighted deviation bands. The bands are built from the volume-weighted variance of the primary stream — not a simple price standard deviation — at two configurable widths, with band-rejection signals printed as a single σ character whose full context lives in the hover tooltip, protected by a signal cooldown.
7. Quiet by default. One stream, one set of bands, capped signals, and a compact dashboard. The engine detects everything; the chart shows only what is asked of it.
🔶 HOW IT WORKS
Streams: Each stream maintains volume-weighted price and variance sums that reset on its anchor event — new week, new session, new month, a confirmed swing, a lookback volume record, or a qualified liquidity sweep. Between events the sums accumulate bar by bar, producing the stream's live anchored VWAP.
Sweep detection: A sweep qualifies when price wicks through the last confirmed swing level but closes back inside it, with per-level memory so the same level cannot re-trigger. The sweep stream then re-anchors from that bar.
Deviation bands: The primary stream (selectable; week open by default) carries inner and outer bands at configurable sigma multiples computed from its own volume-weighted variance, with softly tinted zones between them.
Signals: A wick beyond the outer band with a close back inside, on the correct side of the VWAP, prints the σ rejection signal — reversion bias toward the average — evaluated on closed bars only and rate-limited by the cooldown.
Clusters: On the live bar the engine groups all active stream values within the tolerance and draws a labeled zone for each group of two or more.
Dashboard: A fully themeable panel lists every stream with its live distance from price in Average True Range units and side, plus the In Control stream, active cluster count, and the current band width.
Non-repainting: Anchors use confirmed events, sweeps and signals are evaluated at bar close, and swing streams rebuild exactly rather than approximately.
🔶 HOW TO USE IT
1. Works on any market with reliable volume — cryptocurrency, stocks, indices, futures. On the default settings, read the week-anchored VWAP as the institutional benchmark: above it with rising distance means the average weekly participant is in profit.
2. Treat the VWAP itself as the decision level and the outer bands as stretch: σ rejections at the outer band carry a reversion bias back toward the average.
3. Enable the swing and sweep anchors to study reactions: price returning to a sweep-anchored VWAP is returning to the average entry of the stop-run — a level worth watching.
4. Cluster zones are the highest-value levels the engine produces: several independent volume-weighted averages agreeing on one price. Watch how price behaves on first touch.
5. Use the In Control row to pick which stream deserves your attention today, and the distance column to see what is nearby before it is hit.
6. Intraday traders can switch the primary stream to Session Open; swing traders can promote Month Open.
🔶 SETTINGS
- Anchors: independent toggles for all seven streams, swing pivot length, highest-volume lookback. Default: Week Open only.
- Primary stream selection with inner and outer band multiples.
- Cluster detection with Average True Range tolerance.
- Signals: toggle, cooldown, and signals to keep.
- Individual colors for every stream plus accent and neutral colors.
- Themeable dashboard: position, four text sizes, title band, background, frame, grid, and three text colors.
🔶 ALERTS
- Bullish / Bearish Band Rejection — price rejected the outer deviation band of the primary stream.
- Price Crossed Above / Below Primary VWAP.
- VWAP Cluster Formed — two or more streams converged into a confluence zone.
- Sweep Anchor Reset — a liquidity sweep occurred and the sweep stream re-anchored from the stop-run bar.
🔶 FREQUENTLY ASKED QUESTIONS
Does the indicator repaint? No. Anchor events are confirmed before they act, swing streams rebuild exactly from the confirmed pivot bar, and signals are evaluated on closed bars. Swing confirmation carries its standard pivot lag by design.
Why do I only see one line? By default only the week-anchored stream is enabled for a clean first chart. Every other anchor is a checkbox in settings.
What makes the sweep anchor special? It averages price and volume from the exact bar where stops were run — the basis of the participants who engineered the move — rather than from a calendar date or swing alone.
Why is there no cluster or In Control reading? Both features compare multiple streams; enable two or more anchors and they activate.
Which markets should avoid it? Any Volume Weighted Average Price tool is only as good as the volume feed. On symbols with unreliable or synthetic volume reporting, treat every stream with caution.
🔶 CREDITS
The Volume Weighted Average Price was introduced by Stephen Berkowitz, Dennis Logue and Eugene Noser (1988), and the anchored application was popularized by Brian Shannon, whose work established anchoring from meaningful events as a discipline. This script gratefully acknowledges both. The multi-stream auto-anchoring engine, the liquidity-sweep anchor, the exact retroactive swing rebuild, confluence clustering, the In Control stability metric, and all code in this script are original work — no third-party or open-source script code was reused.
🔶 LIMITATIONS
Volume quality determines VWAP quality; symbols with unreliable volume produce unreliable averages. Deviation bands need bars to mature after each re-anchor. Cluster detection reports convergence, not a guarantee of reaction. The In Control metric measures recent respect, not future behavior. No indicator replaces independent analysis.
🔶 DISCLAIMER
This script is provided strictly for educational and informational purposes. It is not financial advice, an investment recommendation, or a solicitation to buy or sell any financial instrument. Past behavior of any average, band, or cluster does not guarantee future results. Trading involves substantial risk. Always do your own research and manage risk independently. Penunjuk
