Three-Session Volume ProfileOverview
Three-Session Volume Profile divides intraday trading into three independently configurable sessions: Asia, London, and New York. Instead of combining the entire trading day into one profile, the indicator resets its calculations at the beginning of each session and displays a separate Volume Profile, Point of Control, Value Area, VWAP, and optional deviation bands for each period.
This structure is intended for traders who analyze how price and volume distribution change as market participation moves between global trading sessions. Each session is treated as its own auction, making it possible to compare where volume was accepted during one session with how price behaves during the next.
The default schedules use the America/New_York time zone:
Asia: 18:00–03:00
London: 03:00–09:30
New York: 09:30–16:00
All schedules and the time zone are configurable. The America/New_York setting automatically accounts for daylight-saving changes.
Why the components are combined
The Volume Profile, session VWAP, and deviation bands are not calculated as unrelated indicators. They all use the same independently resetting session windows.
The Volume Profile describes how the session’s volume was distributed across price. VWAP provides the session’s volume-weighted mean price, while the deviation bands describe dispersion around that mean. Together, they provide two complementary views of the same session:
Volume Profile identifies price areas with relatively high or low participation.
POC identifies the profile row containing the most allocated volume.
VAH and VAL define the boundaries of the selected value area.
VWAP represents the session’s volume-weighted average price.
Deviation bands provide context for how far price is trading from the session’s weighted mean.
The purpose of this combination is to provide a consistent session-based framework rather than merge unrelated studies.
Volume Profile calculation
For each active session, the indicator tracks the session high, low, and volume. The complete session range is divided into a configurable number of equally sized price rows.
Because standard chart data does not provide the exact price of every transaction, each chart bar’s volume is allocated across the profile rows intersected by that bar’s high-low range. The allocation is proportional to the amount of the bar’s range overlapping each row. A bar with no measurable range has its volume assigned to the row containing its representative price.
The profile is recalculated when the session’s price range expands. This keeps the rows distributed across the complete developing session range.
The Rows setting controls profile resolution and supports values from 12 to 200. More rows provide finer price segmentation but also increase calculation requirements. The profile is based on chart bars rather than tick-by-tick or lower-timeframe transaction data, so changing the chart timeframe can change the resulting distribution.
POC and Value Area calculation
The Point of Control , or POC, is the midpoint of the profile row containing the greatest allocated volume.
The Value Area begins at the POC row. The calculation then compares the next available row above and below the current Value Area and adds the side containing more volume. This process continues until the selected percentage of total session volume has been included.
The resulting levels are:
VAH: Upper boundary of the Value Area
VAL: Lower boundary of the Value Area
POC: Midpoint of the highest-volume profile row
The default Value Area contains 70% of session volume, but this percentage can be adjusted.
Developing and completed levels
While a session is active, the developing VAH , VAL , and POC can be displayed. These levels update as new price and volume information enters the session.
When the session ends, the final profile and levels are stored as completed session values. The number of completed profiles retained for each session can be controlled from the settings.
Developing values are expected to move. A new session high or low changes the profile range and can cause all rows to be redistributed. Completed levels remain fixed unless the chart data, timeframe, symbol, session schedule, or indicator settings are changed.
Session VWAP and deviation bands
The optional VWAP calculation resets independently at the beginning of each session. It uses HLC3 as the representative bar price and weights it by volume.
The session VWAP is calculated as:
Volume-weighted price sum ÷ Session volume sum
The standard deviation calculation is also volume-weighted. The selected multiplier is applied above and below VWAP to produce the upper and lower bands.
These bands are descriptive measurements of session dispersion. They are not automatic overbought or oversold signals.
Profile placement
Each profile can be positioned on either side of its own session:
Left: Anchors the profile to the session opening edge and extends it to the right.
Right: Anchors the profile to the session closing or current edge and extends it to the left.
This setting refers to the boundaries of each session, not the far-left or far-right edge of the visible chart.
The Maximum width setting controls the profile’s horizontal display width in chart bars. It changes only the visual width and does not affect the underlying volume calculations.
How to use the indicator
1. Configure the time zone
Select the time zone used to interpret all three schedules. America/New_York is suitable when session times should follow Eastern Time and adjust automatically for daylight saving.
Use a fixed UTC offset only when daylight-saving adjustment is not desired.
2. Configure the sessions
Set the opening and closing time for Asia, London, and New York. Overnight schedules, such as 18:00–03:00, are supported.
The sessions may overlap if desired. When they overlap, each session continues to calculate independently.
3. Select profile resolution
Increase the number of rows for more detailed price segmentation. Lower values produce broader profile levels and require fewer calculations.
Profile precision also depends on the chart timeframe. Lower chart timeframes generally provide more granular source bars, while higher timeframes provide a broader approximation.
4. Select the Value Area percentage
The standard default is 70%. Increasing the percentage produces a wider Value Area, while reducing it produces a narrower area around the POC.
5. Choose completed or developing levels
Developing levels can be used to observe how the current session’s distribution changes. Completed levels provide fixed references from prior sessions.
Traders may examine whether price:
Accepts or rejects a previous session’s Value Area
Rotates around a prior POC
Moves from one session’s value region toward another
Holds above or below a prior VAH or VAL
Trades near or away from the active session VWAP
These are contextual observations rather than predefined entry or exit signals.
6. Enable VWAP and deviation bands if needed
VWAP can provide a session-weighted reference price alongside the distribution-based profile. Deviation bands can be enabled to visualize dispersion around that reference.
Interpretation
A wide section of the profile represents a row receiving relatively more allocated volume. A narrow section represents relatively less allocated volume.
POC and Value Area levels identify areas of historical participation, but they do not guarantee future support or resistance. Their interpretation depends on market structure, volatility, liquidity, instrument type, and the trader’s broader methodology.
On centralized futures markets, the script uses the exchange-reported volume available on the chart. On markets where only tick volume is available, the profile reflects that data instead of centralized transaction volume.
Recalculation and limitations
The indicator does not request future data or use lookahead calculations. Completed sessions are based only on bars belonging to those sessions.
Developing profiles and levels update during the active bar as its high, low, and volume change. This is normal real-time recalculation and should not be interpreted as a fixed signal.
The profile is an approximation created from chart-bar ranges and volume. It is not a tick-level bid/ask profile, footprint chart, or reconstruction of individual transactions. Results can differ from volume-profile tools that use lower-timeframe or transaction-level data.
This indicator is an analytical tool and does not provide trade entries, exits, profit projections, or guarantees of future performance. インジケーター

Coasyn Session AnchorCoasyn Session Anchor
Coasyn Session Anchor is an intraday session-reference tool for marking important FX trading-session events directly on the chart.
The indicator can track:
Tokyo Open
Tokyo Close
Europe Open
London Open
New York Open
New York Close
Each enabled event can create:
a vertical timing marker showing when the session event occurred
a horizontal price anchor extending from that event
an optional label identifying the session
The indicator does not generate trade signals, determine market direction, or execute orders.
Its purpose is to provide consistent session timing and price-reference levels.
How to use it
Open the indicator settings and first choose your Anchor Timezone.
The default is:
Etc/UTC
All session times entered in the indicator are interpreted using this timezone.
For each session event, you can:
Enable or disable the event.
Enter the event time using HH:MM format.
For example:
00:00
07:00
08:00
13:30
Session times
The default configuration is:
Tokyo Open — 00:00
Tokyo Close — 09:00
Europe Open — 07:00
London Open — 08:00
New York Open — 13:30
New York Close — 21:00
These times are fully editable.
If your preferred session definition, broker convention, daylight-saving adjustment, or operating timezone is different, change the values in the settings.
Horizontal anchor price
The Horizontal Anchor Price setting determines which price is used when a session event occurs.
Event Open
Uses the chart bar's opening price when the session anchor is detected.
Event Close
Uses the chart bar's closing price.
The resulting level extends to the right as a reference for later price interaction.
Vertical session markers
Enable:
Show Vertical Session Timing Lines
to draw a vertical line at each enabled session event.
This provides a visual reference for when major trading sessions begin or end.
Horizontal session levels
Enable:
Show Horizontal Anchor Levels
to extend the selected event price across the chart.
These levels can be used to observe how price behaves relative to prior session participation points.
The indicator does not assign bullish or bearish meaning to those levels.
Labels
Enable:
Show Anchor Labels
to identify each session directly on the chart.
Labels include:
TOKYO OPEN
TOKYO CLOSE
EUROPE OPEN
LONDON OPEN
NY OPEN
NY CLOSE
Historical anchors
By default, Keep Historical Anchors is disabled.
When disabled, each session event keeps only its most recent anchor.
For example, when the next London Open occurs, the previous London Open anchor is removed and replaced with the new one.
Enable Keep Historical Anchors if you want previous session anchors to remain visible.
Be aware that keeping large amounts of historical session data can create substantially more chart objects.
Display controls
The indicator allows you to configure:
session colors
line width
horizontal levels
vertical timing markers
labels
historical anchors
Each major session can use its own color so different session events remain easy to distinguish.
Example workflow
A trader operating during the London and New York sessions might enable:
Europe Open
London Open
New York Open
while disabling session events they do not use.
The chart will then maintain timing and price anchors for those specific events.
This makes it easier to observe whether price is trading:
above or below a session-opening reference
back through a prior session level
around the transition between trading sessions
The interpretation remains entirely with the trader.
Timeframe note
Coasyn Session Anchor is designed primarily for intraday charts.
The precision of an anchor depends on the chart timeframe.
On lower intraday timeframes, the bar containing the configured session time will generally provide a more precise representation of that event.
On larger chart intervals, one candle may span multiple session events, so the event price should be treated as a broader reference rather than an exact tick-level session price.
Important
Coasyn Session Anchor is an informational charting tool only.
It does not provide:
buy or sell signals
trade entries
targets
stop placement
position sizing
automated execution
directional recommendations
It provides time and price anchors around the session events selected by the user.
Built by Coasyn Market Systems. インジケーター

The Fluid Trader sessionsTHE FLUID TRADER SESSIONS 🌊
The Fluid Trader Sessions indicator provides a clean, automated overlay of major macroeconomic trading windows. Built for precision and clarity, it tracks the Asia, London, and US sessions, dynamically plotting session highs and lows while actively filtering out swept liquidity levels to keep your charts clutter-free.
CORE FEATURES ⚡
🌍 AUTO-DST SYNCHRONIZATION: Built with native timezone logic (New York, London, Tokyo), the indicator automatically adapts to summer and winter time changes (Daylight Saving Time). Your session windows are always dead-accurate without any manual offset adjustments.
📰 US PRE-MARKET (NEWS) WINDOW: Specifically isolates the highly volatile 08:30 - 09:30 EST window (US News/Pre-Market open) with dedicated candle coloring, giving you a clear visual edge right before the US equities cash open.
🎯 DYNAMIC SESSION HIGHS & LOWS: Automatically tracks and plots the highest high and lowest low of the active Asia, UK, and US sessions.
🛡️ SMART SWEEP DETECTION: Once a historical session extreme is swept (broken) by current price action, the indicator automatically deletes the corresponding line and label. This ensures your chart only displays untouched, relevant liquidity pools.
🐾 LIVE RANGE TRACKING: Displays real-time, developing session boundaries using dotted lines, which automatically finalize into solid, fixed lines the moment the session closes.
🕯️ TARGETED CANDLE COLORING: Visually segments market phases with customizable candle colors for Asia, UK, and US sessions, allowing you to read the market rhythm at a glance.
🚀 PERFORMANCE OPTIMIZED: Includes a built-in pruner to limit the number of active historical lines (preventing chart lag) and a weekend filter for traditional market traders.
A CLEARER WAY TO TRADE. 💧
Awareness | Timing | Discipline | Execution インジケーター

