Dual-Timeframe ICT Order Blocks

May 14, 2026

Static chart image
Price Action Based
Support and Resistance
Signals
FVG
Liquidity

The Dual-Timeframe ICT Order Blocks indicator identifies and manages ICT-style bullish and bearish order block zones across two configurable timeframes to highlight institutional displacement and liquidity-driven market structures. It provides traders with high-probability reaction zones by integrating market structure context, volume data, and multi-timeframe analysis into a single overlay.

Usage

The Usage section describes how the script can be used to identify key institutional levels.

  • Primary Analysis: Use the primary timeframe settings to identify order blocks on your current chart timeframe or a specific higher timeframe. These zones represent recent areas of displacement.
  • Multi-Timeframe Context: Enable the secondary timeframe to overlay a second layer of structure. For example, you can view 15-minute order blocks (primary) alongside 4-hour order blocks (secondary) to find confluence between lower-timeframe execution and higher-timeframe trends.
  • Liquidity Sweeps: Use the "Require Liquidity Sweep" filter to only show order blocks that formed after price taken out a prior swing high or low. This focuses the analysis on setups where institutional liquidity was likely engaged.
  • Volume Profiling: Enable volumetric info to see the volume distribution within a zone. This helps determine the strength of the displacement that created the order block.
  • Zone Invalidation: Monitor how price interacts with the zones. If a zone is breached (by wick or close, depending on settings), it can be converted into a "breaker block," signaling a potential shift in market bias.

Details

The script utilizes pivot-based swing detection to identify market structure. An order block is identified when price breaks a swing level with displacement.

  • Liquidity Integration: The tool tracks swing highs and lows to detect liquidity "sweeps." A bullish order block is valid if the preceding candle swept sell-side liquidity, and vice versa for bearish blocks.
  • Displacement Calculation: The script calculates the size of the zones using an ATR-based threshold. This prevents oversized zones from cluttering the chart, with an option to allow oversized blocks if preferred.
  • Combining Zones: To reduce visual noise, the script can combine overlapping zones of the same direction and timeframe into a single unified area of interest.
  • Dealing Range: The tool can calculate a "Discount / Premium" range based on the most recent swing structure, helping traders identify if an order block is located in a favorable area for buying (discount) or selling (premium).

Settings

  • Visibility Group:
    • Breaker Blocks: Shows invalidated order blocks as historical breaker zones.
    • Volumetric Info: Displays volume bars and percentage balance inside the zones.
    • Swing Highs / Lows: Toggles the visibility of the pivot points used for detection.
    • Entry Signals: Displays "Long" or "Short" labels when price retests an active zone.
  • Order Block Filtering Group:
    • Swing Length: Controls the lookback period for pivot detection and liquidity sweeps.
    • Zone Invalidation: Determines if a zone is cleared by a price wick or a candle close.
    • Require FVG Confirmation: Requires a Fair Value Gap to exist alongside the order block for it to be valid.
    • Combine Zones: Merges overlapping order blocks into one zone.
    • Require Liquidity Sweep: Filters for blocks that formed only after taking out opposing liquidity.
  • Timeframe Groups (Primary & Secondary):
    • Timeframe: Sets the specific timeframe for detection (e.g., 1H, 4H, Daily).
    • Zone Count: Controls the number of historical zones rendered on the chart (One, Low, Medium, High).
  • Discount / Premium Group:
    • Discount / Premium Zones: Toggles the dealing range overlay.
    • Timeframe: Sets the timeframe used to calculate the dealing range.

FAQ

How do I distinguish between the two timeframes on the chart?
The indicator uses distinct color palettes for each layer. By default, the primary timeframe uses standard bullish/bearish colors, while the secondary timeframe uses a blue and yellow palette to ensure visual clarity.

Why are some order blocks disappearing?
Order blocks are invalidated once price crosses the "Zone Invalidation" threshold (wick or close). You can enable "Breaker Blocks" in the settings to keep these invalidated zones visible as historical references.

How can I access this indicator?
You can get access on the LuxAlgo Library for charting platforms like TradingView, MetaTrader (MT4/MT5), and NinjaTrader for free.

Free access on the following platforms
tradingviewSymbolTradingView
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

ninjatraderNinjaTrader
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

metatrader4MetaTrader 4/5
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

thinkorswimThinkorswim
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

Trading & investing are risky and many will lose money in connection with trading and investing activities. All content on this site is not intended to, and should not be, construed as financial advice. Decisions to buy, sell, hold or trade in securities, commodities and other investments involve risk and are best made based on the advice of qualified financial professionals. Past performance does not guarantee future results.

Hypothetical or Simulated performance results have certain limitations. Unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not been executed, the results may have under-or-over compensated for the impact, if any, of certain market factors, including, but not limited to, lack of liquidity. Simulated trading programs in general are designed with the benefit of hindsight, and are based on historical information. No representation is being made that any account will or is likely to achieve profit or losses similar to those shown.

Testimonials appearing on this website may not be representative of other clients or customers and is not a guarantee of future performance or success.

As a provider of technical analysis tools and strategies, we do not have access to the personal trading accounts or brokerage statements of our customers. As a result, we have no reason to believe our customers perform better or worse than traders as a whole based on any content, tool, or platform feature we provide.

Charts used on this site are by TradingView in which the majority of our technical indicators are built on. TradingView® is a registered trademark of TradingView, Inc. www.TradingView.com TradingView® has no affiliation with the owner, developer, or provider of the Services described herein.

Market data is provided by CBOE, CME Group, BarChart, Massive, CoinAPI. Select U.S. equities data is provided through Massive. CBOE BZX real-time U.S. equities data is licensed from CBOE and provided through BarChart. Real-time futures data is licensed from CME Group and provided through BarChart. Select cryptocurrency data, including major coins, is provided through CoinAPI. All data is provided “as is” and should be verified independently for trading purposes.

This does not represent our full Disclaimer. Please read our full disclaimer.

© 2026 LuxAlgo Global, LLC.