Short answer: the most-boosted initial balance indicator on TradingView, LuxAlgo's Initial Balance Breakout Signals (7,749 boosts), judges its breakouts on the live candle, marks every cross and has no alerts. For the IB and its extensions on the right clock, start with IB First Hour by Jmorgan11: 09:30 to 10:30 on New York's named timezone, extensions at 0.5 and 1 IB. For breakout calls, Initial Balance Auction Intelligence by DGT is the only one of the eight that judges a completed window and sends alerts. Check its first call of each day.
Most lists name initial balance indicators.
This one reads them.
What we checked
The initial balance (IB) is the high and low of the session's first hour. Its extensions are levels at multiples of that range, drawn beyond the high and the low. How it differs from an opening range: initial balance vs opening range.
We used the search behind our ORB roundup: seven terms on TradingView on 27 October 2026, "initial balance" and "first hour range" among them, which returned 187 scripts. We took the eight most-boosted open-source scripts built on an initial balance, down to 1,001 boosts, and read every line that sets the window, draws a level or decides a signal. Five questions:
- The window: which hour, and is it an input?
- The clock: a named timezone such as New York, the exchange's time, or a fixed UTC offset?
- Extensions: which multiples of the IB's range does it draw?
- Signals: if it has any, are they decided on a closed candle or on the live one, and is there a stop?
- Numbers and alerts: what does its table count, and what can it send you?
One script in that range was skipped: Initial Balance - (IB) by sanjay_ramanathan (1,880 boosts) is protected, free to add with its code hidden, so we couldn't read it. The next open-source script, Initial Balance Volume Deficit [LuxAlgo] (898), falls below the cut.
None of the eight is a strategy, and none prints a trade result.
The table
Boosts as TradingView's search showed them on 27 October 2026.
| Script | Boosts | The IB, by default | Clock | Extensions, by default | Signals |
|---|---|---|---|---|---|
| Initial Balance Breakout Signals [LuxAlgo] | 7,749 | The first 60 minutes from the regular session's first candle | The exchange's session; a custom window in exchange time | One each side, at 0.5 IB | The live bar, every cross; no alerts |
| Initial Balance (noop-noop) | 2,924 | 09:30–10:30 | Exchange time: Chicago's on CME futures | 0.5, 1 and 2 IBs | None |
| IB First Hour (Jmorgan11) | 2,272 | 09:30–10:30 | America/New_York, named; presets and a custom zone | 0.5 and 1 IB (up to 3, plus two custom) | None |
| Initial Balance Auction Intelligence by DGT (dgtrd) | 2,052 | 09:30–10:30 | America/New_York, named, a timezone input | 0.5, 1 and 1.5 IBs, off by default | Completed 30-minute windows; seven alert messages |
| Initial Balance Wave Map (traderdrysdale) | 1,675 | Picked from the ticker's letters: 08:30–09:30 for ES, 09:30–10:30 when nothing matches | Exchange time, though its comments say New York | 0.5, 1 and 2 IBs | None |
| Single Prints - Session Initial Balances (Frien_dd-DisDev) | 1,606 | Five session IBs; New York's is 13:30–14:30 | Exchange time: UTC on Binance's BTCUSDT, which it was built for | None | None |
| Initial Balance & extensions (czoa) | 1,183 | The session's first 30 minutes (up to an hour) | Set by a separate library whose code isn't in the script | 1 and 2 IBs (0.5 optional) | None |
| Initial Balance Statistical Mapping (lucymatos) | 1,001 | 09:30–10:30 | America/New_York, hard-coded | Not IB multiples: +0.31% and −0.38% of price | None; a table of typed-in odds |
| Opening Range Desk (ours) | — | An input: 09:30–09:45 by default, 09:30–10:30 for the first hour | An IANA timezone input, America/New_York by default | None | Closed candles; a stop, TP1 at 1R, TP2 at 2R |
Only two of the eight have signals, and only DGT's waits for a completed window. Neither sets a stop.
What the code says
LuxAlgo's Initial Balance Breakout Signals is the most boosted, and its signals are live. In Pine v6, its "Auto" setting, on by default, takes the first 60 minutes from the regular session's first candle (session.isfirstbar_regular), so extended hours don't move it and it keeps the exchange's daylight saving. With Auto off, the window is an input, 08:30 to 09:30 in the exchange's time: the day session's open on CME futures, whose exchange clock is Chicago's, and an hour before the bell on a New York stock. After the IB, a close crossing its high prints an up triangle, and a close crossing its low a down triangle. Nothing waits for the candle to close, so a triangle can print and vanish before the close, and it prints on every cross, not only the first. Its breakout window runs to the next regular open, so after-hours candles count when the chart shows them. It draws one extension each side, a shaded band out to 50% of the IB beyond the high and the low (adjustable), Fibonacci levels inside the IB, and a dotted "forecast" of each IB's high and low, set as the IB begins, from the last 10 IBs and anchored to the previous IB's open. No stop, no targets and no alerts. It is shared under CC BY-NC-SA 4.0.
noop-noop's Initial Balance reads 09:30 to 10:30 on the exchange's clock. Written in 2022 in Pine v5, its window is an input with no timezone, so it is read in the exchange's time. On a New York stock that's the first hour. On CME futures, whose exchange clock is Chicago's, it's 10:30 to 11:30 New York; type 0830-0930 there. The levels appear on the first candle after the window, from the highs and lows inside it. It draws the high, low and midpoint, extensions at 1 and 2 IBs beyond each edge (labelled "IBH x2" and "IBH x3" above, "IBL x2" and "IBL x3" below), a half-IB level between each edge and its first extension, and by default keeps only the current IB's lines. Its "IB Delta" table shows today's range beside the largest, average and smallest of the last 20, today's included, and calls it Huge, Medium or Small by whichever is nearest. It counts ranges, not touches or trades. No signals, stop or alerts. It is shared under MPL 2.0.
IB First Hour, by Jmorgan11, keeps New York's clock. Its code calls it "Initial Balance Key levels + Expansions". The default "New York" preset is 09:30 to 10:30 on "America/New_York", a named timezone that follows daylight saving wherever the chart is. Presets for Tokyo, London, Globex (17:00 to 18:00 Chicago) and Shanghai each carry their own named zone, and "Custom" takes any window and timezone (08:30 to 09:30 Chicago by default). It draws the IB's high, low, midpoint and quarter lines and, on the first candle after the IB, extensions at 0.5 and 1 IB; 1.5, 2, 2.5 and 3 IBs and two multipliers of your own are switches. Its dashboard shows the IB's range and volume, where price sits against it and how far it is to each edge. Its "Range % ATR" divides the IB by the chart's own ATR(14) unless you set an ATR timeframe, though its tooltip speaks of the daily ATR, so on a 5-minute chart it compares the hour's range with a 5-minute candle's. It runs only on charts below one hour. No signals, stop or alerts. Pine v5, MPL 2.0.
Initial Balance Auction Intelligence by DGT is the one with alerts. Published in August 2026 in Pine v6, its window is an input, 09:30 to 10:30, with a timezone input set to "America/New_York". Its code names the option UTCm5_New_York, but it passes "America/New_York", the named zone, so daylight saving follows. After the IB it judges each completed 30-minute window (5, 10 or 15 are options). A window that closes beyond the IB is "Accepted". One that pokes out and closes back inside has "Failed", and both sides in one window is a "Two-Sided Auction". After an acceptance, a window that comes back to the edge is "Continuation" if it closes beyond it and "Rejection" if not. Each verdict comes as the next window starts, marked on the judged window's last candle, so nothing is decided on a live candle; only the dashboard's "Probing" state is live, and it says so. Its seven alert messages are set to fire once per bar close, on the candle after the judged window, so on a 30-minute chart an alert arrives a full half hour after the window it judges.
One quirk in DGT's: its window values freeze while the IB forms, so its first verdict after the IB reads the half hour before the IB began. On a chart of regular hours only, that's the previous day's last half hour. After a gap the first hour doesn't fill, it can mark, and alert, "accepted" on the far side, toward the previous close, the moment the IB ends. It sets no stop or target; its dashboard names the price that would undo the current read. Extensions at 0.5, 1 and 1.5 IBs are off by default. It runs on charts of 30 minutes or less, and its code carries no licence line.
Initial Balance Wave Map picks its window from the ticker's letters. Its comments say "all times ET / NY", but its time() call names no timezone, so the windows are read in the exchange's time. It looks for letters in the ticker: "ES", "NQ", "YM" or "RTY" give 08:30 to 09:30, which on CME futures, in Chicago time, is New York's 09:30. Gold and platinum get 08:20 to 09:20; crude oil, natural gas, heating oil and gasoline 09:00 to 10:00; anything unmatched 09:30 to 10:30. The match is on any part of the ticker, so AAPL, which contains "PL", is read as platinum: its IB is 08:20 to 09:20 New York, before the stock opens, and on a chart of regular hours it draws none. A manual override, labelled "(ET)", is read in exchange time too. Its code closely follows noop-noop's: the same levels (high, low, midpoint, and 0.5, 1 and 2 IBs, labelled ½Δ, x2 and x3) and the same 20-day range table, which marks today's range Wide, Average or Narrow. No signals, stop or alerts. Pine v5, MPL 2.0.
Single Prints - Session Initial Balances was built for Bitcoin. Its header says it was built and tested only on Binance's BTCUSDT, on 30-minute candles, and it is Pine v4, from 2021. It draws five sessions and the first hour of each: Asia (IB 01:30 to 02:30), London (07:00 to 08:00), New York (13:30 to 14:30), "Closed" (20:00 to 21:00) and Day (00:00 to 01:00), all inputs read in the exchange's time. Binance's clock on TradingView is UTC, so the New York IB starts at 09:30 New York only in US summer time, and at 08:30 in winter; London's starts at 08:00 London in summer and 07:00 in winter. On a US stock, the same 13:30 is read in New York time. Its "single prints" are lines every 50 price units across each candle's range, removed once price trades there again; 50 is sized for Bitcoin's price. No extensions, signals, stop or alerts. MPL 2.0.
czoa's Initial Balance & extensions is 30 minutes long by default. Its IB runs from the session's first candle for a duration input, 30 minutes by default, with 1, 5 and 10 minutes or an hour as options. The session comes from a library it imports, czoa/SetSessionTimes, "Day Session (RTH)" by default, and stocks set themselves. That library's code isn't in the script, so we can't say which clock it uses for futures or forex. It draws the IB, its midpoint and the first candle's range, extensions at 1 and 2 IBs (0.5 is off by default), and keeps five days of them. No signals, stop or alerts. Pine v5, MPL 2.0, from 2022.
Initial Balance Statistical Mapping's numbers are typed in. Its window is 09:30 to 10:30 on "America/New_York", hard-coded, so daylight saving follows but the timezone isn't an input. Its extension lines aren't multiples of the IB: they are fixed percentages of price, written into the code, +0.31% above the high and −0.38% below the low by default (lines it calls the 25th, 75th and 90th percentiles are switches). Its table sorts each IB by its direction, which extreme came first (read from 1-minute data) and where it closed against its midpoint, then shows odds for the next break, a midpoint retest and the session's close. Those odds come from arrays typed into the code, 3,130 sessions in all, with no market or period named, so they don't change with your chart. When a wick goes beyond the IB, the table switches to more typed-in odds. They count breaks, retests and closes, with no entry or stop, so they aren't trade results. The one number it computes from your chart is today's range against the mean of the last 50. No signals or alerts. Pine v5, MPL 2.0.
Whose clock
An initial balance is an hour on an exchange's clock: 09:30 to 10:30 New York for US stocks and index futures. New York's clock moves against UTC twice a year, and a futures chart carries its exchange's clock, which for CME is Chicago's. The eight tell the time in two ways:
- A named timezone: IB First Hour, DGT's Auction Intelligence and Statistical Mapping use "America/New_York". These follow New York's daylight saving wherever the chart is; IB First Hour and DGT's let you pick another zone.
- The exchange's clock: LuxAlgo's (from the regular session's first candle), noop-noop's, Wave Map and Single Prints read their windows in the exchange's time, and czoa's takes its session from its library. These follow the exchange's daylight saving, but the same "09:30" is 09:30 Chicago on CME futures and 09:30 UTC on Binance.
None of the eight takes a fixed UTC offset. On the Bitcoin chart it was built for, Single Prints does the same in effect: its New York hour stays at 13:30 UTC all year.
The chart's candles matter too. An IB is built from whole candles, so on a 1-hour chart it's one candle, and IB First Hour refuses charts of an hour or more.
Ours
Opening Range Desk isn't on TradingView's search: its full Pine v6 source comes in Pine Pro Library. It's an opening range tool whose window is an input, so set it to 09:30–10:30 and the range is the first hour. Its timezone is an input too, "America/New_York" by default, an IANA name, so daylight saving follows. Every decision is on a closed candle (barstate.isconfirmed). The entry is the second close in a row beyond the edge by default (one to five, or a retest instead). The stop is the other side of the range plus 0.1 ATR by default (or the midpoint, or an ATR distance), so with a first-hour window it sits more than a whole IB from the entry. TP1 at 1R moves the stop to breakeven, and TP2 is at 2R. It doesn't draw IB extensions. Its alerts go out once per bar close, as JSON or text. Opening Range Desk Pro runs the same engine and adds an extension map: how far first breaks have run on that market, drawn from today's range as a band.
The opening range rules themselves are in the opening range breakout strategy, step by step, and the 15-minute range scripts in best ORB indicators, code-read.
Check one yourself
- The clock: find the
time(call that sets the window and read its third argument. "America/New_York" follows New York; no third argument means the exchange's time, which is Chicago's on CME futures. - The ticker: look for
syminfo.tickernext tostr.contains. A window picked from a ticker's letters can catch the wrong market. - The extensions: find the line that sets them. One that adds a multiple of the IB's range to the high is an IB extension; one that multiplies the price by a percentage isn't.
- The close: look for
barstate.isconfirmed, or a test on the previous candle, before a signal or an alert. Without either, a breakout you see live may not be there at the close. More in how to tell if an indicator repaints. - The numbers: a table filled from
array.from(with fixed figures shows someone else's sample, not your chart's.
None of the scripts here, ours included, runs on MT5, MT4 or thinkorswim: Pine Script runs only on TradingView.
Sources
- Each script's Pine source, as TradingView served it on 27 October 2026, at the script's link in the table.
- The exchange's clock: TradingView's Trading Sessions article, on a "BINANCE:BTCUSD" chart: "the symbol's exchange uses a fixed GMT(0) time zone throughout the year". CME's Globex runs on Chicago's clock (futures market hours).
- Opening Range Desk: its Pine source,
opening-range-desk.pine, in Pine Pro Library.
Limits
One code read, on 27 October 2026, of the versions TradingView served that day. Scripts change, and boosts measure popularity, not quality. We build and sell Opening Range Desk and Opening Range Desk Pro, and we have no relationship with any author named here. Nothing here is financial advice.
Frequently asked questions
What is the best initial balance indicator on TradingView?
Of the eight most-boosted open-source initial balance scripts, start with IB First Hour by Jmorgan11 (2,272 boosts). It draws 09:30 to 10:30 on New York's named timezone, so daylight saving follows, with presets for Tokyo, London, Globex and Shanghai on their own clocks, and extensions at 0.5 and 1 IB by default (up to 3, plus two of your own). It has no signals or alerts. For breakout calls, Initial Balance Auction Intelligence by DGT is the only one in our read that judges a completed window and sends alerts; check its first call of each day.
Is there an initial balance indicator for TradingView?
Yes. The eight we read are all free to add, with their code open: six are shared under the Mozilla Public License 2.0, LuxAlgo's under the non-commercial CC BY-NC-SA 4.0, and DGT's code carries no licence line. Check the clock before you use one: noop-noop's Initial Balance reads its 09:30 to 10:30 in the exchange's time, which on CME futures is Chicago's, an hour after New York's open.
What does an initial balance indicator draw?
The high and low of the session's first hour, usually with the midpoint and extensions beyond them. Seven of the eight we read draw an hour by default; czoa's draws the first 30 minutes. Single Prints draws five session IBs on times built for Bitcoin's UTC chart. Two add signals: LuxAlgo's on the live candle, DGT's on completed half-hour windows.
Which initial balance indicator gives breakout signals?
Two of the eight. Initial Balance Breakout Signals [LuxAlgo] (7,749 boosts) prints a triangle on every close that crosses the IB's high or low after the first hour, judged on the live candle, so one can print and vanish before the close, and it has no alerts. Initial Balance Auction Intelligence by DGT judges each completed 30-minute window: a close beyond the IB is accepted, a probe that closes back inside has failed, and seven alert messages follow. Neither sets a stop. Our Opening Range Desk, with its window set to 09:30 to 10:30, decides on closed candles and sets a stop, TP1 and TP2, but draws no IB extensions; Opening Range Desk Pro adds an extension map of how far first breaks have run.
What are initial balance extensions?
Levels at multiples of the IB's range beyond its high and low: a 1 IB extension sits one full IB above the high and one below the low. The scripts differ. LuxAlgo's draws one at 0.5 IB; IB First Hour 0.5 and 1 by default; noop-noop's and Initial Balance Wave Map 0.5, 1 and 2; czoa's 1 and 2; DGT's 0.5, 1 and 1.5 when switched on. Initial Balance Statistical Mapping's extension lines aren't IB multiples at all: they are fixed percentages of price, typed into its code.