Minimal Ict killzone (musii)**Five things. One colour. Nothing else.**
This is not an all-in-one. Most ICT scripts throw 40 features and 12 colours at your chart until you can't see the candles. This draws exactly five things, in one colour if you want, as thin and quiet as possible — and it cleans up after itself so old, dead or far-away information never stays on screen.
Built for index futures (NQ / ES / MNQ / MES / YM / RTY) on 1m–1h, works on anything intraday.
---
**WHAT IT DRAWS**
**1 · Sessions (killzones)**
Asia, London, NY AM, Lunch, NY PM — each one is a small labelled header block floating just above the session's high, spanning the session's time, with two faint vertical "curtains" hanging from its edges. That's it. No giant boxes painted over your candles. Session high / low lines are available (dotted, extend until swept, then freeze at the sweep candle) but off by default.
Every session's name, time window and colour is editable inline. Times are anchored to New York regardless of your chart timezone.
**2 · True Day Open (TDO)**
The 00:00 New York open. One line, one tiny `tdo` tag at its right end.
**3 · 10AM Open (the "Powell" open)**
The 10:00 NY open is the open of the new 4-hour candle and the anchor of the 10am Power of 3 — price frequently runs one side of it (manipulation), then displaces through it and expands the other way. The script draws the 10:00 open and runs it to 14:00 (the 4H close) by default.
– Optional "body edge" mode: reads the 10:00 candle — bearish close → line at body top, bullish → body bottom.
– Optional `judas` mark: the first candle that wicks through the 10am level and closes back on the other side. One per day, alertable.
– 6pm futures open available (off by default).
**4 · Turtle Soup (liquidity sweeps)**
A wick takes out a swing high or low and the body closes back inside — that's the mark. Dotted line from the swept swing to the sweep candle, tiny `ts` tag. The same rule optionally fires on the session highs / lows above, so a London-high sweep during NY AM is marked without you drawing anything. Optional filter: only inside session windows.
**5 · SMT Divergence**
Automatic pairing: NQ↔ES, MNQ↔MES, YM/MYM→ES/MES, RTY/M2K→ES/MES — micro stays micro, and it mirrors your exact contract (NQ1! pairs with ES1!, NQZ2026 pairs with ESZ2026). Or force a pair, or type a custom symbol; inverse-correlation switch for pairs that move opposite.
Detection is done the way SMT is actually read: when your swing high confirms, it looks at the pair's highest high across that same window and compares it with the pair's high across your previous swing. You made a higher high, the pair didn't → `smt·es`. No requirement for the pair to print a pivot on the same candle (that's why most SMT scripts miss half of them). A max-distance setting keeps it to the current leg.
---
**THE PART THAT MAKES IT USABLE: IT DECLUTTERS ITSELF**
Every object on the chart has a reason to leave:
– Turtle soup and SMT marks **expire** after N bars (bars, not minutes — so it's the same screen distance on every timeframe).
– A **failed** turtle soup (candle closes back through the swept level) or a failed SMT (close through the divergence pivot) is **deleted**. If a mark is still on your chart, it's still valid.
– Swing candidates **age out** — sweeping a two-day-old pivot on the 1m isn't turtle soup.
– Past sessions and open lines **hide themselves** while price is more than N × ATR away and **reappear** when price comes back into range.
– Opens are **today-only** by default.
– Session history: 1–15 days, one slider.
---
**ONE-COLOUR MODE**
The `style` group has a single switch: *one colour for everything*. Every line, fill, curtain and label is forced to one colour of your choice. Text size, line width and fill transparency are global. If busy charts overstimulate you, this is the reason the script exists.
---
**ALERTS**
Turtle soup bull / bear · SMT bull / bear · 10am judas · 10am open printed.
---
**NOTES**
– Turtle soup and SMT confirm `swing length` bars after the pivot — that's inherent to any pivot-based logic and it does not repaint after confirmation.
– Hidden (far-away) objects are made transparent. If far lines ever squash your auto-scale, right-click the price scale → *Scale price chart only*.
– Intraday only. On daily+ the opens and sessions don't apply and stay off.
– This is a drawing tool, not a signal service. It marks time and structure; the read is yours.
Settings are grouped: style · declutter · sessions · opens · turtle soup · smt. Every input has a tooltip.
インジケーター

Multi Cycle Session Boxes
Multi Cycle Session Boxes is an overlay tool that frames freely defined time windows with a box that grows with the price inside it.
It is built for anyone who keeps drawing the same rectangle over the same hours — a trading session, the run-up to a weekly close, a month, a season — and would rather have that window marked on every repetition without touching the chart again.
The principle is a plain comparison: each session holds a start point and an end point, and while the current bar falls between them the box tracks the highest high and the lowest low reached since the window opened.
There is no indicator arithmetic behind this; the entire calculation is calendar arithmetic carried out in a timezone of your choosing, which is what allows the same window to repeat on a daily, weekly, monthly or yearly cycle.
Seven such sessions run independently of one another, each with its own cycle, its own window and its own colors.
Timezone
Timezone: the timezone all seven sessions are evaluated in; Exchange follows the timezone of the symbol itself.
SESSION 1 (present seven times, SESSION 1–SESSION 7, each instance identically structured)
Show boxes: switches the session on or off.
Repeat: the cycle the window repeats on — Daily, Weekly, Monthly or Yearly.
It also decides which of the time fields below are evaluated.
Session 1 Time (Start:End)
Month: first and last month of the window, evaluated in Yearly only.
Day: first and last day of the window, evaluated in Weekly, Monthly and Yearly. In Weekly the day is counted from 1 for Monday to 7 for Sunday, otherwise it is the day of the month.
Hour: first and last hour of the window.
Minute: first and last minute of the window.
Session 1 Graphic
Fill: color of the box area.
Border: switches the border on or off, and sets its color and its width.
A box opens on the first bar that falls inside the window and is redrawn with every bar that follows: its upper edge sits at the highest high reached since the window opened, its lower edge at the lowest low, and its right edge moves along with the last bar still inside.
Once the window closes the box stays where it is, so what builds up on the chart is a record of what each repetition of that window actually contained.
Every session keeps its last seventy boxes and removes the oldest as new ones open, which keeps all seven of them together within what the platform allows a single script to draw.
The end of a window is exclusive: a window ending at 15:30 contains the bar before it, not the 15:30 bar itself.
A window whose end lies before its start is not discarded but crosses the boundary of its cycle instead, which is how an overnight session from 22:00 to 06:00 remains a single box.
If start and end are set to the same point, the window is open at all times and each box then spans one full cycle before the next one begins.
In Weekly the two day fields count only up to seven, and higher values are read as Sunday.
In Monthly and Yearly a day the calendar month does not have is never reached: an out-of-range start skips that repetition altogether, an out-of-range end carries the box through to the end of the month.
One point worth knowing before the first attempt: a window can only be resolved as precisely as the chart's timeframe permits.
A window from 12:00 to 15:30 needs bars that fall inside those hours — on a daily chart no bar begins at 12:00, so nothing is drawn there.
This indicator is intended solely for market analysis and does not constitute investment advice or a guarantee of success.
Use it at your own discretion and risk; past results are not indicative of future performance.
インジケーター

Pine Script Utility Library [1CG]Pine Script Utilities
Building a Pine script often means writing the same supporting code again: setting up timezone choices, converting prices to ticks or pips, updating chart drawings, or working out which candles belong to a trading session.
Pine Script Utilities brings these everyday tasks into one reusable toolbox. Its purpose is to help script authors spend more time on what makes their indicator useful and less time rebuilding common tools.
This is a library for Pine Script v6. You use it inside your own indicator or strategy; adding the library alone does not produce a chart display. You can use a single helper or combine several parts of the library as your script grows.
Consistent choices for your settings
Give users familiar choices without recreating the same lists in every script. The library supplies reusable options for:
Timezones, including the symbol's exchange timezone.
Hours, minutes, quarter-hour times and common durations.
Line styles, thickness, extension direction and label styles.
Text size and horizontal or vertical alignment.
Session presets and the starting points for session high and low lines.
It also turns these selections into the values Pine needs to use them. Your script still decides which settings to offer and how to arrange them.
Time and timezone tools
Work with clock times, session schedules and chart timing without repeatedly writing the conversion code yourself. Helpers let you build and read time values, convert between clock times and minutes, calculate durations, check session membership and limit processing to a chosen history window.
For example, you can define a session in New York time even when the symbol uses a different exchange timezone. Named timezones allow session boundaries to follow local daylight-saving changes. Overnight schedules are supported, so a session can start in the afternoon and finish the following morning.
Everyday price and quantity conversions
Use the same conversion tools across different scripts:
Convert a price movement into ticks or pips, or convert those distances back into price.
Override the pip size when a broker's price feed needs a different convention.
Read the symbol's price precision, tick value and asset category.
Round quantities down to a chosen increment.
Calculate a position's notional value from quantity, price and the symbol's point value.
For example, a candle-range display could show its size in ticks instead of a raw price difference. These are general conversions; account-risk sizing and risk/reward calculations belong in a separate risk library.
Easier drawing maintenance
Once your script has created a drawing, the library can help keep it up to date. Change the position, appearance or text of lines, labels and boxes, and update existing table cells. Supply the properties you want to change and leave the others as they are.
Cleanup helpers remove groups of lines, labels, boxes or connected-line drawings called polylines. You can also keep a line collection within a chosen size and turn lists of times and prices into points for chart drawings. This gives scripts a common way to manage their chart objects as new data arrives.
Session tracking beyond simple clock checks
For scripts that need session ranges, the library can track the opening price, high, low and latest closing price, along with the times of the highs and lows. Use a preset schedule or define your own, track multiple sessions separately, and retrieve the current session or earlier completed sessions.
It also handles several details that can otherwise produce confusing chart results:
A session can start or finish partway through a candle. Where needed, available one-minute data helps exclude prices from outside the session. For example, a 09:10 start on a 15-minute chart should not include the earlier prices from the 09:00 candle.
Session prices and displayed line lengths stay separate. You can collect prices until noon and keep the resulting levels visible later without changing the session's high or low.
High and low lines can start from the session opening, the session end, or the time each extreme occurred.
When trading reopens after a long closure, eligible line endpoints can carry forward across the missed days. An overnight session interrupted by the closure can resume as the same session, preserving its earlier prices.
Stored sessions can be kept by record count, so a script can retain actual observations instead of treating empty weekend dates as trading sessions.
The session tools use ordinary chart candles where those candles are sufficient. They can request one-minute data for candles that contain a session boundary, and several sessions can share that data.
Building blocks for your own indicators
You could use these tools for a session-range overlay, a candle-size display, a dashboard with consistent text and styles, or an indicator that marks a chosen time window. Time-window helpers provide the opening and closing times and help your script decide when to draw the window.
The companion session example demonstrates how these pieces fit together. It keeps a chosen number of session records, draws the retained history, and updates the current session as prices arrive. Its complete appearance and additional features are choices made in the example; you can build a different display using the same utilities.
Getting started
Import the library into a Pine v6 script and start with the helpers you need. Simple conversions and drawing helpers can be used independently. Session tracking needs a little more setup because your script keeps the session records and decides how to display them. The full guide explains that workflow, while the API reference lists the available functions and their arguments.
A few things to know
Session tracking is intended for standard intraday time-based charts. Its one-minute boundary checks apply to chart timeframes above one minute.
Custom session tracking uses one start and end time, such as 1600-0400. Presets describe regular clock schedules, not complete holiday or lunch-break calendars.
Weekend and closure adjustments happen when reopening data arrives. The library does not predict future market closures.
Accurate ranges depend on available price history. If required one-minute data is missing, the library does not replace it with a whole candle that could contain out-of-session prices; the resulting range may be incomplete.
Pip sizes, quantity increments and contract values can differ between feeds and instruments. Use the appropriate values for your symbol.
Your script controls its drawings, alerts and history limits. TradingView's data and drawing limits still apply.
ライブラリ

Session Killzones + Opening Range [verticetrading]SESSION KILLZONES + OPENING RANGE
The Session Killzones + Opening Range indicator draws the Asia, London and New York sessions as live boxes on the chart, highlights each session's opening range, and adds a "fuel gauge" that compares the session's developing range with the symbol's own recent sessions.
🔶 USAGE
Add the indicator to an intraday chart of a market that trades across sessions (gold, forex, crypto, index futures). Each active session appears as a shaded box with its name; the first minutes of the session are shaded darker as the opening range. When price closes beyond that range, an alert can fire.
🔹 Reading the fuel gauge
* The session label shows the current range as a percentage of the typical range of that session's last 20 instances, e.g. "London — range at 137% of typical".
* Below roughly 60% late in the session: a quiet session; breakouts tend to have less follow-through.
* Around 60-110%: a normal session.
* Above roughly 120%: the session has already travelled more than usual; late entries face a statistically stretched move.
* The gauge measures amplitude, not direction: a 137% session can be a straight trend or a range that ends where it started — the candles inside the box tell you which.
🔹 Alerts
* Session opened.
* Opening range broken up / broken down (confirmed close only).
🔶 DETAILS
Sessions are evaluated in the timezone you choose (New York by default, the usual anchor for FX and metals). For every session the script stores the final range of its last 20 instances and divides today's developing range by that average; the label appears once a few sessions of history exist. Since a range can only grow, the percentage rises during the session and never falls, so the same 40% means "slow, still has room" mid-session and "a quiet day" at the close. Opening-range breakouts are detected on confirmed closes only, so nothing repaints. The statistics describe the loaded history of the chart only.
🔶 SETTINGS
🔹 General
* Language / Idioma: interface language (English by default, Spanish available). Every setting, tooltip and alert has an English label.
* Sessions timezone: the timezone the session hours refer to (Exchange, UTC, New York, London, Central America, Mexico City, Madrid/Paris/Berlin, Tokyo).
* Opening range (minutes): length of the opening range, 30 by default.
🔹 Session: Asia / London / New York
* Show: toggles the session.
* Hours: the session's time window in the selected timezone (defaults 18:00-03:00, 03:00-11:30 and 08:00-17:00 New York time).
* Color: box and label color.
Educational tool, not financial advice. A news day can print 200%; the gauge tells you when the context deserves attention, not where price will go. Trading involves risk. インジケーター

Dynamic Range Tool [vault]Dynamic Range Tool is a complete session range framework. Instead of stacking five separate tools every morning you get one: the session range with its quarters and projections, average range targets from the daily, weekly and monthly timeframes, daily and weekly opens, center mass of the previous daily and weekly candle, and automatic order blocks. One script, one chart, alerts on every level.
THE SESSION RANGE
The engine is a time window defined in EST. The default is 19:00 to 02:45, which is the asian session plus the london open lead in. The script tracks the highest high and lowest low inside that window and builds three lines from it: range high, range low, range mid. Those lines are then extended to whatever hour you set in "Extend To Hour", 19:00 the next evening by default, so the levels sit in front of you for the entire trading day.
On top of that you get the range quarters at 25% and 75%, drawn dashed in the theme accent color. Those are the levels price tends to react to on the way back into the middle.
Two vertical markers show the range gate and the moment the window closes, so you never lose track of where the measurement ends.
RANGE PROJECTIONS
Turn on "Show Range Projection" and you get the range mirrored above and below the midpoint at 1x, 1.5x, 2x and 2.5x. Classic range expansion logic. If the asian session printed 40 points you already know where 1x and 2x sit before london even starts. Upper levels use the theme top color, lower levels the bottom color.
ADR / AWR / AMR TARGETS
This is the part that does the heavy lifting. The script computes an average candle range (14 periods by default) separately on the daily, weekly, monthly and a custom intraday timeframe (60 or 240 minutes), then projects:
- Daily projected high = day low + ADR
- Daily projected low = day high - ADR
- The same for the week and the month, with progressively thicker lines
- The same for your custom timeframe
- Top hash and bottom hash, the range midpoint plus and minus half an ADR
- A second pair at the midpoint plus and minus a full ADR
Every level is labelled on the right and fires its own alert. Once the day has already delivered its average range the projected high and low cross over each other, and the script deletes both lines and their labels automatically so you are not left staring at levels that no longer mean anything.
Underneath, semi transparent zones are shaded between the range midpoint and the ADR projection. They show how much room is left before the average day is fully used up.
OPENS AND CENTER MASS
- Daily open and weekly open, colored dynamically: bottom color when price trades above the open, top color when below. One glance tells you which side of the open you are on.
- Center mass daily and weekly, the midpoint of the previous daily and weekly candle body. Thick neutral line, one of the better mean reversion magnets on intraday charts.
ORDER BLOCKS
A separate module. The script measures momentum as the percentage change of open against the open four bars back. When that change crosses the sensitivity threshold (25 by default, meaning 0.25%) it walks back 4 to 15 bars, finds the last candle opposite to the impulse, and turns it into a block. Mitigation is your choice of wick or close. Blocks are removed automatically once mitigated, and price entering an active block triggers an alert.
A minimum spacing of 5 bars between signals keeps the chart clean in chop.
STATS PANEL
Top right corner: last session range, ADR, AWR and the custom range value. Displayed in pips or in ticks depending on the toggle.
THEMES
The build ships with a full theme engine:
- Vault Red (default) - red upside, blue downside, white structure
- Vault Classic - the original orange and blue palette
- Ice - cold blues
- Neon - magenta and green
- Gold - gold and purple
- Mono - white and greys for dark charts
- Custom - unlocks every manual color picker
Switching a theme repaints the range lines, targets, zones, labels, order blocks and panel text in one move. The range center line is white now instead of black, so it is finally visible on a dark chart.
ALERTS
Weekly, monthly, daily and custom projected high and low, top hash, bottom hash, price inside bullish block, price inside bearish block. All fire once per bar.
HOW TO USE IT
1. Intraday chart. Minute based timeframes are read directly from the chart resolution.
2. Set the session window in EST for your market. For index futures leave it at 19:00 to 02:45.
3. Start the day with three questions: which side of the range am i on, which side of the daily open am i on, how much of the average range is still unused.
4. Treat the upper and lower ADR targets as places to take risk off, not places to enter.
5. The range mid and the center mass lines are return levels, not continuation levels.
TECHNICAL NOTES
Higher timeframe data (daily, weekly, monthly, custom) is requested with lookahead enabled. That keeps the levels anchored on historical bars, but it also means this script is not suitable for bar by bar backtesting or for driving an automated strategy. It is a context drawing tool, not a simulation.
All drawing is anchored to bar time rather than bar index, so levels stay locked to the clock.
The "ADR Days" input is a leftover from the original and does not affect any calculation. The averaging length lives in "ADR period".
Nothing here is financial advice. The tool draws context, the decisions are yours.
Based on Dynamic Range Tool V1 by Black Box Trading. インジケーター

ICT Everything v2ICT Everything v2 is an open-source intraday charting toolkit for ICT-style time, liquidity, and displacement analysis.
The script combines related tools in one chart workflow. Sessions identify relevant trading windows, opening prices and prior-period levels provide liquidity context, gaps mark displacement areas, and SMT compares confirmed swings with a correlated market.
What it shows
London, New York, London Close, afternoon, Asia, and custom sessions
Midnight, New York, equities, afternoon, weekly, and monthly opening prices
CBDR, FLOUT, and Asia ranges with configurable standard-deviation extensions
Fair Value Gaps with consequent encroachment and fill handling
New Week and New Day Opening Gaps with optional midpoint lines
Previous week and previous month highs and lows
Confirmed-pivot SMT divergence against a comparison symbol
Day separators, day labels, session boxes, and selected confirmed-bar alerts
Why these tools are combined
The components share the same session and timezone context. This avoids building a chart from several unrelated scripts that may use different boundary definitions.
Sessions establish when activity occurs. Opening prices and prior-period levels mark reference liquidity. FVG, NWOG, and NDOG objects show displacement and reopening gaps. SMT adds relative-strength context by comparing the chart symbol with a correlated instrument over the same swing window.
This is a charting toolkit, not an entry system or strategy.
How to use it
The default configuration is intended for intraday charts. The script hides its drawings above a configurable ceiling, which defaults to 31 minutes.
The default timezone is New York and follows daylight-saving time automatically. Fixed UTC offsets are also available.
Most added modules are disabled by default. Enable only the features needed for the current analysis. Weekly and monthly opens, prior-period levels, FVGs, opening gaps, SMT, and session boxes can be enabled independently.
For SMT, select a positively correlated comparison symbol with similar trading hours. For example, NQ and ES generally provide cleaner comparisons than instruments with unrelated sessions.
Alerts use confirmed bars. TradingView alerts store the script version and settings that existed when the alert was created, so alerts should be recreated after a script update.
Boundary behavior
Continuous futures use locally captured evening-session boundaries for weekly and monthly opens. Crypto uses the standard UTC calendar boundaries: Monday 00:00 UTC for the week and the first day at 00:00 UTC for the month.
Broker sessions can differ, so users should verify opening levels against the instrument and feed they trade.
Meaningful changes in v2
The retained session and range foundation from the original script is credited below. V2 materially changes and extends that foundation with:
Pine Script v6 support
DST-aware New York session handling and additional timezone options
Reworked weekly and monthly boundaries for futures and crypto
Mechanical FVG, NWOG, and NDOG modules with bounded object retention
Previous week and month high/low tracking
Confirmed-pivot SMT using a same-window comparison method
Session-box and high-low rendering modes
Independent deviation counts for CBDR, FLOUT, and Asia
Confirmed-bar alerts for range breaks, gaps, and prior-period sweeps
Drawing cleanup and redraw changes that prevent stale objects and reduce unnecessary recalculation work
Open-source origin and credit
Based on ICT Everything by coldbrewrosh, formerly itsroshlol:
Contains code from ArdOfCrypto's ICT Index Futures Vertical Lines:
The original publication credited Shanxia as inspiration and thanked I_Am_ICT. Those acknowledgements are preserved.
This is an independently maintained derivative work. The credited authors do not endorse this publication. The source is published openly under the Mozilla Public License 2.0.
Limitations
This script does not predict market direction or promise trading performance. SMT depends on the selected comparison instrument and its available trading hours. Fixed-offset session choices do not adjust for daylight-saving time. Users remain responsible for confirming that the configured sessions match their market and data feed.
This publication is not affiliated with or endorsed by Inner Circle Trader, TradingView, or the credited authors. インジケーター

Range Compression Percentile - Hour RankedThis indicator gives no directional signal. It answers a single question: will the amplitude of the coming hours be large enough to be worth paying a round turn?
What makes it different
Intraday amplitude on a futures contract varies by a factor of 3 to 4 across the trading day. Any absolute threshold — "range below 50 points means compression" — therefore mostly measures what time it is, not the state of the market. A quiet 10:00 in New York and a busy 02:00 can show the same raw range while meaning opposite things.
This script ranks the current range as a percentile against the history of the same hour of the day. That hour-for-hour ranking is the part I have not seen elsewhere, and it is what makes the reading comparable at any time of day.
How it is calculated
The range of the last N bars (default 78, which is 6h30 on a 5-minute chart, one full RTH session) is measured as (highest high − lowest low) / close, expressed in basis points so it is comparable across instruments and across price levels.
Once per elapsed hour, that value is stored in a circular buffer belonging to that hour of the day. Each of the 24 hours keeps its own history, 120 observations by default — roughly six months of sessions.
The current range is then ranked against that hour's stored history. The result is a percentile from 0 to 100, plotted as a histogram and coloured by quintile.
A second reading divides the current range by a user-supplied round-turn cost, giving an amplitude-to-cost ratio.
What the measurements show
Tested on MNQ 5-minute data (12 months, 317 sessions) and GC 5-minute data (5.6 years, 1,737 sessions). Range of the following 2 hours, grouped by the quintile this indicator reports, computed causally — ranking only against hours already elapsed, exactly as the script does live:
MNQ: 39.3 / 43.4 / 47.0 / 53.8 / 64.4 bp from Q1 to Q5
GC: 35.2 / 37.9 / 41.0 / 44.2 / 59.8 bp from Q1 to Q5
Monotonic on both instruments. The bottom quintile runs at roughly 0.6x the amplitude of the top quintile.
The effect also survives a control for the last hour's range, which is the amplitude predictor already widely known: adding the compression indicator to a regression already containing the one-hour range gives it a coefficient of −10.65 bp (t = −8.65) on MNQ and −4.58 bp (t = −7.27) on gold, with hour-of-day fixed effects and standard errors clustered by session.
The result runs against the common belief. Compression does not announce expansion here. It announces more quiet.
What it does not do
It carries no directional information, and I would rather state that plainly than let the histogram suggest otherwise. On the same samples, the signed return of the 2 hours following a compression is indistinguishable from zero (MNQ −0.47 bp, t = −0.55). A range breakout traded as a symmetric bracket loses about the same amount whether traded with the break or against it (−0.241 R versus −0.258 R) — two opposite directions losing the same amount is what no information looks like.
Use it to decide whether conditions are worth trading, never which way.
How to use it
Bottom quintile (red, below 20): the next hours are likely to stay quieter than usual for this time of day. Fixed costs buy less movement.
Top quintile (green, above 80): wide amplitude relative to this hour.
The amplitude-to-cost ratio is the absolute check, and it is independent of the percentile. A market can be compressed for its hour and still offer plenty of room. Both readings are shown because they answer different questions.
Settings
Range window: number of bars in the measured range. 78 is the value the effect was measured on.
Closed bars only: freezes the range on the previous bar so the value stops moving inside the forming bar.
Reference time zone: used only to split the day into hours.
Observations kept per hour, and minimum before displaying: control how much history is required before a percentile is shown.
Round-turn cost in basis points: commission plus slippage against notional. Reference points measured on micro futures: MNQ 0.98, MES 1.89, MYM 2.06, MGC 3.00 to 3.44 depending on the price of gold. This figure depends on price and is never constant over time, so it is an input rather than a constant.
Notes and limitations
No repainting. The percentile is computed only against hours that are over and closed.
The indicator needs history before it displays anything: 20 observations for a given hour by default, so about 20 sessions.
The numbers quoted above come from two instruments over the periods stated. They are measurements on that data, not a guarantee of future behaviour.
Designed and measured on 5-minute futures charts. On other timeframes or asset classes the window length should be reconsidered. インジケーター

Trading Sessions [EDGE]Trading Sessions .
A continental trading-session engine that marks the four global sessions - Pacific, Asia, Europe, USA - in both Forex and Stocks mode, and shows at a glance which session is live, how long until each one opens or closes, and where price sits relative to each session open. Built for intraday traders who structure the day around session opens and want a single, timezone-correct view of the session clock.
How it works:
Every session is defined in the local business hours of its region and detected with an IANA timezone name (Australia/Sydney, Asia/Tokyo, Europe/London, America/New_York), so daylight-saving transitions are resolved automatically - the windows shift with each region's own clock and never need a manual seasonal adjustment. Detection is restricted to Monday through Friday. Two market modes share the same four continental sessions with hours native to each market type: in Forex mode they map to the Sydney, Tokyo, London and New York dealing desks; in Stocks mode they map to the region's anchor cash market - ASX Sydney (Pacific), a combined Tokyo/Hong Kong window (Asia), LSE London (Europe) and NYSE/Nasdaq (USA).
For each active session the script tracks a live high and low, drawing a range box that updates every bar and a horizontal line at the session open. The dashboard reads live clock time in each session's own timezone, so its open and close countdowns stay correct through every daylight-saving change, and it reports each session open price together with the current price's signed percent distance from it. All context is anchored to price - session boxes and open lines - plus the dashboard; there is no background shading.
What it calculates:
- Session state - which continental sessions are open right now, marked with a dot and a session-colored row in the dashboard
- Countdown - time until each session opens (when closed) or closes (when running), in the session's own timezone
- Session range box - the live high-to-low band of each session, kept on the chart as a prior-session reference
- Session open price - the price at which each session opened, shown in the dashboard
- Open Δ% - the current price change from the session open as a signed percent, green above the open and red below
- Session open line - a horizontal level at each session open, a widely watched institutional reference for retests
- Europe/USA overlap flag (Forex) - a dashboard note during the four-hour overlap, the deepest liquidity window of the day
Key features:
- Two market modes - Forex and Stocks - selectable from a single input, each with its own native session hours
- Four continental sessions - Pacific, Asia, Europe, USA - with per-session visibility toggles and editable hours
- Automatic daylight-saving handling through IANA timezones; no manual seasonal switching
- Combined Asia stock session spanning Tokyo and Hong Kong as one continuous window
- Live dashboard with active-session highlighting, per-session open/close countdowns, session open price and the signed percent change from it, with configurable position and text size
- Session range boxes and session open price lines, both fully colorable, with a configurable history depth to limit chart clutter
- Alerts for every session open and close, plus the Europe/USA overlap start
- Intraday-only operation with a clear on-panel notice on daily and higher timeframes
Who it's for:
Intraday and short-horizon traders who structure the day around session opens - Asia-range and London-breakout players, New York-open traders, and index or futures traders who track the Pacific-to-USA handover. The tool answers the questions that matter at the open: which session is driving price now, how long until the next one turns over, and how far price has travelled from each session open - a clean, timezone-correct session clock without the visual noise of overlapping session tools. インジケーター

Session Stats I EonMetrics Session Stats by EonMetrics
Every market has session folklore: "Asia is quiet", "London sweeps the overnight range", "the New York morning makes the high or low of the day". This tool replaces the folklore with numbers — it measures how each session has actually behaved on YOUR symbol, on YOUR chart's history, and shows the result in one table.
🔶 WHAT THIS TOOL IS AND IS NOT
This is a statistics dashboard, not a signal generator. It draws no entries, no targets, and it does not predict anything. It counts what already happened, so you can judge whether a session tendency on your instrument is real or imagined. All statistics are computed from completed sessions on confirmed bars. The only element that moves intrabar is the TODAY row, which is clearly labeled LIVE while a session is still open.
🔶 WHY THESE METRICS ARE ONE SCRIPT, NOT SEVERAL
Every row of the table answers the same single question — "what does this session usually do here?" — from a different side: how much it moves (range), where it sits in the day's structure (high/low of day), which way it leans (bull close, continuation), and how much participation it carries (volume share). Splitting these apart would leave each number without the context that makes it readable. The TODAY row then compares the current session against that same measured history, which is only possible because the history and the live reading live in one engine.
🔶 WHAT IT MEASURES
For up to four configurable sessions (defaults: Asia, London, NY AM, NY PM — New York time), over up to 500 stored trading days:
- Days (n) — the sample size behind every number in that column. Small samples (under ~20) are flagged in orange, because statistics on a handful of days are weak. If a number matters to you, check its n first.
- Avg Range and Median Range — the session's range expressed as a percent of the daily ATR, so quiet and violent weeks can be averaged together honestly. The median is shown next to the average on purpose: one news day can inflate an average, but it cannot drag a median. A big gap between the two tells you the session's "typical" day is calmer than its average suggests.
- High of Day / Low of Day — how often the session contained the trading day's extreme. A star marks the most frequent session in each row.
- Bull Close — how often the session closed above its open. Near 50% means no directional lean worth talking about.
- Continuation — how often the session repeated the direction of its own previous occurrence. Above 50%: the session tends to continue its behavior day over day; below: it tends to alternate.
- Vol Share — the session's average share of the whole trading day's volume.
- TODAY — the current session's range as a percent of daily ATR, plus its percentile within that session's own history. "62% (88th)" reads: today's London has already covered 62% of a normal day's range, which is larger than 88% of past Londons in the sample.
A weekday filter (Mon-Sun checkboxes) restricts the whole sample to the days you care about — Fridays only, weekdays only, and so on.
🔶 HOW THE NUMBERS ARE BUILT
-------------------------
The trading day rolls over at 18:00 in the selected session timezone, so the Asia session that opens in the evening belongs to the day it actually shapes. The daily ATR used for normalization is built internally from those same trading days (previous completed days only), which keeps the "day" definition consistent on 24/7 markets and means the ATR value is fixed for the whole current day. The script uses no higher-timeframe data requests. Session records are written once, when the session completes on a confirmed bar, and never change afterwards.
🔶 HOW TO USE IT
1. Add it to an intraday chart (1-minute to 1-hour). Let the chart load as much history as your plan allows — more history, bigger sample.
2. Check the Days (n) row first. Then read the table column by column: which session moves, which one sets the day's extremes, which one leans.
3. Use the TODAY row during the session: a high percentile early in the window tells you this session is already unusual relative to its own history.
4. Two alerts are available: one fires when any tracked session closes, one when the live session's range first reaches your chosen percentile (default 90th) of its own history.
🔶 SETTINGS
Four session slots (on/off, name, window, color), session timezone, sample depth, daily ATR length, weekday filter, optional rows (median, continuation, volume share), table position/size/theme, background tint of the active session, and the alert percentile.
🔶 LIMITATIONS
Session statistics describe the past; they are tendencies, not guarantees, and they can change when market conditions change. On symbols without meaningful volume data the Vol Share row will be empty. The tool needs an intraday chart — on daily and higher timeframes there are no bars inside a session window to measure.
This tool is for analysis and education. It is not financial advice, and past behavior of a session does not guarantee its future behavior. Always do your own analysis and manage your own risk.
インジケーター

Time-Based Range Sweep (DTR)SUGGESTED TITLE
Time-Based Range Sweep (TBRS)
SHORT TITLE
TBRS
---
OVERVIEW
Time-Based Range Sweep builds a price range from two user-defined intraday time windows, waits for price to sweep one side of that range after the window closes, and then looks for a specific reversal confirmation before marking an entry, a stop area, and a target area.
The idea behind it is simple: a fixed block of time produces a high and a low. Once that block is finished, those two levels sit on the chart as reference liquidity. Price often runs one side of them before moving in the opposite direction. This script automates the bookkeeping around that sequence — drawing the range, flagging which side was swept, waiting for a confirmation you select, and projecting the resulting levels forward so you are not measuring them by hand.
Each range is independent and each range produces at most one signal per day.
---
HOW IT WORKS
1. RANGE CONSTRUCTION
Two session windows can be enabled independently. Both are interpreted in a timezone you choose (default America/New_York), so the ranges stay anchored to the same clock time regardless of your chart's display timezone.
While a window is open, the script tracks the running highest high and lowest low of every bar inside it, drawing a live box and two solid boundary lines that expand as the window develops. When the window closes, the box is finalized, and dotted or dashed projection lines carry the high and the low forward for a configurable number of bars. Optional labels mark the range title, TBR RANGE HIGH, and TBR RANGE LOW.
Defaults are 01:12–02:12 and 08:12–09:12 New York time, but both windows are fully editable — any two intraday blocks can be used.
2. SWEEP DETECTION
Sweep logic only becomes active after the window has closed. The first bar that trades beyond either boundary is registered as the sweep for that range:
- A bar trading below the range low is a low sweep, which sets a long bias.
- A bar trading above the range high is a high sweep, which sets a short bias.
"Sweep must reclaim range" is on by default. With it enabled, a wick through the level is not enough — the bar must also close back inside the range for the sweep to count, which filters out bars that simply break the level and keep going. Turning it off accepts any penetration of the boundary.
Only the first sweep after each window is used. Once a side has been taken, the range stops looking for further sweeps until the next session.
3. CONFIRMATION MODELS
After a sweep is registered, the script waits for one of three confirmations. You pick which one is active, or choose Any Confirmation and take whichever appears first.
3 Candle Reversal — After the sweep, the script counts consecutive bars closing against the anticipated direction (down closes following a low sweep, up closes following a high sweep) and records the high and low of that sequence. The counter resets if the run is broken before it reaches three. Once at least three have accumulated, the signal fires on a close beyond the sequence extreme — above the sequence high for longs, below the sequence low for shorts.
CISD — A close through the three-bar structural extreme: above the highest high of the previous three bars for longs, below the lowest low of the previous three bars for shorts.
IFVG — A displacement gap in the direction of the bias. For longs, the current bar's low prints above the high from two bars back; for shorts, the current bar's high prints below the low from two bars back.
All confirmations are evaluated on confirmed bar closes, so signals do not appear and disappear intrabar.
4. STOP PLACEMENT
When a signal fires, the stop reference is the most recent confirmed swing pivot that formed at or after the sweep bar — a pivot low for longs, a pivot high for shorts. Pivot strictness is set by the left and right bar inputs.
Because a confirmed pivot requires a fixed number of bars on both sides, fast setups can trigger before one exists. In that case the script falls back to the lowest low or highest high over a configurable lookback. A tick buffer is then applied beyond whichever reference was used.
5. PROJECTION
Three objects are drawn forward from the confirmation bar for a set number of bars:
- Entry level — a horizontal line at the confirmation close, labeled with which confirmation produced it.
- Stop zone — a shaded area between the entry and the calculated stop.
- Target zone — a shaded area between the entry and the opposite side of the range. A long that came from a low sweep targets the range high; a short that came from a high sweep targets the range low.
The target zone is a reference for the measured objective of the setup, not a projection of where price will go.
---
SETTINGS
SESSIONS
- Show London range / Show New York range — enable each window independently.
- Range time — the time window for each range.
- Range label — text shown in the center of each finished box.
- Session timezone — IANA timezone used to interpret both windows.
- Projection bars — how far entry, stop, and target objects extend.
- Extended range line bars — how far the dotted or dashed boundary lines extend past the window.
SWEEP AND CONFIRMATION
- Confirmation mode — 3 Candle Reversal, IFVG, CISD, or Any Confirmation.
- Sweep must reclaim range — require a close back inside the range for a valid sweep.
- Pivot left bars / Pivot right bars — swing strictness for stop placement.
- Stop fallback lookback — used when no confirmed pivot exists between sweep and entry.
- Stop buffer ticks — additional distance beyond the stop reference.
VISUALS
- Entry markers with independent long and short colors and five size options.
- Toggles for target and stop zones, range labels, entry level, and entry type text.
- Label vertical offset and label size.
STYLE
- Colors for range fill, range border, target zone, stop zone, and entry level.
- Extended line style: dotted or dashed.
---
HOW TO USE IT
Set both windows to the time blocks you actually trade and confirm the session timezone matches how you think about those times. The defaults are New York time, so a window entered as 01:12–02:12 is 01:12 New York regardless of where your chart is set.
Intraday timeframes are required, and the timeframe should divide cleanly into the window length so the range is built from a sensible number of bars. A 60-minute window on a 1, 3, 5, or 15 minute chart works; the same window on a 4-hour chart does not.
Start with a single confirmation mode rather than Any Confirmation. The three models have different characteristics: 3 Candle Reversal is the slowest and requires a developed base, CISD is the most immediate, and IFVG requires visible displacement. Any Confirmation takes whichever fires first, which will usually be the fastest of the three.
Tune the pivot inputs to your timeframe. Wider pivot settings produce more meaningful swing stops but increase how often the fallback lookback is used instead.
---
ALERTS
Five alert conditions are available:
- London range confirmation long
- London range confirmation short
- New York range confirmation long
- New York range confirmation short
- Any range confirmation signal
Each fires on the close of the confirmation bar and includes ticker and interval placeholders.
---
NOTES AND LIMITATIONS
- One signal maximum per range per day. Once a range has produced a confirmation, it stops evaluating until the next session.
- Range boxes and boundary lines update live while a window is open. Signals, zones, and entry levels are drawn on confirmed closes only.
- Drawing objects are capped at 500 boxes, lines, and labels. On very long chart histories the oldest objects will be removed by TradingView automatically.
- Sessions are evaluated with the chart's own bars, so illiquid symbols with gaps inside a window may produce ranges built from very few bars.
- Stop and target areas are geometric references derived from the range and recent structure. They are not orders, not backtested results, and carry no assumption about outcome.
---
ORIGINALITY
This is an original implementation written from scratch in Pine Script v6. The individual concepts it draws on — session ranges, liquidity sweeps, change in state of delivery, and inverse fair value gaps — are widely discussed public trading concepts, and no claim of ownership is made over them. What this script contributes is the specific pipeline that links them: an arbitrary time-defined range, an optional reclaim-filtered first sweep, a selectable confirmation stage, a pivot-based stop with a lookback fallback, and a target anchored to the opposite range boundary — all handled per-session with independent state for two windows.
---
DISCLAIMER
This indicator is provided for educational and informational purposes. It does not produce financial advice, and nothing it draws should be treated as a recommendation to buy or sell. Signals are historical observations of price behavior and do not predict future movement. Test any tool thoroughly on your own instruments and timeframes before risking capital, and manage your own risk.
インジケーター

Watermark ProWatermark Pro
Watermark Pro is a visual chart annotation and context overlay designed to help traders document and review their TradingView charts more clearly.
The script does not generate trade signals, does not provide buy or sell recommendations, and does not use price-based calculations to predict market direction. Its purpose is to display configurable chart context, review notes, session information, and optional checklist elements directly on the chart.
What the script does
Watermark Pro allows users to display selected contextual information on their chart, including:
* custom title and subtitle text
* optional user-defined note lines
* date information
* symbol and timeframe information
* optional exchange information
* optional session label
* optional footer note
* optional process checklist
* configurable text size, color, transparency, alignment, spacing, and position
This can help keep chart screenshots, reviews, trading journals, and educational examples more structured and easier to understand later.
How it works
The script uses TradingView table objects to place text-based information in selected chart areas. Users can choose where the main watermark and footer appear, adjust padding and spacing, and decide which elements should be visible.
The footer can show chart context such as the selected symbol, timeframe, date, and optional session label. The session label is determined from user-defined session times and a selected timezone. Users can configure sessions such as Asia, London, NY AM, NY Lunch, and NY PM.
The optional checklist mode lets users define their own process labels and assign simple status markers to each item. This can be used as a visual reminder for a personal review process, for example:
Context ✓ | Timing ✓ | Liquidity • | Entry • | Risk ✓
The checklist is manually configured by the user and does not evaluate market conditions automatically.
Templates and use cases
Watermark Pro includes several display templates to make setup easier:
* Custom: manual configuration
* Minimal: reduced chart context display
* Chart Notes: general note-taking layout
* Trading Journal: layout for trade documentation
* Education: layout for explanation and study charts
* Checklist: process checklist display
* Footer Only: compact chart context footer
* Review Mode: layout for post-trade analysis
These templates change which visual elements are displayed and provide neutral default text. Users can still adjust the content and layout manually.
Originality and usefulness
The script is not a trading signal indicator and is not intended to combine multiple technical indicators. Its usefulness comes from combining chart annotation, footer context, session labeling, and a configurable process checklist into one structured visual overlay.
Instead of only displaying a static watermark, the script provides a configurable documentation layer for chart review. This helps traders keep important non-signal information visible, such as symbol, timeframe, date, session context, and personal review notes.
Important limitations
Watermark Pro does not:
* generate entries or exits
* calculate trend direction
* detect support or resistance
* identify liquidity automatically
* provide alerts
* provide trading recommendations
* manage risk or position sizing
* guarantee improved trading performance
All text fields are manually configured by the user. The checklist is a visual process aid only and should not be interpreted as an automated trading decision system.
Intended purpose
Watermark Pro is intended as a chart documentation, review, and workflow overlay. It is designed to make charts easier to label, review, and understand without adding trade signals or predictive logic.
インジケーター

Trading Sessions and Kill ZonesTRADING SESSIONS AND KILL ZONES
Four trading sessions, three ICT kill zones and the previous day / week extremes
in one overlay — each one time-zone aware, so every region follows its own
daylight saving switch instead of drifting an hour twice a year.
--------------------------------------------------------------------------------
WHAT IT DRAWS
--------------------------------------------------------------------------------
SESSIONS
Every session is shown as a coloured background that spans its trading window
horizontally and the high-to-low range it produced vertically. The box grows bar
by bar while the session is running, so at any moment you can see the range that
has been built so far. There is no frame around the box — only the fill — which
keeps the candles readable when sessions overlap.
Four sessions are pre-configured and every one of them is fully editable:
Tokyo 09:00 - 16:00 Asia/Tokyo (Asian session, incl. Singapore)
London 08:00 - 16:30 Europe/London
New York 09:30 - 16:00 America/New_York (Indices)
08:00 - 17:00 America/New_York (Forex)
pre-London 08:00 - 09:00 Europe/Berlin (Frankfurt open)
The New York session has a dedicated switch for the two conventions that are
actually in use — 09:30 for index and equity traders, 08:00 for FX — instead of
forcing you to remember and retype the hours.
Optional per-session extras:
- Session name, centred above the box, in five text sizes
- Tick range of the session, printed under the box ("143 ticks")
- Average price of the session, drawn as a dashed line across the box
- Vertical opening and closing markers at the session boundaries
KILL ZONES
The three ICT kill zones are marked on top of the sessions with a horizontal
line on the high and a horizontal line on the low of the range the kill zone
produced, plus a name label. All three are drawn identically, so a glance is
enough to tell what you are looking at:
Asia KZ 09:00 - 13:00 Asia/Tokyo
London KZ 07:00 - 10:00 Europe/London
NY KZ 08:00 - 10:00 America/New_York
These are the familiar windows, expressed in the local time of the region they
belong to. London and New York observe daylight saving time, so a single local
window automatically produces the correct UTC window in both halves of the year:
London is 07:00-10:00 UTC in winter and 06:00-09:00 UTC in summer, New York is
13:00-15:00 UTC in winter and 12:00-14:00 UTC in summer. Tokyo does not observe
DST, so the Asian window is fixed — 09:00-13:00 JST equals 00:00-04:00 UTC. Set
it to 10:00-14:00 JST if you prefer the winter convention (01:00-05:00 UTC).
Name, window, time zone, colour, line width and the name label can be changed
per kill zone, and each one can be switched off individually.
PDH / PDL AND PWH / PWL
The previous day's high and low, and the previous week's high and low, can be
plotted as horizontal levels — the classic liquidity references.
What is different here: each level is anchored at the bar that actually created
it. The PDH line does not begin at midnight; it begins at the exact bar where
yesterday's high was printed, which means it visibly grows out of the session
box that produced it. High and low are anchored independently, so at a glance
you can see that, for example, yesterday's high came out of the Tokyo session
while the low was made in London. That context is lost when levels are simply
drawn from the start of the day.
Per level pair you can set: labels on or off, only the most recent period or the
full history, the colour, and where the line ends — at the current bar, at the
end of the day / week, or extended to the right edge of the chart.
--------------------------------------------------------------------------------
TIME ZONES AND DAYLIGHT SAVING
--------------------------------------------------------------------------------
Every session and every kill zone carries its own IANA time zone name rather
than a fixed UTC offset. Tokyo follows Japan, London follows the UK, New York
follows the US and pre-London follows Germany. Each region therefore switches on
its own DST date — including the two or three weeks in March and in October /
November when the United States and Europe are out of sync and a fixed-offset
indicator silently misplaces every box.
The mechanism is the same on historical bars as it is in real time, so what you
see in bar replay or in a backtest is what would have been shown live. Any other
IANA time zone works too, and fixed offsets such as UTC+2 are accepted if you
deliberately want a window that ignores DST.
--------------------------------------------------------------------------------
SKIP WEEKEND
--------------------------------------------------------------------------------
A single switch removes every session and kill zone that falls on a Saturday or
Sunday, judged in the time zone of the session concerned. On forex, futures and
equities this changes nothing, because those markets have no weekend bars. On
crypto and other round-the-clock symbols it stops the chart from showing a
"London session" on a Sunday afternoon.
--------------------------------------------------------------------------------
HOW TO USE IT
--------------------------------------------------------------------------------
- Session range breakouts. The Asian range is visible as a finished box by the
time London opens, so the levels that London trades against are already on the
chart. The same applies to the London range going into the New York open.
- Timing with kill zones. The kill zone lines mark the high and low of the
window where the day's directional move most often originates, so you can see
immediately whether price is still inside that range or has already taken one
side of it.
- Liquidity references. PDH / PDL and PWH / PWL are the obvious pools of resting
orders. Because the lines start where the level was created, you also get the
session context — a high made in thin Asian trade tends to behave differently
from one made during the New York open.
- Reading who moved the market. Coloured session backgrounds make it obvious
whether a move happened in Asia, in Europe or in the US, which is difficult to
reconstruct from candles alone once the chart is scrolled back.
- The Frankfurt hour. The pre-London box covers the hour before the London open,
a window that frequently sets the tone or produces the first sweep of the
Asian range.
- Backtesting and journaling. Turn on the tick range to record how large each
session actually was, and the average price line to see where the session
spent most of its time relative to its close.
--------------------------------------------------------------------------------
SETTINGS OVERVIEW
--------------------------------------------------------------------------------
General Session names on/off, opening and closing lines, tick range,
average price, name size, skip weekend
PDH / PDL On/off, labels, only last day, extend mode, colour
PWH / PWL On/off, labels, only last week, extend mode, colour
Sessions 1-4 On/off, displayed name, session time, time zone, colour
(New York: Indices / Forex switch instead of a time field)
Kill zones Names on/off, name size, line width
Kill zones 1-3 On/off, displayed name, window, time zone, colour
--------------------------------------------------------------------------------
NOTES AND LIMITATIONS
--------------------------------------------------------------------------------
- Sessions and kill zones require an intraday chart timeframe; they are not
drawn on daily and higher. PDH / PDL needs an intraday chart, PWH / PWL works
on intraday and daily.
- "Average price per session" is the mean of the typical price (high + low +
close) / 3 across the session's bars. It is a true average, not the midpoint
of the box, so it tells you where trading was concentrated rather than where
the range happened to be centred.
- TradingView limits a script to 500 boxes, lines and labels. On a very long
intraday history the oldest drawings are dropped automatically. Reduce the
number of active sessions, or the extras, if you need to look further back.
- Kill zone windows are conventions, not exchange schedules. The defaults follow
the widely used definitions, but they are inputs precisely because different
desks use slightly different hours.
- This is a visual framework, not a signal generator. It marks time and price
context; it does not tell you to buy or sell, and it contains no alerts.
--------------------------------------------------------------------------------
The settings layout was modelled on "Trading Sessions by @klmn1k from Trading
Volium", a closed-source script. No code was taken from it — this is an
independent implementation written from scratch in Pine Script v6, with the kill
zones, the weekend filter and the origin-anchored PDH / PDL / PWH / PWL added on
top.
Open source under the Mozilla Public License 2.0. Suggestions and corrections
are welcome.
インジケーター

ICT Killzones + Session Liquidity Levels [ForexCracked]🔵 OVERVIEW
Most killzone indicators shade the London and New York windows and stop there. This one uses the sessions as the starting point and then answers the question you actually open the chart for: which session highs and lows are still sitting there untaken, how deep price usually runs past a level like that when it does get taken, and whether the next session is even big enough to reach it.
Asia, London and New York are boxed with their ranges in pips. Every completed session leaves its high and low behind as a liquidity zone. The moment one gets swept it is deleted, so everything you can see is still in play.
🔵 THE ZONES ARE BANDS, NOT LINES, AND THE THICKNESS IS MEASURED
This is the part that is different. When a session high gets taken, price rarely stops exactly at it. It runs past, and how far it runs is a property of the symbol and the session, not a round number.
So the engine records the overshoot every single time a level of that session and side is taken, keeps the last forty, and draws the zone with a thickness equal to the median of those overshoots in ATR units. The upper edge of a pink zone is therefore a measured price: the level where the run past this kind of high has historically finished. Below eight recorded samples the zone falls back to a default height and the label says so, so you always know whether the number has anything behind it.
🔵 SESSION HANDOFF TALLIES
Under each Asia and London level is a count of what the sessions after it have actually done with levels like it.
An Asia high shows two counts: how often London swept it, and how often New York did. A London level shows what New York did with it. New York is the last session of the day, so its levels carry no handoff count, they are simply untapped until swept. The counts read like "LDN swept 34/60 sessions", counted price events from the chart in front of you with the sample size attached. On very low timeframes the chart does not hold 60 sessions, so n will be smaller. The label always shows the real n.
🔵 THE FORWARD ENVELOPE
Right of the last bar, the session that has not opened yet is drawn as a dashed box, sized by the median range of that session over its recent history, with both edge prices labelled.
That is there to keep you honest about distance. An untapped Asia high forty pips above price means something different when London's median range is seventy pips than when it is thirty. The envelope shows you which situation you are in before you plan the trade.
🔵 WHAT IS ON THE CHART
• Navy session boxes for Asia, London and New York, each labelled with its range in pips
• A faint tint over the London and New York killzone windows
• Pink zones for liquidity above price, teal for liquidity below, each with its price, its distance, its measured depth, and, on Asia and London levels, its handoff tallies
• A dashed forward envelope for the next session, with edge prices
• A compact panel: the live session, today's ranges against their medians, how many levels are untapped each side, and the nearest one
🔵 HOW TO USE
• Read the untapped levels as destinations, not entries. They are where resting orders sit, which is where price is often drawn.
• Use the far edge of the zone for invalidation. That edge is the measured median overshoot, so a stop just beyond it sits past where the run usually finishes rather than at a round number inside it.
• Check the forward envelope before you commit to a level as a target. If the level sits outside the next session's median range, reaching it is the exception rather than the expectation.
• Treat the handoff tally as base rate, not prediction. Thirty-four out of sixty tells you it is close to a coin flip. Fifty out of sixty tells you something much stronger about that symbol.
• Set your own session hours. The defaults are the common GMT windows, but the timezone dropdown and the three session inputs let you match your broker or your own killzone definitions.
🔵 SETTINGS
• Intraday only, 4H or faster. Sessions have no meaning on daily bars, and the script says so on the chart if you try
• Timezone, and the three session windows (defaults are Asia 0000-0800, London 0800-1600, New York 1300-2100 GMT)
• Skip weekend sessions in statistics (default on): on 24/7 symbols the quiet weekend sessions still draw their levels, but they stay out of the medians and tallies so they do not drag the numbers down
• Two killzone windows, shaded faintly, defaulting to the London and New York opens
• Statistics window: how many completed sessions the medians and tallies are counted over
• Minimum zone height in ATR, so a zone never becomes too thin to see on a small chart
• Days of session boxes to keep, untapped levels per side, dashboard position, colours
🔵 ALERTS
• A session opens, or a killzone opens
• An untapped session level is swept
• Price comes within a quarter of an ATR of the nearest untapped level
⚠️ DISCLAIMER
"ICT" is used here as the community vocabulary for killzones and session liquidity concepts. This script is independent work and is not affiliated with or endorsed by Inner Circle Trader.
The tallies and median depths are counted descriptions of what has already happened on this symbol, not forecasts. A level that has been taken fifty out of sixty times can hold today. Sample sizes vary by symbol and timeframe and small samples are unreliable by nature. Nothing here is a trade signal. Results depend on market conditions, settings, and your own execution and risk management. Shared for educational and research purposes. Not financial advice. インジケーター

Sessions - New York, London & AsiaOVERVIEW
This indicator draws price range boxes for the main trading sessions (Asia, London/Europe, and New York) and an optional full-day box with daily high/low labels and open/close lines. It is a chart-context tool: it shows where price traded during each session window, not buy/sell signals.
PURPOSE / WHY THIS EXISTS
Many traders need a clear visual of:
1) which session produced the day’s high or low,
2) how large the session range was,
3) how sessions overlap (for example London–New York),
4) and where the daily open sits relative to those ranges.
This script combines three session range boxes with a daily structure layer (00:00–24:00 in a fixed timezone). The components are meant to work together so you can read session behavior against the same day’s overall range without stacking several separate scripts.
WHAT IT DOES
• Asia session box — tracks high/low while the Asia window is open; freezes the box when the session ends.
• London (Europe) session box — same logic for the London window.
• New York session box — same logic for the RTH-style New York window.
• Daily box — full calendar day high/low in the same timezone.
• Daily high/low labels — marks the bar time of the daily high and low.
• Optional daily open and close/last lines with labels.
Sessions are only drawn on intraday charts. On daily and higher timeframes, session boxes are disabled (the daily layer can still apply depending on your settings).
DEFAULT SESSION TIMES
All times use the America/New_York timezone (TradingView handles daylight saving for that zone). Defaults can be edited in the inputs:
• Asia: 20:00–05:00
• London (Europe): 03:00–12:00
• New York: 09:30–16:00
Overlaps are intentional. For example, Asia and London can share a morning window, and London and New York share a large mid-day window. The boxes stack so you can see concurrency visually.
HOW IT WORKS (CONCEPT)
1) Session membership
For each session, the script checks whether the current bar’s time falls inside the configured session string, evaluated in America/New_York.
2) Session start / end
• Session start: first bar that is inside the session after being outside.
• Session end: first bar that is outside the session after being inside.
3) Range tracking
While inside a session, the script updates running high and low from bar high/low. The live box left edge is the session start bar; the right edge follows the current bar. When the session ends, the box is fixed for that day/session instance and kept in an optional history list.
4) Daily layer
The daily open is taken from the 1D open of the symbol. Daily high/low are tracked from bar values until the New York calendar day changes, then the previous day is finalized as a historical daily box (if enabled).
5) Object limits
History depth is capped by internal safety limits so the chart does not exceed TradingView drawing object limits on low timeframes.
HOW TO USE IT
Typical workflow on a 1m–15m chart:
1) Load the symbol you trade (indices, FX, metals, etc.).
2) Keep default session times if your process is U.S.-anchored; otherwise edit the three session inputs.
3) Use GLOBAL visibility toggles if you only need one or two sessions on screen.
4) Compare the current New York (or London) box size to recent historical boxes of the same color — this is visual context for range expansion/contraction, not a trade rule by itself.
5) Use daily high/low labels to see whether extremes printed in Asia, London, or New York.
6) Use open/close lines if you track acceptance above/below the daily open as part of your own rules.
Suggested reading order on any day:
Daily structure first (open, D Hi, D Lo) → then session boxes → then your own entry method (structure, levels, etc.). This script does not define entries, stop-loss, or take-profit.
INPUTS (MAIN GROUPS)
• Session time strings and colors for Asia / London / New York.
• Per-session show historical vs current boxes; outline-only options.
• GLOBAL toggles for each session.
• Daily box: historical and current day display.
• Daily high/low labels and colors.
• Daily open/close lines and their labels.
COLORS (DEFAULT IDEA)
• Asia — yellow tones
• London — blue tones
• New York — red tones
• Daily — lime tones
Colors are customizable so you can match your chart theme.
WHAT THIS SCRIPT IS NOT
• Not a strategy and not a signal generator.
• Not a guarantee of profitable trades or future price direction.
• Not a replacement for risk management or a complete trading plan.
• Session times are conventions (liquidity-focused windows), not a claim that one session is inherently “better” to trade.
TIPS FOR A CLEAN CHART
• Publish/use with this script alone on the chart for clarity.
• Prefer outline-only if fills feel heavy.
• Reduce historical session display if the chart becomes crowded.
LIMITATIONS
• Session logic depends on the bar timeframe: on higher intraday TFs, box edges align to those bars, not tick-perfect open/close of the clock window.
• Some symbols have thin overnight liquidity; box size then reflects that microstructure, not “quality” of a setup.
• Past session ranges do not predict the next session’s range.
DISCLAIMER
This tool Sessions - New York, London & Asia is for educational charting and visual analysis only. Markets involve risk. Past behavior on a chart does not guarantee future results. Always validate any idea on your own charts and risk parameters. インジケーター

