World Sessions & Countdown [AFD]
Which session is actually running right now, and how many bars are left in it?
Every session tool on the shelf draws the same coloured stripes. Almost all of them are built on a fixed UTC offset, which means twice a year they are quietly an hour wrong and nothing on the chart says so. The highest-profile clock script in the niche states plainly in its own description that it requires manual UTC offset adjustment at each changeover.
World Sessions is anchored to IANA time zone names instead - Europe/London, America/New_York, Asia/Tokyo, Australia/Sydney. Each window follows its own city's daylight-saving policy, on its own, with nothing for you to adjust. The script draws a rectangle around each session's own bars rather than a full-height stripe, a separate rectangle wherever sessions overlap, and a dashboard that tells you what time it is in all four cities and how much of the
current session is left.
Why the time zone thing matters
14 January - London GMT, New York EST - overlap 15:00-17:00 UTC, two hours.
25 March - London BST, New York EDT - overlap 14:00-17:00 UTC, three hours.
15 July - London BST, New York EDT - overlap 14:00-16:00 UTC, two hours.
28 October - London GMT, New York EDT - overlap 14:00-17:00 UTC, three hours.
A fixed-offset script prints one identical row for all four. The late-October row is the one that bites: Europe has left summer time and the United States has not, so the two cities are five hours apart instead of the usual four, and every band built on a captured offset is an hour wrong for that week.
This is a statement about how the script resolves time. It says nothing about volatility, liquidity, or what you should do with any of it.
At a glance
Session boxes - one rectangle per session RUN, spanning that run's own high and low, not a full-height stripe.
Overlap box - a separate rectangle over the bars two or more sessions share, carrying its own composite name.
IANA time zones - each session follows its own city's daylight-saving policy, with no UTC offset to maintain.
Bars left in session - not minutes, BARS, on your current timeframe.
Dashboard - each session's hours, its city's live clock, an open/closed dot, a progress bar, and the countdown to its next boundary.
Five sessions - Sydney, Tokyo, London, New York, and one Custom slot of your own.
New York hours - regular, extended-equities, or CME Globex, chosen automatically from the symbol or forced by hand.
Eight alerts - four session opens, all sessions closed, overlap start, N seconds to bar close, and last bar of session.
Appearance - fill, four gradient depths in two directions, border transparency, width and style, or outline-only.
One box per run, not one box per chart
A session's rectangle is bounded by that session's run, identified by the instant that run closes, and not by a stretch of bars on which the session happened to be live. The distinction is not academic. On a regular-hours US chart every bar is inside New York's 09:30-16:00 window, so a liveness-based tool never sees New York stop being live: it opens one rectangle on the first
bar of history and never closes it, washing the entire chart in one color. This product drew exactly that defect once, and the lifecycle is now keyed on the run instead. You get one box per day, with clean gaps between them.
A box is a session's EXTENT, not a level. It has a top and a bottom and that is where the resemblance to a zone tool stops - no line is drawn at either edge, no edge is labelled or alerted with a price, and nothing downstream reads one.
The overlap box
Two or more enabled sessions running at once get their own rectangle over the shared bars, spanning the high and low of those bars only, and it carries the name of the sessions that actually made it - TOKYO + LONDON, LONDON + NEW YORK.
One color at any depth, deliberately: Sydney, Tokyo and London genuinely stack three deep, and a per-pair colour scheme has no honest answer for a three-way overlap.
Overlap only is the shipped default, so out of the box the chart draws the overlap rectangle and nothing else. On a chart with no overlap running that means no rectangles at all - the intended state, not a fault. Set Overlap to Highlight overlap to see every session box alongside it, or Off for session boxes with no overlap rectangle.
Every session is named exactly once. Where the overlap box is drawn it carries the joint name, so a session's own name centres on the bars it held ALONE. A session that is never alone shows no separate name, because it has already been named.
The dashboard
Per session - a colour chip, the name, an open/closed dot, that session's own hours, the current wall clock in its city (marked +1 or -1 when the city is on another date), a progress bar, and OPENS IN or CLOSES IN to its next boundary. The open session's row is tinted in its own color and its name set bold.
Two kinds of time, on purpose - LOCAL, the dot, PROGRESS and NEXT are real-world clock readings and stay current on a weekend, on a scrolled-back chart, and in Bar Replay. BAR CLOSE is a property of the bar in front of you and shows an em dash on anything but a genuinely live bar, because a countdown to the close of a bar that has already closed cannot mean what it says.
BARS LEFT keeps counting where BAR CLOSE cannot, because one is a bar-structure count and the other is a clock reading. It names the session it is following. Both step green, then amber, then red as they run out.
The progress column always says something - the bar while a session runs, Not in session while it is closed, and No bars here when that session's window has no bars at all on the symbol you are looking at. Tokyo on a US regular-hours chart is the common case.
Position, background, grid lines, the outer frame and its width, one text size for the whole panel, and progress-bar width are all settings. The frame's Countdown mode makes it the same green-amber-red traffic light BARS LEFT carries.
Weekdays are digits, and the rule has a trap in it
Weekdays live in a field of their own, because input.session() renders two clock fields and no weekday picker. 1 is Sunday through 7 is Saturday, so the shipped '23456' is Monday to Friday.
They are not optional. A session string without them applies to EVERY day of the week - invisible on a stock chart, but on a 24/7 symbol it draws a London box straight through Saturday.
For a session that runs past midnight, the digits name the day it ENDS. PulseWire's own documented example is 1700-1700:23456, in which the Monday session starts Sunday at 17:00 and ends Monday at 17:00. So the CME Globex window here is 1800-1700 with the ordinary 23456 - Sunday evening through Friday afternoon, five sessions, the real Globex week. The intuitive-looking 12345 invents a Saturday-evening session that never trades and loses Thursday evening entirely.
Alerts
Sydney session open
Tokyo session open
London session open
New York session open
All sessions closed
Session overlap start
N seconds to bar close - the threshold is a user input, and 0 turns it off
Last bar of session - off by default
Create these from PulseWire's alert dialog. How often an alert re-fires while
its condition holds is set in that dialog, not in the script.
How to use it
Add it to an INTRADAY time-based chart. Boxes and session names need an intraday timeframe; the dashboard works on any timeframe, because its countdowns read the wall clock.
Leave Overlap on Overlap only for the overlap rectangle alone, or switch to Highlight overlap to see every session.
Turn off the sessions you do not follow. Set hours and weekday digits to match what you actually trade.
On a futures contract, check the New York hours group is on extended hours if the Globex window is the one you want boxed. Auto by symbol handles this for you on a real futures contract.
Everything else - fill, gradient depth and direction, border style, boxes kept, panel appearance - is a setting to configure once to taste.
What it deliberately does not do
It draws no zone and publishes no session high or low as a level. It offers no fixed UTC offset option, because a dropdown reading UTC-5 would let you silently break the one thing the product is for. It gives no arrows, no signals, and nothing about what price will do during any session. Educational chart context, not financial advice.
Data, timeframes and repainting
The script uses current chart data only. There are no request.security() calls, no higher-timeframe imports, and no lookahead of any kind.
A running session's box updates as new highs and lows print on the forming bar, and its right edge advances with the chart; it is final once that session's run has ended. Confirm the behaviour with the bar-replay tool on your own chart and timeframe before relying on it.
The dashboard's clock columns advance per tick. Pine provides no timer, so on a closed market - where no tick arrives - they hold at the last moment the script executed rather than ticking on by themselves. Scrolling, zooming, or changing any setting re-executes the script and brings them current. This is platform behaviour, not a setting.
Boxes and session names are intraday-only. On a daily or higher chart a session window is shorter than one bar, so they are not drawn.
Drawing history is bounded by Pine's limits. The source declares budgets of 500 boxes and 500 labels, and Session boxes kept is trimmed automatically to stay inside the box ceiling - a faded session costs one box per gradient step plus its outline.
Standard time-based candles. The session arithmetic reads chart time.
A running alert keeps the inputs, symbol and timeframe it was created with - recreate an alert after changing any of them.
Originality and credit
Other session tools draw stripes on a fixed offset. This one bounds each session run by its own high and low, names the overlap for the sessions that actually made it, resolves every window through an IANA time zone so it holds across daylight saving, and reports the one number the shelf does not carry - how many bars are left in the session you are in, on the timeframe you are on. Open source under the Mozilla Public License 2.0. (c) Auction Foundry.
Disclosure: this indicator describes session structure and elapsed time on the current chart. It is not a forecast, a signal, or financial advice. Indicator

