Version 1.0 · NinjaTrader 8 · English edition © 2026 TTW Trading Systems PTE. LTD. · Flow.42 Analytics · All rights reserved.
Context first. Pressure second. Execution last.
Table of Contents
- Overview
- What you see on the chart
- Delta, CVD and Relative Delta Pressure
- The delta source
- Divergence detection
- Divergence filters
- The history cache
- Full parameter reference
- Suggested starting settings
- Troubleshooting
- Glossary
1. Overview
Flow.42 VolDelta answers one question, bar by bar: who is in control, buyers or sellers? It splits each bar's volume into the part that came from aggressive buying and the part that came from aggressive selling, and tracks the running difference between them. That difference (the delta) and its cumulative total (the CVD) tell you whether buyers or sellers are doing the heavy lifting behind a move.
The real value shows up when delta and price disagree. If price makes a new high but the buying behind it is weaker than last time, the move may be running on fumes. VolDelta watches for exactly these divergences between what price is doing and what the delta is doing, and marks them on your chart.
VolDelta is a sub-panel indicator: it draws its CVD line in a panel below price and can draw divergence lines and labels on the price chart itself. It is a context tool: it shows you the balance of pressure and where that pressure stops agreeing with price. The entry, exit and risk decisions remain yours.
2. What you see on the chart
In the sub-panel, the main visual is the CVD line, the cumulative volume delta. By default it is drawn in a clear pink, but it can instead be colored by the sign of the current delta (green when buyers led the bar, red when sellers did), so the line's color tells you the immediate balance while its slope tells you the trend of pressure.
The indicator also computes, but hides by default, four more outputs you can switch on by giving them a visible color: per-bar Buy Volume, Sell Volume, Delta, and a normalized Relative Delta Pressure. Three reference lines sit in the panel (a zero line and an upper and lower band) to give Relative Delta Pressure some context, since that measure naturally moves within a fixed range around zero.
On the price chart, when divergences are enabled, VolDelta draws divergence lines connecting the two swings involved, with optional labels. Bullish divergences are drawn in green, bearish in red.
3. Delta, CVD and Relative Delta Pressure
Delta is the per-bar difference between aggressive buying and aggressive selling. A positive delta means buyers were the aggressors on that bar; a negative delta means sellers were. It is the raw read of who pushed.
CVD (Cumulative Volume Delta) adds those deltas up over time, so the line rises while buyers dominate and falls while sellers do. Two settings shape it. CVD Mode chooses between a running cumulative total and a rolling sum over the Lookback Period. The rolling version forgets older bars and reacts faster. CVD Reset Mode decides when the cumulative total returns to zero: never, at each session break (using your chart's trading-hours template), or each day. Resetting keeps the CVD readable within a session instead of drifting far from zero over many days.
Relative Delta Pressure is a normalized measure of net pressure over the lookback, expressed on a steady scale around zero. Because it is normalized, it is comparable across instruments and across time in a way that raw delta is not. The reference bands in the panel mark where pressure is leaning meaningfully one way.
4. The delta source
The quality of everything above depends on how cleanly each bar's volume can be split into buying and selling. VolDelta can draw that split from several sources, chosen with Delta Source:
- Auto (default): tries the best available source first and falls back as needed, so it always produces a value without you having to think about it.
- Volumetric Bid/Ask: reads the per-bar buy/sell totals directly from NinjaTrader Volumetric bars. The most accurate option; it requires the chart to be set to Volumetric bars.
- Tick Replay Bid/Ask: classifies each trade against the prevailing bid/ask, building the split trade by trade. It works natively in real time, and for historical bars it needs Tick Replay enabled on the data series.
- OHLC Proxy: a directional approximation used when no real buy/sell data is available. It always works, but because it infers pressure from the candle's shape rather than from real aggressor data, it can differ meaningfully from a true bid/ask read, especially in choppy or absorption-heavy areas. Treat it as a fallback, not a substitute for real data.
In Auto mode you get the best source each bar can offer, transparently. When you want certainty about what you are reading, set the source explicitly.
5. Divergence detection
A divergence is a disagreement between price and delta: price makes a higher high while CVD makes a lower high (bearish: the new high lacks buying behind it), or price makes a lower low while CVD makes a higher low (bullish: the new low lacks selling behind it). To find these, VolDelta first identifies swing points in both price and CVD, then pairs them up and checks for disagreement.
How swings are found is governed by the Swing Detection settings. Swing Lookback sets how many bars on each side are needed to confirm a swing, Swing Strength requires a minimum percentage change from the last swing of the same type so tiny wiggles do not count, and Min Swing Distance and Min Time Distance enforce minimum spacing in bars and in minutes so swings are not clustered too tightly.
How swings are paired into a divergence is governed by the Divergence settings. Tick Tolerance sets how close two prices count as equal, Max Swing Lookback limits how many swings back the scan reaches, and Max Swing Pair Distance caps how far apart a price swing and a CVD swing may be to be paired. Confirmed Divergences Only is worth understanding: with it on, a divergence is only drawn once its swings are locked in by a later opposite swing, which reduces the repaint-like behavior where a divergence appears and then changes as the most recent bars develop. With it off, you see divergences earlier but they can still shift while the latest swing is forming.
6. Divergence filters
Not every divergence carries the same weight. Two optional filters let you keep only the ones with real participation behind them, both off by default.
The Volume Filter requires the bar at the second swing to trade meaningfully more than its recent average, set by Volume Lookback (how the average is measured) and Volume Multiplier (how far above average is required). This keeps divergences that formed on genuine activity and drops the ones that formed on thin volume.
The Delta Imbalance Filter requires the second swing's bar to show a clear net imbalance between buying and selling, set by Min Abs Delta Ratio (for example, 0.2 means a 20% net lean to one side). This keeps divergences where the delta read is decisive rather than marginal.
Turn either or both on when you are seeing too many weak divergences and want only the ones backed by volume, imbalance, or both.
7. The history cache
Real buy/sell data is only available live or with Tick Replay. To keep your historical chart consistent with what you saw in real time, VolDelta can persist the real delta it computes and reload it later. History Cache controls this, with modes to read and write, read only, write only, or off entirely.
Several settings tune its behavior. Use Cache Fallback lets the indicator reach for cached real values before resorting to the OHLC proxy on historical bars. Prefer Cache On Historical goes further, preferring cached values on historical bars even when live-style data exists but might be incomplete (real time is unaffected). Cache Retention Days caps how much history is kept (0 keeps everything), and Cache Save Interval sets how often the cache is written during real time. The default strikes a balance between disk activity and safety against data loss.
One setting deserves a clear warning. Clear Cache On Start is a one-time cleanup trigger, and it does not reset itself. If you leave it on, the cache is wiped on every reload, which prevents the cache from ever building up. Use it once to clear the cache, then turn it back off.
8. Full parameter reference
The settings appear in the NinjaTrader properties panel, grouped as you see them there. "Default" is the value the indicator ships with.
CVD Settings
| Setting | Default | What it does |
|---|---|---|
| Lookback Period | 14 | The lookback length used for the rolling CVD mode and for Relative Delta Pressure. |
| Show CVD | On | Shows or hides the CVD plot in the sub-panel. |
| Color CVD By Delta | On | Colors the CVD line green or red by the current delta's sign. When off, the line uses its configured color (default pink). |
| CVD Mode | Cumulative | Cumulative keeps a running total of delta; RollingLookback sums delta over the Lookback Period. |
| CVD Reset Mode | Session | When the cumulative CVD returns to zero: None, Session (using the chart's trading-hours session breaks), or Day. |
Delta Settings
| Setting | Default | What it does |
|---|---|---|
| Delta Source | Auto | Where buy/sell volume comes from: Auto (best available with fallback), Volumetric Bid/Ask, Tick Replay Bid/Ask, or OHLC Proxy. See Section 4. |
Swing Detection
| Setting | Default | What it does |
|---|---|---|
| Swing Lookback | 3 | The number of bars on each side required to confirm a swing. |
| Swing Strength | 0.5 | The minimum percentage change versus the last same-type swing for a swing to count. |
| Min Swing Distance | 3 | The minimum distance between swings, in bars. |
| Min Time Distance | 5 | The minimum time between swings, in minutes. |
Divergence
| Setting | Default | What it does |
|---|---|---|
| Tick Tolerance | 2 | The tolerance, in ticks, for comparing two prices. |
| Max Swing Lookback | 5 | The maximum number of swings to scan back when looking for a divergence. |
| Max Swing Pair Distance (Bars) | 12 | The maximum bar distance allowed to pair a price swing with a CVD swing. |
| Confirmed Divergences Only | Off | When on, only draws divergences whose swings are locked in by a later opposite swing, reducing repaint-like behavior. |
Divergence Filters
| Setting | Default | What it does |
|---|---|---|
| Use Volume Filter | Off | Only marks a divergence if the second swing's bar volume exceeds its recent average times the multiplier. |
| Volume Lookback | 20 | The lookback used to compute the average volume for the volume filter. |
| Volume Multiplier | 1.5 | The required multiple of average volume for the volume filter. |
| Use Delta Imbalance Filter | Off | Only marks a divergence if the second swing's bar shows a clear net buy/sell imbalance. |
| Min Abs Delta Ratio | 0.2 | The required net imbalance for the imbalance filter (0.2 = 20%). |
Visualization
| Setting | Default | What it does |
|---|---|---|
| Bullish Divergence Color | LimeGreen | The color of bullish divergence lines. |
| Bearish Divergence Color | Red | The color of bearish divergence lines. |
| Divergence Line Width | 2 | The width of divergence lines. |
| Show Divergence Labels | Off | Shows text labels on divergences. |
| Show Divergence Lines | Off | Enables drawing of divergence lines on the price chart. |
History Cache
| Setting | Default | What it does |
|---|---|---|
| History Cache | ReadWrite | Persists real bid/ask deltas to disk and reloads them for historical bars. Modes: Off, ReadOnly, WriteOnly, ReadWrite. |
| Use Cache Fallback | On | If no real source is available, tries cached values before falling back to the OHLC proxy (historical only). |
| Prefer Cache On Historical | Off | Prefers cached values on historical bars even when live-style data exists but may be incomplete. Real time is unaffected. |
| Cache Retention Days | 0 | How many days of cache to keep. 0 keeps everything. |
| Clear Cache On Start | Off | A one-time cache wipe on reload. It does not reset itself. Turn it off again after one cleanup, or the cache is wiped every reload. |
| Cache Save Interval (min) | 5 | How often the cache is written during real time. 0 saves only at session start and shutdown. |
Plots and reference lines
VolDelta provides five plots (BuyVolume, SellVolume, Delta, CVD, and RelativeDeltaPressure) and three reference lines (a zero line, an upper band and a lower band). By default only CVD is visible (pink, thicker line); the others are hidden until you assign them a visible color in the plot settings. The reference bands give context to Relative Delta Pressure, which moves on a steady scale around zero.
9. Suggested starting settings
Out of the box, VolDelta shows a session-reset CVD line colored by delta, a clean read of intraday pressure that resets each session so it stays legible. Leave it there for a while and simply watch how the CVD slopes against price: agreement confirms a move, disagreement is the early warning.
To use the divergence engine, turn on Show Divergence Lines (and labels if you like). Start without the filters to see what the engine finds, then add the Volume Filter, the Delta Imbalance Filter, or both once you want only the higher-conviction divergences. If divergences shifting on the latest bars bothers you, turn on Confirmed Divergences Only for steadier, later signals.
For the cleanest delta, use a real source. On Volumetric charts, the Volumetric Bid/Ask source is most accurate; otherwise enable Tick Replay so historical bars get a real split rather than the OHLC proxy. Leave the History Cache on so your historical chart stays consistent with what you saw live. The most instrument- and style-sensitive settings are the swing detection values and the divergence filters. Tune those to how often you want to see divergences.
10. Troubleshooting
The CVD looks like simple up/down volume. That is the OHLC proxy at work: it infers pressure from candle direction because no real buy/sell data was available. Switch to a Volumetric chart, or enable Tick Replay, to get a real bid/ask split.
Historical bars differ from what I saw live. Real delta needs live or Tick Replay data. Keep the History Cache on so the real values you compute live are saved and reloaded on historical bars; consider Prefer Cache On Historical if your historical feed is incomplete.
No divergences are drawn. Confirm Show Divergence Lines is on. If the filters are enabled, they may be removing everything. Turn them off to confirm the engine is finding divergences, then re-enable selectively. Very strict swing settings can also prevent swings from forming.
Divergences appear and then change. That is the nature of swing-based detection while the latest swing is still forming. Turn on Confirmed Divergences Only for steadier, later-confirming lines.
The cache never grows. Check Clear Cache On Start. If it is left on, the cache is wiped on every reload. Turn it off after a one-time cleanup.
Relative Delta Pressure barely moves off zero, or the bands seem wrong. The bands are calibrated for the normalized scale this measure uses with real bid/ask data. If you previously set custom band values for an older build, reset them to the defaults.
11. Glossary
Delta: the per-bar difference between aggressive buying and aggressive selling. Positive means buyers were the aggressors; negative means sellers were.
CVD (Cumulative Volume Delta): the running total of delta over time; rises while buyers dominate, falls while sellers do.
Relative Delta Pressure: a normalized measure of net pressure over the lookback, on a steady scale around zero, comparable across instruments and time.
Divergence: a disagreement between price and delta: a new price extreme that the delta does not confirm.
Bullish divergence: price makes a lower low while CVD makes a higher low; the new low lacks selling behind it.
Bearish divergence: price makes a higher high while CVD makes a lower high; the new high lacks buying behind it.
Swing point: a confirmed local high or low in price or CVD, used as the anchor for divergence detection.
Delta source: where the buy/sell split comes from: Volumetric, Tick Replay, cache, or the OHLC proxy.
OHLC proxy: a directional approximation of delta from candle shape, used when no real buy/sell data is available.
History cache: the saved record of real delta that lets historical bars match what you saw live.
Flow.42 VolDelta is a context and visualization tool. It does not provide automated trade signals or trading advice. Trade less. Trade better. Trade with clarity.
© 2026 TTW Trading Systems PTE. LTD. · Flow.42 Analytics · All rights reserved.