Grid Ranges+ (M1D)Grid Ranges+ (M1D)
A grid-range framework for the New York trading day. It draws the higher-timeframe levels that frame the current range, divides any range you choose into quadrants, octants or sixteenths, boxes the three trading sessions, and reads the 12AM–2AM algorithmic range for aid in a directional bias.
Every session window is evaluated in America/New York regardless of the time zone the chart is viewed from, and every window is an input.
HOW IT IS BUILT
Levels are anchored to the candle that formed them. A higher-timeframe data request returns the value of a period's high but not the bar that made it. This script tracks each period's extremes on the chart instead, along with the bar time of each, so a previous-day high begins at the candle that set it rather than at the moment the number changed. The trade-off is that a period only reports once its opening bar is inside loaded history; where it is not, the level stays hidden rather than anchoring to a bar that did not set it.
Week and month boundaries derive from the New York day stamp, not from a weekly timeframe change, which is unreliable on futures instruments.
The swing pair is kept alternating. Pivot-high and pivot-low detection are independent of each other, so a chart can print several highs with no qualifying low between them. A pivot on the same side as the stored one replaces it only when it is more extreme, while a pivot on the opposite side begins the next leg. Without that rule, a recent high pairs with a low from a different move and the two do not describe one leg.
WHAT IT DRAWS
Levels.
Previous month, previous week, previous day and three-day highs and lows, the previous day's equilibrium, and the midnight open. Each line runs from its origin candle to a fixed right-hand edge and carries its name at that end, on the same eye-line as the price it names. Names that would otherwise print on top of each other move right into a second column rather than off their own line.
The grid.
A range bounded by any two of those levels, selected from two dropdowns and oriented automatically, divided into quadrants, octants or sixteenths. It begins at the earlier of the two origin candles. The midline is labelled EQ, and quarter fractions are reduced to lowest terms. A fraction is suppressed wherever a level already names that price, so no price carries two names.
Sessions.
Asia, London and New York as boxes that grow with each session's own high and low and freeze when the window closes. The caption sits below the box at the session open. Each session carries its own day mask.
The bias.
The 12AM–2AM algorithmic range as a box, and a console reading BULLISH, BEARISH, INVALIDATED or UNSET. A sweep clearing both the range boundary and the midnight open inside the sweep window, followed by a confirmed close back inside the range, arms a directional read. A confirmed close back through the swept extreme invalidates it, after which the opposite side may arm. Three alert conditions cover those transitions.
SETTINGS
Grouped as-
Time windows, Sessions, Bias engine, Grid range, Levels shown, Level styling and Labels.
Every level carries its own colour, line style, line width and label offset. The grid carries its own colour, style, width, interior transparency and equilibrium colour. Every session window is an input with a New York default and its own day mask, and session boxes carry their own colours and fill transparency.
NOTES
Nothing extends to the right edge of the chart. Every line stops a set number of bars past the live candle, and its label sits at that end.
Current-day and swing anchors move as the session develops, so a grid anchored to them redraws live. A grid anchored to completed periods does not.
Display toggles gate drawing only. Hiding an element never stops it being tracked, so the bias read is unaffected by what is on screen.
Grid boundaries are not drawn by the grid by default. A boundary is the anchor level itself, which already draws its own line from its own origin candle.
Disclaimer-
This script is a charting tool. It is not financial advice, and it makes no claim about where price will go. インジケーター

