Tool
Volumetric Order Blocks
market.volumetric_order_block
Inputs
No typed inputs.
Outputs
Two per-bar boolean flags — bull_active and bear_active — true on bars where an unmitigated bullish / bearish block exists. The blocks themselves render on the price pane as boxes; this is a chart-only overlay, not wired into strategy logic.
Volumetric Order Blocks (a StratifyTrade port) mark the zones where a strong move began, anchored to a volume-pivot swing. A bullish block is a demand zone below price; a bearish block a supply zone above it. Each block is tinted by its share of volume and split into buy/sell activity halves, so you can see at a glance where the heaviest interest sits. This is a chart-only overlay.
How it works
When a swing forms on a volume pivot (a bar whose volume is the local peak over `length` bars each side), the origin candle becomes a block. In Length mode the block is clamped to one ATR from that candle's extreme; in Full mode it spans the whole candle. A block is invalidated when price mitigates it (close / wick / average). Each surviving block draws a translucent body, two buy/sell activity sub-boxes, a dashed mid-line, and a volume + %-of-total label; hide-overlap keeps only the newest of overlapping blocks, and the most-recent `max_boxes` per side are shown.
Modes
Mode options
Clamps each block to one ATR from the origin candle's extreme, so blocks stay a consistent, volatility-scaled height.
When to use: The default — tidy, uniform zones that don't balloon on a single wide candle.
Uses the origin candle's entire high-to-low range as the block, so the whole wick span is treated as the zone.
When to use: When you want the most generous zone and don't want price slipping past a body edge unnoticed.
Mitigation method options
Invalidates a block as soon as the current bar's wick breaks its far edge — the most sensitive rule (tested on the current bar only).
When to use: When any touch beyond the zone should retire it.
Invalidates a block when a candle BODY over the last `length` bars breaks its far edge — the strictest, least twitchy rule.
When to use: When you only want blocks removed on a committed close-through, not a fleeting wick.
Invalidates a block when the current bar's wick reaches its 50% mid-line — a middle ground between wick and close.
When to use: When a tap of the midpoint (not just the edge) is your signal the zone is spent.
Configuration
Swing/pivot length: the fractal half-width for the volume-pivot swing AND the ATR period that sizes a Length-mode block. A pivot is confirmed `length` bars after it forms, so blocks appear with that lag.
Block height: Length clamps the body to one ATR from the pivot candle's extreme; Full uses the whole candle high-to-low.
How a block is invalidated: close (a body over the last `length` bars breaks the far edge), wick (the current bar's wick breaks it), average (the current bar's wick reaches the mid-line). Wick/average test the current bar only; close scans the last `length` bars — the indicator's original asymmetry, preserved.
How many of the most-recent blocks to show PER SIDE — up to this many bullish AND this many bearish. Volume-% is computed within each side's shown set.
Drop older blocks that overlap the most-recent one of the same side, keeping the chart uncluttered (the newest is preserved).
Draw the two activity sub-boxes inside each block — a green buy half (upper) and a red sell half (lower).
Draw the dashed mid-line at each block's 50% level.
Show each block's volume and its volume-% of the shown set as a label.
Connects to
Examples
- Add the overlay in Length mode with mitigation_method 'close' to chart tidy demand/supply zones that only clear on a decisive close-through.
- Switch to Full mode and raise max_boxes to keep a deeper stack of wide, wick-span blocks for a swing-trading view.
Common mistakes
- Expecting it to drive entries — this is a chart-only overlay; use market.order_block for a strategy-wireable zone.
- Setting length too small on noisy volume, which tags minor spikes as swings and litters the chart with short-lived blocks.