Forex Sessions UTC + customise (DST Support)This Pine Script is designed to highlight forex trading sessions on a PulseWire chart, showing which session (Asia, London, New York, Frankfurt, Sydney) is active based on your selected timezone offset and daylight saving time (DST) settings. It also includes an option to highlight session overlaps, like the London-New York and Asia-London overlaps.
Let's break down the script in detail:
### 1. **Inputs**:
* **`timezoneOffset`**:
* This input allows you to select your local timezone offset in hours relative to UTC (e.g., -2 for UTC-2 or +3 for UTC+3). It helps adjust the session times based on your local time.
* **`isDST`**:
* A boolean input that determines if Daylight Saving Time (DST) is active or not. If DST is enabled, the session times will be adjusted by one hour.
### 2. **Function: `timeInDailyRange`**:
This function checks if the current time (bar) is within a given session's start and end time.
* **`startH, startM`**: Start time of the session (hours and minutes).
* **`endH, endM`**: End time of the session (hours and minutes).
* **`tzOffset`**: The timezone offset in hours (which adjusts the start and end times for different regions).
The function handles sessions that cross over midnight. For example, the Asia session starts at 23:00 UTC and ends at 07:00 UTC, so it checks if the current time falls within that period.
### 3. **Session Times (in UTC)**:
Each trading session has specific times defined in UTC:
* **Asia Session**: 23:00 UTC to 07:00 UTC
* **London Session**: 08:00 UTC to 16:00 UTC
* **New York Session**: 13:00 UTC to 21:00 UTC
* **Frankfurt Session**: 07:00 UTC to 15:00 UTC
* **Sydney Session**: 21:00 UTC to 05:00 UTC
These times are defined in 24-hour format, and they represent the opening and closing hours for each market.
The script uses specific colors to represent different sessions:
* **Asia**: Yellow (`asiaColor`)
* **London**: Red (`londonColor`)
* **New York**: Navy Blue (`nyColor`)
* **Frankfurt**: Blue (`frankfurtColor`)
* **Sydney**: Green (`sydneyColor`)
* **Overlaps**:
* London-NY overlap: Purple (`overlapLN`)
* Asia-London overlap: Orange (`overlapAL`)
These colors are used to highlight the background during active sessions.
### 5. **Session Highlighting**:
The script uses the `bgcolor` function to change the background color of the chart when a session is active.
* For each session, it checks whether the current time (bar) falls within the session's time range (adjusted by the `timezoneOffset`).
* If a session is active, it will highlight the chart background in the corresponding session color.
### 6. **Overlaps**:
* **London-NY Overlap**: The script checks if both the London session and the New York session are active at the same time (i.e., if their time ranges overlap). If so, it highlights the overlap area in purple.
* **Asia-London Overlap**: Similarly, the script checks if both the Asia and London sessions are active at the same time, and if so, it highlights the overlap area in orange.
### 7. **Daylight Saving Time (DST) Adjustment**:
* If the **`isDST`** flag is enabled (i.e., DST is active), the script adjusts the session start and end times by adding one hour to each session. This is because during DST, trading hours shift by one hour (usually in regions that observe DST).
* This adjustment is applied to all session times, so the script accounts for the time change and ensures that the session times are correctly displayed.
### 8. **Final Background Color Logic**:
* The `bgcolor` function checks whether each session is active by calling `timeInDailyRange` for each session and then colors the chart accordingly.
* It also checks for overlapping sessions and colors the chart with the appropriate overlap color.
### Example Scenario:
1. **Timezone Offset**: If you select `timezoneOffset = 3` (UTC+3), the session times will be adjusted by adding 3 hours to the start and end times.
2. **Daylight Saving Time (DST)**: If `isDST = true` is selected, the session start times will shift by 1 hour forward (e.g., 23:00 UTC becomes 00:00 UTC for Asia).
3. **Visual Outcome**: The chart will display different colors in the background depending on which trading session is active (e.g., red for London, navy for New York), and purple or orange for overlap sessions.
### Key Features:
* **Customizable Timezone Offset**: Adjust session times to reflect your local timezone.
* **Daylight Saving Time Support**: Automatically adjusts session times during DST.
* **Highlighting Sessions**: Color the chart background to visualize when different trading sessions are active.
* **Overlap Highlighting**: Highlights the periods when certain sessions overlap (London-NY, Asia-London).
In summary, this script is useful for traders who want to visually see when different forex trading sessions are active on the chart, with flexibility for timezone and DST adjustments.
Indicator