AlgoStorm Institutional Session Structure (ISS)AlgoStorm Institutional Session Structure (ISS)
A complete intraday auction-structure engine that maps global session boxes (Asia, London, New York), the Globex overnight range, the Initial Balance with day-type extension targets, the Opening Range, and an automated overnight-inventory classification of the RTH open — directly onto your intraday charts.
The AlgoStorm Institutional Session Structure (ISS) indicator is designed for index futures and intraday traders who read the market through the auction lens: where overnight inventory built, whether the open printed inside or outside that inventory, whether the Initial Balance is containing rotation or the day is extending toward trend, and which session built the reference high or low everyone now trades against. It answers those questions structurally instead of drawing decorative boxes.
TIMEFRAME REQUIREMENT — READ BEFORE LOADING
This is an intraday tool. It refuses to run on 1D charts and above, and the chart timeframe should stay at or below the Opening Range length (the Opening Range and Initial Balance locks resolve at bar granularity). All session windows are DST-aware through a configurable IANA timezone, defaulting to New York time.
Technical Architecture: Fixed-Pool Session Engine
Session-structure indicators commonly rebuild their drawings on every bar, bloating chart performance and churning objects. ISS uses a different execution model:
Per-Session Box Engines: Each session runs its own tracking engine with a private box history. The active box updates its high/low boundary in place as the session develops; boxes older than the history cap (default five days, configurable to twenty) are evicted automatically.
Time-Window Lock Pipeline: The overnight range, Initial Balance, and Opening Range each accumulate in staging registers, then lock permanently the moment their window closes — the overnight at the RTH open, the IB and OR when their configurable minute-windows complete. Locked levels cannot move for the rest of the day.
Extension Mathematics: Extension targets use the classic day-type formula, extension(m) = IB low + m × IB range above the market and IB high − m × IB range below it, with 1.5× and 2.0× defaults. A 1.5× tag means price has traveled 150% of the IB range from the opposite IB boundary.
Zero-Churn Drawing Pool: Every level line and label is created exactly once at initialization and repositioned in place afterward. No per-bar create/delete cycles, no garbage-collection artifacts.
Label Anti-Overlap Engine: Right-edge labels (ON, IB, extensions, OR) are sorted by price each bar and automatically spaced apart whenever two or more sit within a configurable minimum gap (default 0.05% of price). Level lines always stay locked to the true price — only the label text position shifts to stay readable. On by default; fully optional.
Confirmed-Bar Alert Gate: Every alert condition is gated on confirmed bar closes inside RTH. Nothing repaints, and no alert can fire intra-bar and then vanish.
Features & Functionality
Session Boxes: Asia, London, and New York boxes with running high/low, dotted session-open line, and session label. Defaults cover the full sessions (18:00–03:00, 03:00–09:30, 09:30–16:00 New York time); killzone-style alternatives are documented in the input tooltips.
Overnight Range Lock: Globex high/low accumulated through the overnight window and held through the trading day — the reference frame for gap and inventory reads.
Initial Balance + Extension Targets: First 60 minutes of RTH (configurable 15–120) with configurable extension multiples for day-type classification: containment inside the IB, 1.5× tests, or 2× trend extension.
Opening Range: First 15 minutes of RTH (configurable 1–60) — the breakout reference for the open drive.
Overnight Inventory Read: At the RTH open, the engine classifies the print: above the ON high, upper half of the ON range, lower half, or below the ON low — the gap-risk context before the first rotation completes.
Session State Table: Active session, ON high/low, open-vs-ON classification, IB range (shows "forming…" while building, then the locked H/L) with a separate breakout status (inside IB vs. breakout ▲/▼), OR range and status, and which IB extensions have been tested — the whole auction state in one glance.
Alert Suite: Eight conditions — Opening Range breakout up/down, Initial Balance breakout up/down, overnight high/low break, and upper/lower reach of the second IB extension multiple (default 2.0×, trend-day behavior). The first multiple (default 1.5×) is tracked live in the state table but does not carry its own alert.
Honest limitations: ISS is structural context, not a signal system — no entries, no exits, no arrows . Intraday levels draw for the current day only by design; historical context comes from the session boxes. If you also run our Institutional Key Levels (IKL) script, keep IKL's Initial Balance, Opening Range, and Overnight toggles off so nothing double-plots — ISS is the time-anchored view, IKL is the right-edge level strip.
Open-source under CC BY-NC-SA 4.0. Educational tool — not financial advice. インジケーター

