OPEN-SOURCE SCRIPT
JonnyFutures IB Pro + Session Levels

JonnyFutures IB + Session Levels
a level-mapping tool. it builds your Initial Balance live as the first hour forms, tracks PDH/PDL, London, and Asia session ranges, and tells you — in real numbers — whether ES and NQ agree on which side broke first.
no signals, no arrows, no "buy here" nonsense. just the levels that matter and the math behind them.
What it plots:
**IB High / IB Low** — the running high and low of your Initial Balance window (default 9:30–10:30 AM ET). while the hour is forming, these lines update live, bar by bar, as price makes new extremes. once the hour closes, they lock and hold for the rest of the day.
**25% / 50% / 75%** — the IB range sliced into quarters. these update in real time right alongside the IB high/low while the hour is still forming, so you can see where the midpoint and quarter levels are sitting before the hour even closes.
**PDH / PDL** — yesterday's regular session high and low. fixed the moment the new trading day starts.
**London High / Low** — the prior completed London session's range (default 2:00–5:00 AM ET). locks in when London closes, holds through the entire next day.
**Asia High / Low** — the prior completed Asia session's range (default 6:00 PM–12:00 AM ET). same logic — locks at session close, holds until the next Asia session completes.
every line ends with a small dotted extension and a price-tagged label pushed to the right of live price, so nothing sits on top of your forming candles.
The table
top-right by default (movable in settings). shows:
- **CURRENT** — did your chart's symbol form the IB high or IB low first
- **COMPARE** — same read, but for the second symbol you set (ES/NQ pair)
- **ES/NQ MATCH** — MATCH if both instruments broke the same direction first, NO MATCH if they diverged, FORMING while the IB hour is still in progress
- exact IB high/low, PDH/PDL, London H/L, Asia H/L values
this is the confirmation piece. divergence between ES and NQ on which side prints first is a real tell — this puts it in front of you instead of making you eyeball two charts.
## setup
1. add to chart, works on any intraday timeframe — **5-minute or lower recommended.** on higher timeframes a single candle can contain both the IB high and low, which blurs which one actually came first.
2. in settings, set **Compare Symbol** to whichever of ES/NQ you're *not* charting. defaults to NQ (`CME_MINI:NQ1!`) — flip it to `CME_MINI:ES1!` if your chart is already NQ.
3. adjust session windows (IB, London, Asia) if you run different hours than the ICT-standard defaults.
4. **Label Offset** controls how far right the price tags sit — bump it up if you're zoomed out and labels still feel close to price.
## things to know
- IB and session boxes reset automatically at the start of each new NY trading day — you're never looking at stale levels.
- the ES/NQ comparison uses `request.security` to pull the same IB logic on the second symbol in real time, so both reads are apples-to-apples.
- London and Asia levels are the **previous completed session**, not the one currently forming — that's intentional, it's your reference range, not a live-forming box.
no edge in a level by itself. the edge is in how price reacts when it gets there. this just gives you the map.
execute your edge 🟦
a level-mapping tool. it builds your Initial Balance live as the first hour forms, tracks PDH/PDL, London, and Asia session ranges, and tells you — in real numbers — whether ES and NQ agree on which side broke first.
no signals, no arrows, no "buy here" nonsense. just the levels that matter and the math behind them.
What it plots:
**IB High / IB Low** — the running high and low of your Initial Balance window (default 9:30–10:30 AM ET). while the hour is forming, these lines update live, bar by bar, as price makes new extremes. once the hour closes, they lock and hold for the rest of the day.
**25% / 50% / 75%** — the IB range sliced into quarters. these update in real time right alongside the IB high/low while the hour is still forming, so you can see where the midpoint and quarter levels are sitting before the hour even closes.
**PDH / PDL** — yesterday's regular session high and low. fixed the moment the new trading day starts.
**London High / Low** — the prior completed London session's range (default 2:00–5:00 AM ET). locks in when London closes, holds through the entire next day.
**Asia High / Low** — the prior completed Asia session's range (default 6:00 PM–12:00 AM ET). same logic — locks at session close, holds until the next Asia session completes.
every line ends with a small dotted extension and a price-tagged label pushed to the right of live price, so nothing sits on top of your forming candles.
The table
top-right by default (movable in settings). shows:
- **CURRENT** — did your chart's symbol form the IB high or IB low first
- **COMPARE** — same read, but for the second symbol you set (ES/NQ pair)
- **ES/NQ MATCH** — MATCH if both instruments broke the same direction first, NO MATCH if they diverged, FORMING while the IB hour is still in progress
- exact IB high/low, PDH/PDL, London H/L, Asia H/L values
this is the confirmation piece. divergence between ES and NQ on which side prints first is a real tell — this puts it in front of you instead of making you eyeball two charts.
## setup
1. add to chart, works on any intraday timeframe — **5-minute or lower recommended.** on higher timeframes a single candle can contain both the IB high and low, which blurs which one actually came first.
2. in settings, set **Compare Symbol** to whichever of ES/NQ you're *not* charting. defaults to NQ (`CME_MINI:NQ1!`) — flip it to `CME_MINI:ES1!` if your chart is already NQ.
3. adjust session windows (IB, London, Asia) if you run different hours than the ICT-standard defaults.
4. **Label Offset** controls how far right the price tags sit — bump it up if you're zoomed out and labels still feel close to price.
## things to know
- IB and session boxes reset automatically at the start of each new NY trading day — you're never looking at stale levels.
- the ES/NQ comparison uses `request.security` to pull the same IB logic on the second symbol in real time, so both reads are apples-to-apples.
- London and Asia levels are the **previous completed session**, not the one currently forming — that's intentional, it's your reference range, not a live-forming box.
no edge in a level by itself. the edge is in how price reacts when it gets there. this just gives you the map.
execute your edge 🟦
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。