Custom footprint cells

Footprint style cells of your own: every price row of the recent candles painted on a gradient by its imbalance, bid by ask on the point of control row, and stacked imbalances marked.

//@xfscript 1
indicator("Delta Cells")

let lookback: int = input.int(150, "lookback", "Bars to paint", 10, 2000, 10)
let strong: float = input.float(0.6, "strong", "Imbalance for full colour", 0.1, 1, 0.05)
let sell_color: color = input.color("#EF4444CC", "sellColor", "Sellers")
let buy_color: color = input.color("#22C55ECC", "buyColor", "Buyers")
let calm: color = input.color("#6B728033", "calmColor", "Balanced")

let recent: bool = bar_index >= bar_count - lookback
let rows: float = recent && cell.available() ? cell.count() : 0
let poc_row: int = cell.poc_index()

for i = 0 to rows - 1 by 1 {
  let p: float = cell.price(i)
  let lean: float = nz(cell.imbalance(i), 0)
  let shade: color = lean >= 0 ? color.from_gradient(lean, 0, strong, calm, buy_color) : color.from_gradient(lean, -strong, 0, sell_color, calm)
  let caption: string = i == poc_row ? str.concat(format.compact(cell.bid_volume(i)), " x ", format.compact(cell.ask_volume(i))) : ""
  plot.cell(p, p, shade, caption, "#FFFFFF")
}

let stacked_up: bool = recent && cell.stacked_ask(3, 3)
let stacked_down: bool = recent && cell.stacked_bid(3, 3)
plot.marker(stacked_up, low, "#22C55E", "triangle", "below", 9, 3)
plot.marker(stacked_down, high, "#EF4444", "triangle", "above", 9, 3)

Every layer of the market, Orderflow to optionflow, on one chart.

Institutional grade Orderflow data with backtesting and journaling built in. Join the waitlist for early access.

Get Access