Session Liquidity Architecture [MQLSoftware]Session Liquidity Architecture reads the trading day as a repeating structure of sessions — and instead of restating fixed session folklore, it measures how the instrument on your chart actually behaves inside that structure.
Most session tools draw boxes and stop there. This indicator adds three algorithmic elements on top of the session-box base, and every number it prints is derived from the chart's own history.
Key Features
Self-calibrating session range model — every completed session range is ranked as a percentile of that session's own trailing distribution. The active session shows a live read: current range, % of its median, and the percentile it has already reached. No pip or point thresholds, no magic numbers — the model adapts to any symbol and timeframe by construction.
Session liquidity state machine — each session's High and Low arm at session close and are then tracked through explicit states: armed → swept → rejected or accepted. A sweep is only registered on a confirmed bar; the rejection read compares the sweep bar's close against the level. Levels that survive until the next same-session open are marked expired.
Measured base rates — the panel reports observed frequencies from the loaded history: how often London actually sweeps the Asia High or Low on this chart, how often New York sweeps the London extremes, and how often price closes back inside after each sweep. These are counted events with the sample size shown (n), not assumptions — and below a minimum sample the panel says "collecting" instead of quoting a percentage.
Three configurable sessions (Asia, London, New York) with per-session IANA timezones, so daylight-saving shifts are handled automatically.
Previous Day High / Low tracked through the same armed → swept state machine.
Day separators, per-session colors, and a compact statistics panel.
Core Concept — what is original here
Session boxes are common. The original contribution of this script is that it treats the session map as a measurement problem :
1. Percentile-ranked session ranges. A "big" or "quiet" session is only meaningful relative to that session's own recent distribution. Ranking the live range against the last N completed ranges of the same session produces a self-calibrating expansion read that works identically on FX majors, indices, or crypto — without any instrument-specific settings.
2. A liquidity state machine instead of static lines. Session extremes are treated as objects with a lifecycle (armed, swept, rejected/accepted, expired). Because state transitions happen only on confirmed bars, the sweep history you see on the chart is exactly the history the statistics are built from.
3. Base rates instead of narratives. The common claims about session behavior ("London takes out the Asia range", "the sweep reverses") become testable numbers here. A counted event is strictly defined: a sweep is the first confirmed-bar break of an armed level while the later session is active, and it counts as "rejected" when the sweep bar closes back inside the level. On some instruments the measured frequencies are strongly asymmetric; on others (for example 24/7 crypto) they hover near a coin flip — and the panel will honestly show you that. The point is to replace assumption with measurement on the exact chart you trade.
Anatomy of the Display
Session boxes — one box per session per day, labelled with the session name; completed boxes append the final range and its percentile (e.g. "LONDON 0.00421 · P63").
Level lines — each session's High/Low extends right from the moment it arms at session close. A red ✕ mark shows where it was swept. Untouched levels turn dotted when they expire at the next same-session open.
PDH / PDL — dashed lines for the previous day's extremes, same sweep marking.
Statistics panel — one row per session (live or last range + percentile, and the state of its levels; states shown during a live session are prefixed "prev" because they belong to the previous cycle), followed by the measured base-rate block with sample sizes.
Notes on Repainting
Sweep events, rejection reads, base-rate counters and all alerts fire on confirmed bars only and do not repaint.
Session boxes, the live range and the live percentile update intrabar while a session is open — they are visual context for the current session, not signals.
No security() calls, no lookahead: everything is computed from the chart's own bars.
Boxes and level lines are drawing objects anchored to past bars by design (a session box spans its session, a level line starts at the bar of the extreme). This affects only how history is displayed, never the event logic.
Typical Analysis Workflow
Check the panel: how much of its typical range has the active session already used? A session at 40% of median is quiet by its own history; one at P90 has already been unusually wide for that session. These numbers describe the distribution so far — they do not predict what the next bar will do.
Watch the armed levels from the prior session and the previous day: they are the objective reference points the state machine is tracking.
When a sweep prints, read the rejection/acceptance tag and compare it with the measured base rate for that exact scenario on this chart.
Configuration
Session hours and timezone per session (defaults: Tokyo 09:00–18:00 JST, London 08:00–17:00 UK, New York 09:30–16:00 ET). Futures/FX traders can widen them or repurpose a slot as a killzone.
Rendering depth, box transparency, day separators, PDH/PDL on/off.
Sweep marks: Minimal (small ✕ text) or Pill, and how many days of marks to keep.
Stats lookback (sessions) for the percentile model; panel position and text size.
Markets and Timeframes
Intraday timeframes only (the script tells you if the chart is not intraday). Best readability from 5m to 1h. Works on FX, indices, futures, stocks and crypto — on 24/7 markets the session definitions matter more than the defaults, so adjust the hours to your venue.
Alerts
Liquidity swept — any session extreme or PDH/PDL taken (confirmed bar). The alert() message names the exact level and outcome, e.g. "EURUSD 60 — liquidity swept: ASIA H (rejected)".
Session range expansion — the active session crossed the 80th percentile of its own history.
Session opened.
This is a visual analytical tool for chart reading and session-structure context. It does not generate buy/sell signals, does not execute trades, and does not provide financial advice. インジケーター

