OPEN-SOURCE SCRIPT

Volume Bubbles & Liquidity Heatmap 30% + bias

99
LuxAlgo gave us an open script, I just primmed it up with the use of Chat GPT:There is no single magic number (like “delta must be 800”) that will guarantee directional follow-through in every market. But you can make a mathematically rigorous filter that gives you a high-probability test — by normalizing the delta against that market’s typical behavior and requiring multiple confirmations. Below is a compact, actionable algorithm you can implement immediately (in your platform or spreadsheet) plus concrete thresholds and the math behind them.

High-IQ rule set (math + trade logic)

Use three independent checks. Only take the trade if ALL three pass.

1) Z-score (statistical significance of the delta)

Compute rolling mean
𝜇
μ and std dev
𝜎
σ of delta on the same timeframe (e.g. 5m) over a lookback window
𝑊
W (suggest
𝑊
=
50
W=50–200 bars).

𝑍
=
delta
bar

𝜇
𝑊
𝜎
𝑊
Z=
σ
W


delta
bar


−μ
W





Threshold: require
𝑍

2.5
Z≥2.5 (strong) — accept 2.0 for less strict, 3.0 for very rare signals.

Why: a Z>=2.5 means this delta is an outlier (~<1% one-sided), not normal noise.

2) Relative Imbalance (strength vs total volume)

Compute imbalance ratio:

𝑅
=

delta
bar

volume
bar
R=
volume
bar


∣delta
bar






Threshold: require
𝑅

0.25
R≥0.25 (25% of the bar’s volume is one-sided). For scalping you can tighten to 0.30–0.40.

Why: a big delta with tiny volume isn’t meaningful; this normalizes to participation.

3) Net follow-through over a confirmation window

Look ahead
𝑁
N bars (or check the next bar if you need intrabar speed). Compute cumulative delta and price move:

cum_delta
𝑁
=

𝑖
=
1
𝑁
delta
bar
+
𝑖
cum_delta
N


=
i=1

N


delta
bar+i


price_move
=
close
bar
+
𝑁

close
bar
price_move=close
bar+N


−close
bar



Thresholds: require

cum_delta
𝑁
cum_delta
N


has the same sign as the trigger and

cum_delta
𝑁


0.5
×

delta
bar

∣cum_delta
N


∣≥0.5×∣delta
bar


∣, and

price_move
price_move exceeds a minimum meaningful tick amount (instrument dependent). For ES / US30 type futures: price move ≥ 5–10 ticks; for forex pairs maybe 10–20 pips? Use ATR
20
20


×0.05 as a generic minimum.

Why: separates immediate absorption (buy delta then sellers soak it) from genuine continuation.

Bonus check — Structural context (must be satisfied)

Trigger should not occur against a strong structural barrier (VWAP, daily high/low, previous session POC) unless you’re explicitly trading exhaustion/absorption setups.

If signal occurs near resistance and price does not clear that resistance within
𝑁
N bars, treat as probable trap.

Putting it together — final trade decision

Take the long (example):

If
𝑍

2.5
Z≥2.5 and
𝑅

0.25
R≥0.25 and cum_delta_N confirms and no hard resistance above (or you’re willing to trade absorption), then enter.

Place stop: under the low of the last 2–3 bars or X ATR (instrument dependent).

Initial target: risk:reward 1:1 minimum, scale out at 1.5–2R after confirming further delta.

Concrete numeric illustration using your numbers

You saw FOL = 456, then sell reaction with ~350 opposite. How to interpret:

Suppose your 5-min rolling mean
𝜇
μ = 100 and
𝜎
σ=120 (example):

𝑍
=
(
456

100
)
/
120

2.97

statistically big
Z=(456−100)/120≈2.97⇒statistically big

So it passes Z.

If volume on that bar = 2000 contracts:

𝑅
=
456
/
2000
=
0.228

just below 0.25 threshold
R=456/2000=0.228⇒just below 0.25 threshold

So it fails R (weak participation proportionally), explaining why 456 alone didn’t move price.

Seller came back with 350 opposite soon after — check cum_delta_N:

cum_delta
𝑛
𝑒
𝑥
𝑡
3

456

350
=
106
 net
cum_delta
next3


≈456−350=106 net

Net is small relative to the initial spike — not convincing follow-through.

Conclusion: despite a big absolute number (456), relative measures and lack of follow-through meant the move failed. That’s exactly why raw numbers alone are unreliable.

Advanced refinement (for elite performance)

Use rolling median + MAD instead of mean/std if delta distribution is skewed.

Scale Z by volume volatility: divide Z by
volume
bar
/
volume

volume
bar


/
volume


to penalize low-volume bars.

Use a signed cumulative delta over micro-windows: compute windowed cumulative delta standardized:

𝑍
cum
=

𝑖
=
0
𝑀

1
delta
𝑡

𝑖

𝑀
𝜇
𝑀
𝜎
Z
cum


=
M


σ

i=0
M−1


delta
t−i


−Mμ



and require
𝑍
cum

3
Z
cum


≥3 for very high confidence.

Add market-depth / DOM confirmation (if available): require that resting ask size above is less than resting bid size below by a factor (i.e. visible liquidity supports the move).

Practical thresholds to start with (tune per instrument)

Lookback
𝑊
W: 100 bars (5m → about a trading day)

Z threshold: 2.5

Imbalance ratio
𝑅
R: ≥ 0.25 (tighten to 0.30 for scalping)

Confirmation window
𝑁
N: next 1–3 bars for intraday scalps; 3–6 bars for short swings

Cum delta confirmation: ≥ 0.5 × initial delta and same sign

Price move confirmation: ≥ 0.03 × ATR20 (or set absolute ticks per instrument)