Sessions Lite [TradingFinder] New York, London, Asia, NYSE Forex🔵 Introduction
A trading session is one of the basic concepts in the financial market that refers to specific time periods. In fact, a session means hours during the day and night, during which traders in a certain part of the world conduct their transactions.
Although the "Forex" and "CFDs" market is open 24 hours a day and it is possible to trade in it, but in some hours the activity in this market decreases so much that many traders prefer not to trade and only watch the market. On the other hand, there are specific times when the market is very busy and dynamic, and many traders tend to trade during these hours of the day and night.
Trading sessions are usually divided into three main categories, which are "Asian", "European" and "North American" sessions. These trading sessions are also called the "Tokyo", "London" and "New York" sessions, respectively. But they also categorized these sessions in more detailed ways such as "Sydney session", "Shanghai session" or "NYSE session".
🔵 Tokyo trading session (Asian session)
After the weekend that happens on Saturday and Sunday, the Forex market starts with the Asian session. In this continent, most of the transactions are done in the Tokyo session, and for this reason, it is usually called the Asian session or the Tokyo session. However, other countries such as Australia, China and Singapore also do a lot of trading in this session.
The Tokyo session has a lower volume of transactions compared to the London and New York sessions, and therefore the liquidity is lower. In this session, most of the Forex currency pairs move in a price range. For this reason, different people use the ups and downs with the trading strategy in the range and get profit.
The low liquidity of the Tokyo session means that trading spreads are also higher during these hours. Besides, most of the transactions of this session are done in the early hours and at the same time as the planned news release.
In the Tokyo or Asia session, the best currency pairs to trade are the "Japanese yen", the "Australian dollar", and the "New Zealand dollar".
"Nikkei" index is also a good option for trading. If you trade in the Tokyo session, you should also be aware of the release of economic news and data from Australian, New Zealand and Japanese financial institutions.
🔵 London trading session (European session)
After the Asian session, it is time for the European session. In this period of time, transactions are very large and many European markets are involved. However, the European session is usually known as the London session.
Because of its specific time zone, London is not only known as the Forex trading center in Europe, but it is also known as the Forex trading center in the world. The London session overlaps with two other major trading sessions in the world, Asia and America. This means that most of the Forex transactions are done in this session. According to the latest statistics, 32% of Forex transactions are related to the London session, which shows that about a third of the activity performed in Forex takes place during this period.
This will increase the volume of Forex transactions and increase liquidity. An event that causes the spread of transactions to decrease. Of course, high liquidity also leads to greater volatility, which is desirable for many traders.
In the European session, the pound and euro currencies and the "DAX", "FTSE100", and "CAC40" indices are known as the best tradable assets. Also, traders of this session should pay attention to the news and data published by the "European Central Bank" and the "Bank of England". The news of countries like Germany, France and Italy are also very important.
🔵 American trading session (New York session)
When the New York session begins, several hours have passed since the end of the Tokyo session, but the European session is in the middle. In this session, they usually affect the financial activities carried out in America, but they also affect other countries such as Canada, Mexico and several South American countries.
The "US dollar" and stock indices such as "S&P", "Dow Jones" and "Nasdaq" are the most important assets that are traded in this session.
The early hours of the American session have a lot of liquidity and volatility due to the overlap with the European session, but with the end of the European session, the activity in the American session also decreases.
You can trade all major Forex currency pairs in the New York trading session. In this session, the "Federal Reserve", as the most important central bank in the world, is the institution that you should pay attention to its news and data.
The trading session indicator is an analytical tool in the financial markets that is used to display and analyze specific trading periods during a day. These indicators are generally useful for determining support and resistance levels during any trading session and for detecting different trading patterns.
For example, usually these indicators display the open and close price levels, the highest and lowest prices during a trading session. Also, you may notice various price patterns such as price channels, price phase phases and market trend changes during different trading sessions using these indicators.
🔵 cause of construction
In particular, the session light indicator version is designed and built for those traders who use many different tools on their chart at the same time. These traders can include "Volume Traders", "ICT traders", "Day Traders" and... These individuals can use "Session Lite" without disturbing the display of their other trading tools such as "Order Blocks", "Liquidity", "Zigzag", "FVG" etc.
But in general, there are several reasons for making tools like trading session indicators in financial markets, some of which include the following :
1. Analysis of specific time frames : Some traders and investors like to consider specific time frames for price analysis and review. For example, analyzing price changes during each trading session can help analyze trading patterns and identify trading opportunities.
2. Recognize different price patterns : Different price patterns may be observed during trading sessions. Trading session indicators can help to make better trading decisions by analyzing these patterns and their strengths and weaknesses.
3. Identifying Support and Resistance Levels : These tools may help to identify support and resistance levels during any trading session which can be helpful in deciding whether to enter or exit the market.
🔵 How to use
The Session Lite indicator displays 8 sessions by default. Asia session, Sydney session, Tokyo session, Shanghai session, Europe session, London session, New York session and New York Stock Exchange (NYSE) session are the sessions that are displayed.
You can activate or deactivate the display of each session by using the tick button next to the name of each session.
Two gray vertical dashes are also displayed by default, which indicate the beginning of the European session and the New York session. This feature is available for all sessions, but it is enabled by default only for these two sessions, and you can activate it for the rest of the session. You can enable or disable the display of this line by using the Start Session tick key.
Likewise, the information table is displayed by default, which includes the open or closed information of each session and the start and end times of each session. These timings are based on the UTC time zone.
Accordingly, the schedule of trading sessions is as follows :
Asia session from 23:00 to 06:00
Sydney session from 23:00 to 05:00
Tokyo session from 00:00 to 00:06
Shanghai session from 01:30 to 06:57
European session from 07:00 to 16:30
London session from 08:00 to 16:30
New York session from 13:00 to 22:00
New York Stock Exchange (NYSE) session from 14:30 to T 22:00
Important note : the beginning of the European session coincides with the opening of the Frankfurt market.
🔵 Settings
• In the settings section, there are customization capabilities according to the type of use of each user. The settings related to showing or not showing the box of each session, the start indicator of each session, setting the start and end time of the session and choosing the desired color to display each session are among the things that can be set from this section.
• At the end of the settings, you will see the "Info Table" option; By disabling this option, the "sessions" clock table displayed on the upper right side will be disabled.
Indicator

Indicator

Indicator