ICT Sessions & Killzones [JOAT]ICT Sessions and Killzones
Maps the trading day into sessions and killzones, then shows where each session's liquidity rests and when the next session raids it.
What it is
Intraday price is organised by time: different sessions have different behaviour, and each one leaves liquidity that the next session hunts. This indicator frames when the market is active and where that liquidity sits, so the raids become obvious in advance. It is an original session-mapping tool built around the widely-taught concept of session killzones and inter-session liquidity.
How it works
• Session boxes — Asia, London, New York AM and New York PM are each boxed from their own high to their own low across their clock window. The box is that session's realised range, and its edges are the liquidity the following sessions tend to seek.
• Liquidity lines — every completed session leaves its high and low as thin levels extended to the right. Resting buy-side liquidity sits at the highs, sell-side at the lows, each labelled.
• Sweeps — when a later session trades through a prior session's high or low, that raid is tagged, marking where stops were likely taken.
• Classic reference levels — the previous day's high and low and the midnight open are drawn as the anchor points this style of analysis leans on.
• Bias read — a simple, transparent read from the midnight open and the most recent killzone sweep-and-reclaim prints an understated directional tag. This tool is about mapping context and timing; it deliberately shows direction rather than full trade management.
The dashboard
An adjustable session-clock panel shows which session is currently active, the countdown context of the day, the most recent liquidity event, the current bias, and the reference levels in play, so the state of the day is readable at a glance.
How to use it
• Set the session windows and timezone to your market.
• Watch for a session to sweep the prior session's high or low and then reclaim — that is the timing this map is built to highlight.
• Use it as a context and timing layer beneath your own entry method, or alongside a structure or entry tool.
Settings
Session windows and timezone, which sessions and reference levels to display, sweep marking, bias options, plus full visual and dashboard controls.
Originality and usefulness
The contribution is a single, coherent map of session ranges, inter-session liquidity, sweeps and classic reference levels, with a transparent bias read — assembled so a trader can see the day's liquidity structure and timing without cluttering the chart. Everything evaluates on confirmed bars and does not repaint.
Notes and limitations
• Session times depend on the timezone and the instrument's trading hours; set them correctly for your market.
• The bias read is intentionally simple context, not a standalone trade signal.
• This tool maps liquidity and timing; it does not place stops or targets for you.
• Educational and analytical tool, not financial advice.
— made with passion by officialjackofalltrades
インジケーター