TL;DR — the single best rule

Don’t chase absolute numbers. Use Z-score of delta + delta/volume ratio + real follow-through. If all three align, odds are heavily in your favor.

If you want, I can:

give you a tiny script (pseudocode or Pine / Python) that computes Z, R, cum_delta_N and flags qualifying bars, or

run the calculation on a sample of your recent bars if you paste a small CSV of time, delta, volume, close.

Which do you want? (I’ll give code right away.)

You said:
give me a percentage of difference where we have a high probability
ChatGPT said:
Thought for 7s

Nice — straight to the point. Here’s a concise, practical set of percentage thresholds (and associated confidence estimates) you can use right now to flag a “high probability” delta signal. I’ll give you three tiers (good / strong / elite), explain what each means, show how to compute it, and give a short example using your 456/2000 bar.

One-line rule

Compute delta percent
𝑃
=

delta

volume
×
100
%
P=
volume
∣delta∣


×100%.
Then require Z-score of delta ≥ 2.5 and P to be at or above the threshold below for the desired confidence tier.

Threshold tiers (percent of bar volume)

Good (high-probability trade candidate)
P ≥ 20–25%

Typical success probability (when combined with Z≥2.5 and no hard structural resistance): ~60–70%.

Use when you want a steady flow of signals with decent edge.

Strong (high confidence)
P ≥ 30–35%

Typical success probability: ~70–80% (with Z≥2.5 + structural alignment).

Fewer signals, higher win-rate. Good default for intraday.

Elite (very high probability / low false positives)
P ≥ 40–50%

Typical success probability: ~80–90% (with Z≥3 and confirmation).

Rare signals. Use for meaningful size or when you need maximum certainty.

Why percentage matters (short)

Absolute delta (456) is meaningless without volume context. A 456 delta on 2,000 volume → P = 456/2000 = 22.8% → sits just below the Good threshold, which matches why it failed: decent but not dominant participation.

Additional required checks (don’t skip these)

To turn P into a reliable filter, always require:

Z-score of the delta ≥ 2.5 (or ≥3 for Elite signals).

No immediate structural barrier (VWAP, strong resistance) that would plausibly absorb the order.

Follow-through: within next N bars (N = 1–3 for scalps) price moves in the same direction by ≥ 0.03×ATR20 (or instrument-specific tick threshold). If this fails, cut fast.

Combine all three and your realized win-rate will approach the probabilities above.

Practical quick checklist (to apply each signal)

Compute P = |delta|/volume. Is P ≥ 30%? (or your chosen tier)

Compute Z = (delta − mean)/std over last 100 bars. Is Z ≥ 2.5?

Is price not pinned under a heavy resistance?

Enter on next bar close (or intrabar on continuation), stop under last 2-bar low (for longs).

If price fails to move ≥ 0.03×ATR20 within 3 bars, exit.

Example (your bar)

delta = 456, volume = 2000 → P = 22.8% → below Good threshold (25%).

Even if Z was high, P failed — explains the failure. You need P ≥ ~30% plus Z≥2.5 to call it a Strong signal.

Final notes (instrument & timeframe)

These percentages were calibrated for futures/US indices and short intraday bars (1–5m).

For FX or low-tick instruments, use absolute ticks + a smaller P threshold (start at 15–20%).

Always backtest on the specific instrument/timeframe and tune thresholds.

If you want, I’ll generate a tiny script (Python or Pine) that calculates P and Z and flags Good/Strong/Elite signals for your chart history so you can see exact historical hit rates. Which language (Python or Pine)?

You said:
so if we have 456 g vs 350 r what pct is that in favour of green?
ChatGPT said:

Perfect — let’s calculate it carefully, digit by digit so we don’t make a slip.

We have:

Green (buy) volume = 456

Red (sell) volume = 350

We want to know what percentage is in favor of green, relative to the total volume.

Step 1. Compute total volume
Total
=
456
+
350
=
806
Total=456+350=806
Step 2. Compute green’s share
\text{Green %} = \frac{456}{806} \times 100

Now do it precisely:

456
÷
806
=
0.565506
456÷806=0.565506 (rounded)

So:

0.565506
×
100
=
56.55
%
0.565506×100=56.55%
Step 3. Compute red’s share (for context)
350
806
=
0.434494

43.45
%
806
350


=0.434494→43.45%
Step 4. Compute difference (bias toward green)
56.55
%

43.45
%
=
13.10
%
56.55%−43.45%=13.10%

✅ Final answer:

Green = 56.6% of total

Red = 43.4% of total

Bias = +13.1 percentage points in favor of green

So that’s only a 13% advantage to buyers — modest pressure, not a dominant imbalance.
For a high-probability signal (as we discussed earlier), you generally want ≥30% imbalance (e.g. ~65/35 split or stronger).


Original:


''The Volume Bubbles & Liquidity Heatmap indicator is a powerful trading tool designed to give traders a clearer picture of volume dynamics and liquidity distribution across multiple timeframes. By combining dynamic volume bubbles with a liquidity heatmap, this indicator makes it easy to identify areas of price interest, spot market imbalances, and improve decision-making for both scalpers and swing traders.

This trading indicator is ideal for volume traders, price action traders, and liquidity-focused traders who need a clean, multi-dimensional view of buyer/seller activity and the zones where market participants are most active. With full customization over bubble display, timeframes, and visual settings, traders can tailor the tool to fit virtually any trading strategy or market.''

Feragatname

Bilgiler ve yayınlar, TradingView tarafından sağlanan veya onaylanan finansal, yatırım, işlem veya diğer türden tavsiye veya tavsiyeler anlamına gelmez ve teşkil etmez. Kullanım Şartları'nda daha fazlasını okuyun.