OPEN-SOURCE SCRIPT
Updated Sessions Suite [claysul]

Sessions Suite plots market sessions, previous day/week/month levels, daily/weekly/monthly open prices, customizable open prices, day of the week separator, and 90m cycles. Every feature can be toggled independently, with full customization over session times, labels, lines, and colors. All session times use the America/New_York timezone and automatically adjust for daylight savings time.
Sessions:
- Shaded session boxes are drawn for up to 5 fully customizable sessions. Defaults include Asia (6:00–12:00 AM EST), London (12:00–6:00 AM), NY AM (6:00 AM–12:00 PM), NY PM (12:00–6:00 PM), and NY Lunch (off by default). Each session's name, time range, and color are editable.
- Toggle session boxes on/off independently from lines and labels, allowing you to show only the high/low lines without the shaded boxes.
- Toggle session borders on/off.
- Optional max days limit to control how many days of session boxes are displayed.

Session boxes toggled off, with high and low set to max 1 day:

Mitigation:
Session high/low lines extend forward until price mitigates/touches the level, or until end of day.
- Option to extend unmitigated lines to the current bar, instead of stopping at EOD.
- Option to remove mitigated lines entirely. When enabled, lines and their labels are deleted from the chart once price reaches the level.
Session lines default to EOD:

Unmitigated session lines extended to current bar:

Mitigated lines removed (Extend Unmitigated Lines to Current Bar must be enabled):

Session Lines:
Horizontal lines drawn at each session's high and low. Customizable width, style (solid/dashed/dotted), and optional unified line color override if the user wants all lines to be one color. Optional max days limit to control how many days of lines and labels are displayed.
Session Labels:
Session labels mark the high and low of each session by default. There are 2 mode alignments: "Right of Line," where labels are placed on the right of high/low lines, or "Centered (Box)," where they are centered to the session box. Label placement can be set to "Above Line" (both labels above) or "Above / Below Line" (high labels above, low labels below). The user can choose to display high and low labels, high only, or low only. Label size is adjustable, and an optional unified color override if the user wants all labels to be one color.
Labels to right of line:

Labels centered to session box:

Labels centered, high only placement:

Session lines, no labels, no borders:

Label placement set to above/below line:

Previous Day, Week, and Month Levels:
- PDH / PDL- Previous Day High and Low, drawn from the bar where the high/low occurred.
- PD EQ- Previous Day Equilibrium (midpoint of PDH and PDL).
- PWH / PWL- Previous Week High and Low.
- PMH / PML- Previous Month High and Low.
Each level can be turned on/off, and the option to change color and line style. All levels extend to the right with labels.

Opening Prices:
Horizontal lines are drawn at key opening prices:
- Daily Open- resets each new trading day.
- Weekly Open- resets each new week.
- Monthly Open- resets each new month.
- 3 Custom Opens- fully configurable by hour and minute (EST). Defaults: 09:30 (market open), 00:00 (midnight), and 16:00 (RTH market close). Each have options to customize color, style, and turn on/off.

Day of Week Separator:
Optional vertical separator lines at the start of each trading day with day-of-week labels (MON, TUE, WED, THU, FRI). Configurable label color, separator color, position (top/bottom), and number of days to display.