Futures Session TWAP + Bands - CFD ChartsAn anchored TWAP (time-weighted average price) with 1/2/3-sigma bands that
knows when the real market is actually open — built for CFD and cash-index
charts whose 24h quotes distort classic session averages.
What makes it original: a TWAP weighs every bar equally, so on a 24h CFD chart
the thin overnight bars count as much as the liquid session and drag the line
away from the number execution desks reference. This indicator pulls the
volume of the auto-detected futures contract and uses it as a SESSION GATE:
only bars where the future actually traded are counted. It also plots an
optional futures-volume VWAP on the same anchor, so the TWAP-vs-VWAP spread
becomes readable at a glance — that spread is the point of the pair.
How it works:
- TWAP = equal-weight average of the chart's price (hlc3 by default) over the
anchor period (session/week/month); bands from the time-weighted variance.
- Session gate (optional, on by default): bars without futures volume are
skipped, so the TWAP covers the real trading session. Only session/volume
information is borrowed from the future — the price stays this chart's
price, so the futures-vs-cash basis cannot distort the level.
- The futures contract is auto-detected from the chart symbol (DAX/GER40 ->
FDAX, NAS100 -> NQ, US30 -> YM, UK100 -> Z, US500 -> ES), or set manually.
- Optional "Daily anchor = futures trading day" resets at the futures day
change instead of CFD broker midnight, matching the sibling VWAP tool.
- A status label shows the active source, the gate state and the current
VWAP-minus-TWAP spread.
How to use it: the TWAP is the fair time-average of the session — the line an
evenly-sliced execution would achieve. Compare it with the futures-volume
VWAP: VWAP above TWAP means volume was concentrated above the time average
(participants paid up), VWAP below TWAP means volume traded below it. The two
lines glued together signals balanced rotation; a widening spread marks
one-sided participation. The 2/3-sigma bands frame statistically stretched
zones relative to the session mean. Check the status label once after loading
to confirm the futures feed is active.
*This script is part of a consistent set of open-source session, range and
volume tools — the companions are on my profile.* インジケーター

