OPEN-SOURCE SCRIPT
ICT HTF/BIAS

ICT HTF/BIAS — Full Guide
What this indicator does
ICT HTF/BIAS plots multi-timeframe ICT PD Arrays (FVGs + Order Blocks) and provides a compact bias table that helps you quickly determine directional context across your selected timeframes.
It is designed to stay simple, readable, and ICT-based, while avoiding misleading signals.
Key features
1) ICT PD Arrays included
FVG (Fair Value Gap): classic ICT 3-candle imbalance (gap).
Order Blocks (OB): detected via BOS logic + pivot structure, then searching back for the last opposite candle as the OB anchor.
2) HTF confirmed zones (non-misleading behavior)
Zones are added only on the HTF close (confirmed higher timeframe bar).
This avoids “in-progress HTF candle” noise and reduces false/temporary zones.
3) SHOW vs CALC (decoupled by design)
Each TF has two independent depth controls:
Max SHOW = how many zones you want to draw on the chart (keep your chart clean).
Max CALC = how many zones the table/bias is allowed to analyze (keep your bias logic robust).
This prevents a common problem: changing how many boxes you display changes your bias output.
In this script, your bias can remain stable even if you hide most boxes.
4) Compact Bias Table (fast read)
The table shows:
FVG status: IN / OUT / N/A
OB status: IN / OUT / N/A
BIAS: ↑ / ↓ / “-”
GLOBAL bias: weighted across TF1..TF4
How to read the bias
Per-Timeframe Bias rules (ICT-based, simple)
For each timeframe:
If price is IN an OB (within CALC depth) → bias = OB direction
Else if price is IN a FVG (within CALC depth) → bias = FVG direction
Else fallback to the most recent direction (OB preferred, otherwise FVG)
GLOBAL bias (weighted)
The GLOBAL row uses a weighted sum:
TF1 weight = 1
TF2 weight = 2
TF3 weight = 3
TF4 weight = 4
Score > 0 → bullish global bias
Score < 0 → bearish global bias
Score = 0 → neutral
Chart TF “Guard” (prevents false LTF readings)
TradingView has limitations when requesting very low TF data from a much higher chart timeframe.
To avoid showing incorrect LTF (1m/5m/15m) statuses when you’re on a high chart TF, the script can display a small warning banner and treat certain LTF rows as N/A when appropriate.
Purpose: never show false information.
Recommended usage (most user friendly)
Step 1 — Choose your “Entry TF”
As a rule of thumb (ICT):
The lowest TF in your set should match your entry timeframe, or be close to it.
Examples:
Intraday / Scalping
TF1=1m, TF2=5m, TF3=15m, TF4=1H
(Use chart TF 1m–15m for best LTF accuracy.)
Higher timeframe trading
TF1=1H, TF2=4H, TF3=1D, TF4=1W
(Then you naturally don’t care about 1m/5m.)
Step 2 — Keep your chart clean with SHOW vs CALC
A practical approach:
Max SHOW: 1–2 (clean chart)
Max CALC: 3–10 (more stable bias/table logic)
Main settings (quick explanation)
Timeframes (Rows)
Enable TFx: enable/disable each row timeframe
Show Boxes TFx: show/hide zones for that timeframe
Max SHOW / Max CALC
Max SHOW FVG / OB: visual draw limit
Max CALC FVG / OB: depth used by table and bias
Box Width (Per TF)
HTF bars: width scales by HTF size
Chart bars: fixed width in chart bars
OB Logic
Pivot length (BOS): higher = stricter / fewer OBs
OB lookback: how many HTF bars to search for the OB anchor candle
Notes / limitations
This is a context + confluence tool, not a “signal generator.”
LTF accuracy depends on chart TF; the Guard exists specifically to prevent misleading outputs.
One-line summary
ICT HTF/BIAS: multi-TF ICT PD Arrays + a clean bias table with SHOW vs CALC separation, so you can keep charts minimal while keeping bias logic consistent.
What this indicator does
ICT HTF/BIAS plots multi-timeframe ICT PD Arrays (FVGs + Order Blocks) and provides a compact bias table that helps you quickly determine directional context across your selected timeframes.
It is designed to stay simple, readable, and ICT-based, while avoiding misleading signals.
Key features
1) ICT PD Arrays included
FVG (Fair Value Gap): classic ICT 3-candle imbalance (gap).
Order Blocks (OB): detected via BOS logic + pivot structure, then searching back for the last opposite candle as the OB anchor.
2) HTF confirmed zones (non-misleading behavior)
Zones are added only on the HTF close (confirmed higher timeframe bar).
This avoids “in-progress HTF candle” noise and reduces false/temporary zones.
3) SHOW vs CALC (decoupled by design)
Each TF has two independent depth controls:
Max SHOW = how many zones you want to draw on the chart (keep your chart clean).
Max CALC = how many zones the table/bias is allowed to analyze (keep your bias logic robust).
This prevents a common problem: changing how many boxes you display changes your bias output.
In this script, your bias can remain stable even if you hide most boxes.
4) Compact Bias Table (fast read)
The table shows:
FVG status: IN / OUT / N/A
OB status: IN / OUT / N/A
BIAS: ↑ / ↓ / “-”
GLOBAL bias: weighted across TF1..TF4
How to read the bias
Per-Timeframe Bias rules (ICT-based, simple)
For each timeframe:
If price is IN an OB (within CALC depth) → bias = OB direction
Else if price is IN a FVG (within CALC depth) → bias = FVG direction
Else fallback to the most recent direction (OB preferred, otherwise FVG)
GLOBAL bias (weighted)
The GLOBAL row uses a weighted sum:
TF1 weight = 1
TF2 weight = 2
TF3 weight = 3
TF4 weight = 4
Score > 0 → bullish global bias
Score < 0 → bearish global bias
Score = 0 → neutral
Chart TF “Guard” (prevents false LTF readings)
TradingView has limitations when requesting very low TF data from a much higher chart timeframe.
To avoid showing incorrect LTF (1m/5m/15m) statuses when you’re on a high chart TF, the script can display a small warning banner and treat certain LTF rows as N/A when appropriate.
Purpose: never show false information.
Recommended usage (most user friendly)
Step 1 — Choose your “Entry TF”
As a rule of thumb (ICT):
The lowest TF in your set should match your entry timeframe, or be close to it.
Examples:
Intraday / Scalping
TF1=1m, TF2=5m, TF3=15m, TF4=1H
(Use chart TF 1m–15m for best LTF accuracy.)
Higher timeframe trading
TF1=1H, TF2=4H, TF3=1D, TF4=1W
(Then you naturally don’t care about 1m/5m.)
Step 2 — Keep your chart clean with SHOW vs CALC
A practical approach:
Max SHOW: 1–2 (clean chart)
Max CALC: 3–10 (more stable bias/table logic)
Main settings (quick explanation)
Timeframes (Rows)
Enable TFx: enable/disable each row timeframe
Show Boxes TFx: show/hide zones for that timeframe
Max SHOW / Max CALC
Max SHOW FVG / OB: visual draw limit
Max CALC FVG / OB: depth used by table and bias
Box Width (Per TF)
HTF bars: width scales by HTF size
Chart bars: fixed width in chart bars
OB Logic
Pivot length (BOS): higher = stricter / fewer OBs
OB lookback: how many HTF bars to search for the OB anchor candle
Notes / limitations
This is a context + confluence tool, not a “signal generator.”
LTF accuracy depends on chart TF; the Guard exists specifically to prevent misleading outputs.
One-line summary
ICT HTF/BIAS: multi-TF ICT PD Arrays + a clean bias table with SHOW vs CALC separation, so you can keep charts minimal while keeping bias logic consistent.
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.