OPEN-SOURCE SCRIPT
Sessions, Killzones & HTF Levels

Sessions, Killzones & HTF Levels
Overview
All-in-one ICT-style session and levels indicator for futures and forex. Highlights trading sessions and killzones as background colors, tracks session highs/lows with dotted reference lines, and draws previous period high/low levels for daily, weekly, and hourly
timeframes.
Features
Trading Sessions (Asia, London, NY)
- Background color highlighting during each session window (no chart distortion)
- Distinct colors per session: Asia (purple), London (blue), NY (orange)
- Developing session high/low tracked in real-time with dotted lines and labels
- Lines extend a configurable number of bars after session close (default 15)
- All session times configurable in Eastern Time (DST-aware)
ICT Killzones (5 zones)
- Asian KZ (20:00-00:00), London KZ (02:00-05:00), NY AM (08:30-11:00), NY Lunch (11:00-13:00), NY PM (13:00-16:00)
- Ultra-light background highlighting that doesn't interfere with price action
- Each killzone independently toggleable — NY Lunch off by default
- All times configurable in ET
Previous Period High/Low Levels
- Previous Daily High/Low, Previous Weekly High/Low, Previous Hourly High/Low
- Drawn as dotted lines extending a configurable number of bars (default 15)
- Only shows fully closed period data — no developing/unconfirmed levels
- Auto-hides when chart timeframe exceeds the level's timeframe (e.g., daily levels hidden on weekly charts)
- Labeled: "Prev Daily High", "Prev Daily Low", "Prev Weekly High", etc.
Smart Defaults
- Configurable lookback window limits historical drawings to conserve TradingView object limits
- Timezone selector: Eastern Time (default), Central, or UTC
- All colors, transparency levels, and visibility toggles are fully configurable
- Inputs organized into logical groups: Sessions, Killzones, HTF Levels, General
Inputs
Sessions: Show/hide per session, session time windows, colors, box transparency (92%), H/L line transparency (40%), H/L extension bars (15)
Killzones: Show/hide per killzone, time windows, colors, box transparency (95%)
HTF Levels: Show/hide per level pair (Daily, Weekly, Hourly), colors per pair, line transparency (20%), extension bars (15)
General: Max days back (5), timezone selector
How It Works
Sessions are detected using PineScript's time() function with configurable session strings in the selected timezone. When a session is active, the chart background is tinted with the session's color. Session highs and lows are tracked bar-by-bar during the session, then
frozen and extended as dotted reference lines after the session closes.
Killzones use the same background highlighting approach. They are purely time-based windows with no H/L tracking — designed to show you when the high-probability trading windows are active.
HTF Levels use request.security() to fetch the previous completed candle's high and low from daily, weekly, and hourly timeframes. The indicator uses barmerge.lookahead_off to guarantee that only fully closed candle data is displayed — you will never see levels from a
developing/unconfirmed period. Levels are automatically hidden when the chart timeframe is equal to or higher than the level's timeframe.
Usage Tips
- Use session backgrounds to quickly identify which session you're trading in
- Session H/L lines serve as intraday support/resistance levels
- Killzone backgrounds highlight the highest-probability windows for ICT setups
- Previous Daily and Weekly highs/lows are key liquidity levels — watch for sweeps
- Combine with the FVG and Order Flow indicators for a complete ICT toolkit
- Increase "Max days back" if you want more historical session drawings (watch the 500 object limit)
Session Times (defaults, all ET)
┌─────────────┬───────┬───────┐
│ Session/KZ │ Start │ End │
├─────────────┼───────┼───────┤
│ Asia │ 20:00 │ 00:00 │
├─────────────┼───────┼───────┤
│ London │ 02:00 │ 05:00 │
├─────────────┼───────┼───────┤
│ NY │ 09:30 │ 12:00 │
├─────────────┼───────┼───────┤
│ Asian KZ │ 20:00 │ 00:00 │
├─────────────┼───────┼───────┤
│ London KZ │ 02:00 │ 05:00 │
├─────────────┼───────┼───────┤
│ NY AM KZ │ 08:30 │ 11:00 │
├─────────────┼───────┼───────┤
│ NY Lunch KZ │ 11:00 │ 13:00 │
├─────────────┼───────┼───────┤
│ NY PM KZ │ 13:00 │ 16:00 │
└─────────────┴───────┴───────┘
Overview
All-in-one ICT-style session and levels indicator for futures and forex. Highlights trading sessions and killzones as background colors, tracks session highs/lows with dotted reference lines, and draws previous period high/low levels for daily, weekly, and hourly
timeframes.
Features
Trading Sessions (Asia, London, NY)
- Background color highlighting during each session window (no chart distortion)
- Distinct colors per session: Asia (purple), London (blue), NY (orange)
- Developing session high/low tracked in real-time with dotted lines and labels
- Lines extend a configurable number of bars after session close (default 15)
- All session times configurable in Eastern Time (DST-aware)
ICT Killzones (5 zones)
- Asian KZ (20:00-00:00), London KZ (02:00-05:00), NY AM (08:30-11:00), NY Lunch (11:00-13:00), NY PM (13:00-16:00)
- Ultra-light background highlighting that doesn't interfere with price action
- Each killzone independently toggleable — NY Lunch off by default
- All times configurable in ET
Previous Period High/Low Levels
- Previous Daily High/Low, Previous Weekly High/Low, Previous Hourly High/Low
- Drawn as dotted lines extending a configurable number of bars (default 15)
- Only shows fully closed period data — no developing/unconfirmed levels
- Auto-hides when chart timeframe exceeds the level's timeframe (e.g., daily levels hidden on weekly charts)
- Labeled: "Prev Daily High", "Prev Daily Low", "Prev Weekly High", etc.
Smart Defaults
- Configurable lookback window limits historical drawings to conserve TradingView object limits
- Timezone selector: Eastern Time (default), Central, or UTC
- All colors, transparency levels, and visibility toggles are fully configurable
- Inputs organized into logical groups: Sessions, Killzones, HTF Levels, General
Inputs
Sessions: Show/hide per session, session time windows, colors, box transparency (92%), H/L line transparency (40%), H/L extension bars (15)
Killzones: Show/hide per killzone, time windows, colors, box transparency (95%)
HTF Levels: Show/hide per level pair (Daily, Weekly, Hourly), colors per pair, line transparency (20%), extension bars (15)
General: Max days back (5), timezone selector
How It Works
Sessions are detected using PineScript's time() function with configurable session strings in the selected timezone. When a session is active, the chart background is tinted with the session's color. Session highs and lows are tracked bar-by-bar during the session, then
frozen and extended as dotted reference lines after the session closes.
Killzones use the same background highlighting approach. They are purely time-based windows with no H/L tracking — designed to show you when the high-probability trading windows are active.
HTF Levels use request.security() to fetch the previous completed candle's high and low from daily, weekly, and hourly timeframes. The indicator uses barmerge.lookahead_off to guarantee that only fully closed candle data is displayed — you will never see levels from a
developing/unconfirmed period. Levels are automatically hidden when the chart timeframe is equal to or higher than the level's timeframe.
Usage Tips
- Use session backgrounds to quickly identify which session you're trading in
- Session H/L lines serve as intraday support/resistance levels
- Killzone backgrounds highlight the highest-probability windows for ICT setups
- Previous Daily and Weekly highs/lows are key liquidity levels — watch for sweeps
- Combine with the FVG and Order Flow indicators for a complete ICT toolkit
- Increase "Max days back" if you want more historical session drawings (watch the 500 object limit)
Session Times (defaults, all ET)
┌─────────────┬───────┬───────┐
│ Session/KZ │ Start │ End │
├─────────────┼───────┼───────┤
│ Asia │ 20:00 │ 00:00 │
├─────────────┼───────┼───────┤
│ London │ 02:00 │ 05:00 │
├─────────────┼───────┼───────┤
│ NY │ 09:30 │ 12:00 │
├─────────────┼───────┼───────┤
│ Asian KZ │ 20:00 │ 00:00 │
├─────────────┼───────┼───────┤
│ London KZ │ 02:00 │ 05:00 │
├─────────────┼───────┼───────┤
│ NY AM KZ │ 08:30 │ 11:00 │
├─────────────┼───────┼───────┤
│ NY Lunch KZ │ 11:00 │ 13:00 │
├─────────────┼───────┼───────┤
│ NY PM KZ │ 13:00 │ 16:00 │
└─────────────┴───────┴───────┘
Script de código aberto
Em verdadeiro espírito do TradingView, o criador deste script o tornou de código aberto, para que os traders possam revisar e verificar sua funcionalidade. Parabéns ao autor! Embora você possa usá-lo gratuitamente, lembre-se de que a republicação do código está sujeita às nossas Regras da Casa.
Aviso legal
As informações e publicações não se destinam a ser, e não constituem, conselhos ou recomendações financeiras, de investimento, comerciais ou de outro tipo fornecidos ou endossados pela TradingView. Leia mais nos Termos de Uso.
Script de código aberto
Em verdadeiro espírito do TradingView, o criador deste script o tornou de código aberto, para que os traders possam revisar e verificar sua funcionalidade. Parabéns ao autor! Embora você possa usá-lo gratuitamente, lembre-se de que a republicação do código está sujeita às nossas Regras da Casa.
Aviso legal
As informações e publicações não se destinam a ser, e não constituem, conselhos ou recomendações financeiras, de investimento, comerciais ou de outro tipo fornecidos ou endossados pela TradingView. Leia mais nos Termos de Uso.