ICT Everything Pro @SafarTradesICT Everything Pro
ICT Everything Pro consolidates multiple ICT time-based references into a single configurable indicator, allowing traders to monitor sessions, opening prices, key time markers, and higher timeframe reference levels without cluttering the chart or switching between multiple scripts.
Designed for intraday traders, the indicator centralizes the market timing concepts commonly used within the ICT methodology while providing extensive customization to match individual workflows.
Sessions
Display and customize the major trading sessions including Asia, London, AM, PM, London Close, and New York Lunch. Sessions can be displayed individually, highlighted using different styles, and limited to the current day or current week depending on your workflow.
CBDR, Asia & FLOUT
Visualize ICT session ranges including CBDR, Asia, and FLOUT. Each range supports independent visibility, colors, labels, and session definitions.
Time Markers
Display important ICT reference times using customizable vertical markers, including:
Midnight
London Open
New York Open
Equities Open
Each marker supports independent color, style, and width settings.
Opening Price Levels
Project important opening prices directly onto the chart, including:
Midnight Open
New York Open
Equities Open
Afternoon Open
RTH Open
Daily 50% Level
Each level supports customizable extensions, labels, colors, styles, and visibility.
Higher Timeframe Opening Levels
Optionally display Weekly and Monthly opening prices to maintain higher timeframe context while executing on lower timeframes.
Labels
Display day-of-week labels and a customizable chart label to improve chart organization and quickly identify trading sessions.
Customization
Every module can be configured independently, including:
Timezone selection
Session visibility
Session styles
Opening price extensions
Vertical line styling
Colors and labels
Historical display options
Higher timeframe opening levels
Intended Use
ICT Everything Pro is designed for traders who want a centralized ICT workspace without relying on multiple individual indicators. By combining session visualization, opening prices, higher timeframe references, and key time markers into a single configurable tool, it provides a cleaner and more efficient environment for market analysis and execution. インジケーター