90 Minute Cycles:
Shaded blocks that divides each of the four main sessions into 90 minute quarters based on Quarterly Theory:
- Asia Q1–Q4 (Q1: 6:00 - 7:30 PM EST, Q2: 7:30 - 9:00 PM, Q3: 9:00 - 10:30 PM, Q4: 10:30 PM - 12:00 AM
- London Q1–Q4 (Q1: 12:00 - 1:30 AM EST, Q2: 1:30 - 3:00 AM, Q3: 3:00 - 4:30 AM, Q4: 4:30 - 6:00 AM)
- NY AM Q1–Q4 (Q1: 6:00 - 7:30 AM EST, Q2: 7:30 - 9:00 AM, Q3: 9:00 - 10:30 AM, Q4: 10:30 AM - 12:00 PM)
- NY PM Q1–Q4 (Q1: 12:00 - 1:30 PM EST, Q2: 1:30 - 3:00 PM, Q3: 3:00 - 4:30 PM, Q4: 4:30 - 6:00 PM)
Toggle all quarters on/off with a single checkbox. Each quarter's name, time range, and box color are individually customizable. Options to change label size and toggle on/off cycle borders, labels, and unified label color override. Optional max days limit to control how many days of cycles are displayed.

Timeframe Awareness:
The indicator automatically adapts to higher timeframes:
- Intraday- shows everything: sessions, session lines, session labels, 90 minute cycles, PDH/PDL/PD EQ, PWH/PWL, PMH/PML, all opening prices, day of week separators, and custom opens.
- Daily- shows PDH/PDL/PD EQ, PWH/PWL, PMH/PML, and Daily/Weekly/Monthly opens.
- Weekly- shows Weekly and Monthly opens only.
- Monthly- shows Monthly open only.
Sessions:
- Shaded session boxes are drawn for up to 5 fully customizable sessions. Defaults include Asia (6:00–12:00 AM EST), London (12:00–6:00 AM), NY AM (6:00 AM–12:00 PM), NY PM (12:00–6:00 PM), and NY Lunch (off by default). Each session's name, time range, and color are editable.
- Toggle session boxes on/off independently from lines and labels, allowing you to show only the high/low lines without the shaded boxes.
- Toggle session borders on/off.
- Optional max days limit to control how many days of session boxes are displayed.
Session boxes toggled off, with high and low set to max 1 day:
Mitigation:
Session high/low lines extend forward until price mitigates/touches the level, or until end of day.
- Option to extend unmitigated lines to the current bar, instead of stopping at EOD.
- Option to remove mitigated lines entirely. When enabled, lines and their labels are deleted from the chart once price reaches the level.
Session lines default to EOD:
Unmitigated session lines extended to current bar:
Mitigated lines removed (Extend Unmitigated Lines to Current Bar must be enabled):
Session Lines:
Horizontal lines drawn at each session's high and low. Customizable width, style (solid/dashed/dotted), and optional unified line color override if the user wants all lines to be one color. Optional max days limit to control how many days of lines and labels are displayed.
Session Labels:
Session labels mark the high and low of each session by default. There are 2 mode alignments: "Right of Line," where labels are placed on the right of high/low lines, or "Centered (Box)," where they are centered to the session box. Label placement can be set to "Above Line" (both labels above) or "Above / Below Line" (high labels above, low labels below). The user can choose to display high and low labels, high only, or low only. Label size is adjustable, and an optional unified color override if the user wants all labels to be one color.
Labels to right of line:
Labels centered to session box:
Labels centered, high only placement:
Session lines, no labels, no borders:
Label placement set to above/below line:
Previous Day, Week, and Month Levels:
- PDH / PDL- Previous Day High and Low, drawn from the bar where the high/low occurred.
- PD EQ- Previous Day Equilibrium (midpoint of PDH and PDL).
- PWH / PWL- Previous Week High and Low.
- PMH / PML- Previous Month High and Low.
Each level can be turned on/off, and the option to change color and line style. All levels extend to the right with labels.
Opening Prices:
Horizontal lines are drawn at key opening prices:
- Daily Open- resets each new trading day.
- Weekly Open- resets each new week.
- Monthly Open- resets each new month.
- 3 Custom Opens- fully configurable by hour and minute (EST). Defaults: 09:30 (market open), 00:00 (midnight), and 16:00 (RTH market close). Each have options to customize color, style, and turn on/off.
Day of Week Separator:
Optional vertical separator lines at the start of each trading day with day-of-week labels (MON, TUE, WED, THU, FRI). Configurable label color, separator color, position (top/bottom), and number of days to display.
90 Minute Cycles:
Shaded blocks that divides each of the four main sessions into 90 minute quarters based on Quarterly Theory:
- Asia Q1–Q4 (Q1: 6:00 - 7:30 PM EST, Q2: 7:30 - 9:00 PM, Q3: 9:00 - 10:30 PM, Q4: 10:30 PM - 12:00 AM
- London Q1–Q4 (Q1: 12:00 - 1:30 AM EST, Q2: 1:30 - 3:00 AM, Q3: 3:00 - 4:30 AM, Q4: 4:30 - 6:00 AM)
- NY AM Q1–Q4 (Q1: 6:00 - 7:30 AM EST, Q2: 7:30 - 9:00 AM, Q3: 9:00 - 10:30 AM, Q4: 10:30 AM - 12:00 PM)
- NY PM Q1–Q4 (Q1: 12:00 - 1:30 PM EST, Q2: 1:30 - 3:00 PM, Q3: 3:00 - 4:30 PM, Q4: 4:30 - 6:00 PM)
Toggle all quarters on/off with a single checkbox. Each quarter's name, time range, and box color are individually customizable. Options to change label size and toggle on/off cycle borders, labels, and unified label color override. Optional max days limit to control how many days of cycles are displayed.
Timeframe Awareness:
The indicator automatically adapts to higher timeframes:
- Intraday- shows everything: sessions, session lines, session labels, 90 minute cycles, PDH/PDL/PD EQ, PWH/PWL, PMH/PML, all opening prices, day of week separators, and custom opens.
- Daily- shows PDH/PDL/PD EQ, PWH/PWL, PMH/PML, and Daily/Weekly/Monthly opens.
- Weekly- shows Weekly and Monthly opens only.
- Monthly- shows Monthly open only.
Release Notes
v2 Update:Opening Prices Redesigned:
- Custom open inputs now use the session time picker (clock icon).
- Each custom open now has an editable name field.
- A single "Custom Line Style" dropdown now controls the line style for all 3 custom opens.
Previous Day, Week, and Month Lines - Remove Mitigated Lines:
- Added a "Remove Mitigated Previous D/W/M Lines" toggle. When enabled, PDH, PDL, PWH, PWL, PMH, and PML lines and labels are automatically removed from the chart once price mitigates the level.
- PD EQ is excluded from mitigation and will remain on the chart regardless if "Remove Mitigated Previous D/W/M Lines" is toggled on.
Release Notes
v3 Update:New Day and Week Opening Gaps (NDOG / NWOG):
- Added NDOG (New Day Opening Gap)- draws a shaded zone between the previous day's close and the new day's open at 6:00 PM EST.
- Added NWOG (New Week Opening Gap)- draws a shaded zone between Friday's close and Sunday/Monday's open.
- Each gap includes an optional midline (equilibrium) with customizable color and style (solid/dashed/dotted).
- "Limit to Max Gaps" option to control how many gaps of each type are displayed (tracked independently per gap type).
- "Remove Mitigated Gaps" option- gaps are removed once price fills the entire gap (touches both top and bottom).
- On Sundays, NWOG takes priority over NDOG when both are enabled to prevent overlap.
Opening Price Overlap Prevention:
- Monthly Open label now takes priority over Weekly and Daily Open when they land on the same bar.
- Weekly Open label takes priority over Daily Open.
- Lower priority opens are automatically suppressed to prevent overlapping labels.
Previous Day/Week/Month Overlap Prevention:
- PMH/PML labels now takes priority over PWH/PWL and PDH/PDL when at the same exact price.
- PWH/PWL labels takes priority over PDH/PDL when at the same exact price.
- Lower priority levels are automatically suppressed to prevent overlapping labels.
Session Labels Section Redesigned:
- Added "Show Session Labels" toggle at the top for a quick on/off control.
- Removed "None" from the alignment dropdown- use the new toggle instead.
Release Notes
v4 Update:New Levels Added:
- Added PDC (Previous Day Close)- draws a line at the previous day's closing price.
- Added PW EQ (Previous Week Equilibrium)- draws a line at the midpoint of the previous week's high and low.
Added Day/Week/Month High and Low Labels to Session Lines:
- Added "Relabel Session H/L to Day/Week/Month High and Low" toggle. When enabled, session lines that match the previous day, week, or month high/low will be relabeled to "Day High", "Day Low", "Week High", "Week Low", "Month High", or "Month Low". Month labels take priority over week, which takes priority over day. Only applies to previous day session lines as current day session labels are not affected.
Expanded Custom Opening Prices:
- Added 4 new custom open time slots, bringing the total to 7 customizable open price lines.
- Added "Show Previous Custom Opens”- displays historical custom open price lines from up to 5 previous days.
- Added "Previous Custom Open Line Endpoint" dropdown- controls where previous open lines end: End of Day (5PM EST), Next Opening, or Current Bar.
Previous Custom Open Lines with “EOD” Endpoint Selection:
Previous Custom Open Lines with “Next Opening” Endpoint Selection:
Previous Custom Open Lines with “Current Bar” Endpoint Selection:
Previous Week/Month Lines Extended:
- PWH/PWL and PMH/PML lines now draw from the actual candle where the high/low occurred on higher timeframes (15m+). On lower timeframes where the candle is too far back, lines start from the beginning of the new week/month to prevent runtime errors.
Bug Fixes:
- Fixed runtime errors.
Release Notes
v5 Update:Previous Month High/Low Fix:
- Fixed PMH/PML displaying incorrect values on 1 minute charts. PMH/PML now shows accurate levels on all timeframes.
Release Notes
v6 Update:Bug Fixes:
- Day of Week separator line now anchors to a fixed 6PM EST (start of daily candle) instead of following the Asia session input. Users who set Asia open to a different time (e.g. 20:00) will no longer see the separator move with it.
- Mitigation EOD line snapping, custom-open EOD stamping, NDOG creation, and the session H/L → Day/Week/Month relabeling are all now anchored to fixed NY times (5PM EST EOD / 6PM EST new day) instead of the Asia session start.
New Features:
- Added "Show Session EQ (Equilibrium)" toggle (Sessions group). Draws a midline at each session updating live as the range expands. Style selector for Solid/Dashed/Dotted.
- Added "Use One Color for Session EQ" override. Defaults to each session's color; toggle on to apply a single color across all session EQ lines.
- Session EQ visibility follows the existing Limit Session Boxes to Max Days lookback.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.