Skip to content

indicator / indicators

Axiom CVD Osc CTX

A ten-slot CVD oscillator with bounded 0..100 slot reads, a weighted composite, optional master smoothing, and optional per-slot cross-symbol studies. For operators who already read flow and want to stack several honest contexts without losing the ability to inspect each one.

Last updated: Jun 1, 2026

Crypto / Stocks +3 / 1m / 5m +5

Purchase options

Monthly / Yearly / One-time access

$3.00/ month

14-day free trial

You need a TradingView account for tools that open or run on TradingView.

These tools support analysis, testing, planning, and review. They do not make trading decisions for you.

14-day monthly trial / 14-day yearly trial / 30-day one-time refund window

Refund policy / Access help

Product details

Explore the details to see whether the tool fits the problem you are trying to solve for.

Overview

The decision this indicator is built for: you are watching CVD at more than one timeframe — sometimes on more than one symbol — and you need to tell whether those contexts are agreeing or disagreeing on the current bar, without losing the ability to inspect each slot when they disagree. Axiom CVD Osc CTX is a ten-slot CVD workbench built for that read. Each slot carries its own higher timeframe, lower-timeframe precision, Session or Rolling window, MA family, weight, and, if you want, a different symbol. Every slot is normalized into a bounded 0..100 pane so several reads share one space. Enabled slots combine into one weighted CVD-and-signal pair, with an optional Master Smoothing pass on top.

Four boundaries belong up front because they shape what the tool is and is not. The CVD here is a wick-aware OHLCV estimate — not footprint, not bid/ask, not tick-level. The 0..100 view is a window-bounded scale, not a calibrated probability. Repaint is governed per slot by an explicit On Bar Close? toggle, and every alert is gated to confirmed chart bars. You decide which slots exist, what they run on, and what they weigh; the pane reports state and leaves direction, timing, and sizing with the operator.

Fit is operators who already read flow at more than one timeframe and are willing to weight slots deliberately. Misfit is anyone shopping for a buy/sell call, a footprint replacement, or a "best settings" bundle.

Where this version sits

Axiom indicator families use a Base -> CTX -> STR progression when the full set exists. Base is the focused/free version: three chart-symbol slots and one global repaint posture. CTX expands that same CVD logic into ten slots with optional per-slot tickers, per-slot timing control, and deeper Power User controls. STR sits after CTX: it keeps the stronger per-slot control pattern, reduces the stack to five slots because of the added computation, and spends that budget on divergence, Keltner, BBWP, and Donchian structure around the blended CVD output. This page covers CTX, so choose it when ten-slot context breadth matters more than STR-style blended-line structure.

Features

The ten-slot stack

  • Up to ten independent CVD slots on the same pane. Each slot has its own enable switch, hide-plot switch, higher timeframe, lower-timeframe precision, window mode, window size, weight, MA family for the CVD line, MA family for the signal line, and line width.
  • Hide-plot keeps a slot running and weighted in the composite without drawing it on the pane. Useful when a slot should steer the blend but does not need to be visible.
  • Any slot can be pointed at a different symbol through Optional Ticker. The slot then reports flow on that instrument at the slot's timeframe, and the 0..100 normalization uses that symbol's own window extremes. Cross-symbol slots inherit the feed, liquidity, and session profile of whatever you point them at.

The participation model

  • CVD here is an Axiom-built wick-aware OHLCV estimate. Two operator-facing knobs shape it: pressure sensitivity (how decisively the classifier calls a bar strong or weak) and wick weight (how much rejection wicks push the per-bar intent score).
  • It is not footprint, not bid/ask delta, and not tick-level. The framing matters: the estimate is built to behave plainly on OHLCV rather than borrow confidence from data it does not have.

The bounded 0..100 view

  • Each slot is normalized into 0..100 against its own window's high and low, which keeps several slots comparable inside the same pane.
  • Session window mode resets the cumulative delta at the start of each window anchor. Rolling window mode keeps a sliding lookback of the same size. The two modes diverge most visibly at the edge of the window, by design.
  • Session-mode slots draw a dashed vertical marker at each anchor rollover, colored to match the slot.

The weighted composite and optional Master Smoothing

  • Enabled slots are combined into one weighted CVD and one weighted signal. Weights do not need to sum to 100; the composite divides by the total weight actually present, so the scale is relative to whatever slots are live.
  • A slot with weight zero is still computed and still plotted. It is simply excluded from the composite.
  • Master Smoothing is optional and applied after the blend — one MA pass on the blended CVD and blended signal with its own MA family and length. It trades noise for lag by design.

The alert surface

  • Per-slot CVD-vs-signal state for slots 01 through 10.
  • Blended CVD-vs-signal state.
  • Alignment across every enabled slot — one condition when every valid slot is bullish, one when every valid slot is bearish.
  • All alerts are gated by barstate.isconfirmed so they cannot fire mid-chart-bar.

Visual identity

  • Slot colors are fixed: 01 teal, 02 aqua, 03 blue, 04 orange, 05 yellow, 06 fuchsia, 07 purple, 08 gray, 09 silver, 10 white. A slot is drawn dim when its CVD sits below its signal and bright when above. Slot identity stays stable across charts.
  • Reference levels are drawn at 0, 20 (oversold), 50 (midline), 80 (overbought), and 100.
  • The blended line renders lime above its signal and red below, with a fill between the two.
How to use

Shortest correct setup:

  1. Open the indicator on a chart whose timeframe is at or below every slot timeframe you plan to use. The default-enabled slots run 5m, 15m, and 1h, so a 5-minute chart works out of the box.
  2. Leave slots 01, 02, and 03 at their defaults with weight 33.3 each and keep the blended read on. Confirm every visible plot stays inside the 0..100 band and that the composite tracks inside the stack.
  3. If you are going to fire alerts off a specific slot, keep that slot's On Bar Close? ON so the read comes from the previous higher-timeframe bar rather than the live one.
  4. Only then start enabling additional slots, pointing slots at other symbols, switching MA families, or reweighting. One change at a time keeps the composite's behavior legible.

What correct first use looks like:

  • Three slot lines in teal, aqua, and blue, each inside the 0..100 band and respecting the 20 and 80 guides.
  • A blended CVD line tracking inside the stack, with a gray blended signal and a lime or red fill following the sign of blended CVD minus blended signal.
  • Dashed vertical markers at session anchor rollovers for each visible Session-mode slot.
  • Toggling On Bar Close? on a slot changes which higher-timeframe bar the slot reads. ON uses the previous higher-timeframe bar; OFF uses the live one and can repaint until that bar closes.

Three rules the script enforces with named runtime errors, so a misconfigured slot cannot silently corrupt the pane:

  • A slot's timeframe must be at or above the chart timeframe.
  • A slot's lower-tf precision must be strictly below its slot timeframe.
  • A slot's window must be at or above its slot timeframe.

If any of these fails, the script stops and the error names the offending slot. Reconfigure the slot; do not work around the error.

Settings

Each of the ten slots carries the same user-facing controls, in this order.

  • Enable CVD 0N. Slots 01 to 03 default on; 04 to 10 default off. Enabling a slot on a fresh chart should be a deliberate choice about which flow context you are adding, not a default sweep.
  • Hide CVD 0N Plot. Off by default. Hiding keeps the slot running and contributing to the composite while suppressing the visible plot.
  • TimeFrame. Defaults 5, 15, 60 on 01 to 03; blank on 04 to 10. Must be at or above the chart timeframe. Blank inherits the chart timeframe, which turns the slot into an intrabar CVD rather than a true multi-timeframe CVD.
  • Lower TF Precision. Default 1 on 01 and 02, 5 on 03. Must be strictly below the slot timeframe. This is where the intrabar OHLCV sample that feeds the participation classifier comes from. Set it too close to the slot timeframe and the intrabar count collapses, which falls the classifier back to the slot bar's own OHLCV.
  • Window Mode. Default Session. Session resets the cumulative delta at each window anchor. Rolling keeps a sliding lookback of the same size. The two modes show their difference most clearly at the edge of a window.
  • Window. Default D. Must be at or above the slot timeframe. Session uses this as the reset anchor; Rolling uses it as the lookback size.
  • CVD Length / CVD Type. Default 3 / SMA. The selector is drawn from the Axiom MA library: SMA, EMA, RMA, WMA, VWMA, HMA, ALMA, SWMA, DEMA, TEMA, TRIMA, LSMA, KAMA, JMA, FRAMA, T3MA, VAMA, ZLMA, ZLEMA, LAGUERRE, and MCGINLEY. ALMA, KAMA/FRAMA, JMA/Jurik-style, Laguerre, and VAMA consume the matching per-slot power-user parameters.
  • Signal Length / Signal Type. Default 3 / SMA. Same MA selector. The signal is the smoothing reference the CVD is compared against for color state and for alert classification.
  • Line Width. Default 2. Per slot.
  • Blended Weight. Default 33.3 on 01 to 03, 0 on 04 to 10. Weights do not need to sum to 100; the composite divides by the total weight actually present. Enabling or disabling slots changes what that total is.
  • Pressure Sensitivity. Default 1.50. Clamped 0.25 to 4.0 in 0.05 steps. Higher is more decisive about calling a bar strong or weak. Lower keeps more neutrality. Pushing it to either edge without first watching what the classifier now calls "strong" is the most common way to surprise yourself.
  • Wick Weight. Default 0.20. Clamped 0.0 to 0.50. How much wick rejection contributes to the per-bar intent score. Higher values emphasize long rejection wicks; zero ignores them.
  • Optional Ticker. Default blank. When set, the slot runs on that other symbol at the slot's timeframe, with its own window, and the 0..100 normalization uses that symbol's own period extremes.
  • Per-slot power-user block (PU). One compact group per slot that holds On Bar Close? plus the MA-family parameters consumed by that slot's chosen CVD and signal types. Parameters outside the chosen families are ignored — leaving them at defaults is fine.
  • On Bar Close? Lives inside the power-user block. Default ON. ON returns the previous HTF bar's smoothed CVD and signal; OFF returns the live HTF bar. ON stabilizes last-bar reads; OFF reacts sooner and can repaint until the HTF bar closes.

Global and display controls:

  • Overbought / Oversold. Defaults 80.0 / 20.0. Visual reference guides. They do not trigger alerts in this release.
  • Plot Blended CVD/Signal. Default ON. Renders the weighted composite CVD and signal along with the fill between them.
  • Blended Line Width. Default 3.
  • Master Smoothing block. Off by default. When enabled, applies one MA pass to the blended CVD and blended signal with its own MA family and length. Use it if the composite is too noisy for your read. It adds lag by design.
Alerts

Every alert below is gated by barstate.isconfirmed — no alert fires until the chart bar it references has confirmed closed. Alert messages reference {{ticker}} and {{interval}}.

Per slot (01 through 10), two conditions each:

  • CVD 0N Is Bullish fires while that slot's CVD is above its signal on a confirmed bar.
  • CVD 0N Is Bearish fires while it is below.

Blended composite:

  • Blended CVD Is Bullish and Blended CVD Is Bearish fire on the same comparison against the blended signal.

Alignment across enabled slots:

  • All CVD Slots Bullish and All CVD Slots Bearish fire when every enabled slot with a valid read agrees on direction.

What the alert surface deliberately does not cover:

  • No overbought or oversold level cross alerts. The 80 and 20 guides are visual only in this release.
  • No session-reset alerts. Markers are drawn, not alerted.
  • No cross-above or cross-below event alerts. Conditions fire continuously while the state holds on a confirmed bar.

"Bullish" and "bearish" here describe the slot's or composite's CVD-vs-signal relationship. They are not directional forecasts.

For the geeks

Compact mental-model notes on the five mechanics that most shape what the read is actually doing. No formulas, no thresholds, no cloneable sequencing.

Wick-aware participation model

Without bid/ask data, a CVD has to pick a rule for turning each bar into buying or selling pressure. Axiom's classifier looks at body direction, where the close sits inside the bar range, and how heavy the rejection wicks are, then sorts that read into participation buckets that feed the cumulative sum. Two knobs steer the behavior: pressure sensitivity (how decisive the buckets are) and wick weight (how much rejection wicks push the per-bar intent score). Verify by setting pressure sensitivity to its minimum, then its maximum, on the same chart — the slot's CVD line will move from neutral to decisive on the same price action.

0..100 normalization with Session vs. Rolling windows

Each slot's cumulative delta is mapped into 0..100 against the high and low observed inside the slot's current window. Session mode resets both the cumulative delta and those extremes at each window anchor. Rolling mode keeps a sliding lookback of the same size, so the extremes move continuously rather than snapping at an anchor. The two modes disagree most visibly at the edge of the window. Verify by switching one slot between Session and Rolling on the same symbol with the same window and watching how the line behaves as you approach and pass the next anchor.

Safe multi-timeframe reads and the On Bar Close? toggle

Slot values are read through the documented TradingView multi-timeframe pattern, with a per-slot repaint switch. ON returns the previous higher-timeframe bar's smoothed CVD and signal — slower on the last chart bar, stable on confirmed history. OFF returns the live higher-timeframe bar — faster to react, can repaint until that bar closes. Alerts are bar-close gated independently, so they cannot fire mid-chart-bar regardless of the toggle. Verify by flipping one slot to OFF and watching the last chart bar update more aggressively; remember that ON and OFF are different historical series because ON reads one slot bar back.

Weighted composite and optional Master Smoothing

The blended CVD is a weighted average of the enabled slots' CVD values, and the blended signal is the weighted average of their signals. Slots at weight zero are excluded from that average even while they are plotted and computed. Master Smoothing is one additional MA pass on the blended CVD and blended signal with its own MA family and length; it reduces noise and accepts lag as the trade. The composite is not a smarter CVD than its inputs — it is a legible summary of what the inputs are currently saying. Verify by zeroing every weight except one and confirming the composite tracks that slot; then add a second slot with a larger weight and watch the composite shift toward it.

Per-slot cross-ticker substitution

When a slot carries an Optional Ticker, it runs its calc on that symbol at the slot's timeframe, and its 0..100 normalization uses that symbol's own window extremes. The pane's normalization stays coherent; the reported flow is the other instrument's. Watch for feed quality, liquidity, and session alignment on the substituted symbol — a cross-symbol slot is only as honest as the feed underneath it. Verify by pointing a slot at a correlated instrument on the same timeframe and comparing where state disagreement shows up against the chart-symbol slot.

FAQ

Does this repaint? It depends on the slot and which read you are looking at. Repaint is governed per slot through On Bar Close?. ON (the default) reads the previous higher-timeframe bar's smoothed CVD and signal and is stable on confirmed history. OFF reads the live higher-timeframe bar and can keep updating until that bar closes. Alerts are always gated to confirmed chart bars, so an alert cannot fire mid-bar regardless of the toggle. If you fire live orders off a slot's alerts, keep On Bar Close? ON for that slot.

A slot refused to load — what happened? The script raises a named runtime error in three cases: a slot's timeframe is below the chart timeframe, a slot's lower-tf precision is not strictly below its slot timeframe, or a slot's window is smaller than its slot timeframe. The error names the offending slot. Relax whichever rule the slot is breaking and the slot loads. These are hard stops by design — the silent alternative is a slot that reads garbage without telling you.

Is the blended CVD a smarter CVD than the individual slots? No. The composite is a weighted average of the enabled slots; it inherits the quality of whatever you put into it. If one slot at a heavy weight is miscalibrated, the composite is miscalibrated. Read the blend as a legible summary, not an oracle. If you want to see what the composite is really made of, set every other slot to weight zero and watch which slot the line tracks.

Does this use real bid/ask delta? No. The CVD here is a wick-aware OHLCV estimate. It is not footprint, not tick-level, and not bid/ask. That is a deliberate choice — bid/ask data is not available for the great majority of symbols on TradingView, so the estimate is built to behave predictably on OHLCV. If your method already depends on footprint-grade delta on a specific instrument, this indicator is not a substitute for that tooling.

CTX or Base — which do I actually need? CTX is the context-breadth version: ten slots, optional cross-symbol studies, optional Master Smoothing, and the Power User block per slot. It is built for operators who need that surface area and are willing to weight slots deliberately. Base is the smaller, cleaner version of the same family — three slots — and is the better default if you are not yet reweighting or stacking cross-symbol studies. STR is the structure version after CTX, trading five of those slots for structure around the blended CVD output.

Limitations
  • The indicator does not generate trade signals. It reports slot-level and composite CVD-vs-signal state. Direction, timing, and sizing stay with the operator.
  • The participation model is a wick-aware OHLCV estimate, not footprint delta. Instruments and markets where the OHLCV estimate diverges most from real flow will look the noisiest here.
  • The 0..100 scale is a window-bounded representation, not a calibrated probability. It compresses magnitude by design.
  • Master Smoothing reduces noise at the cost of lag. It is not a free quality gain.
  • Cross-ticker slots inherit the feed, liquidity, and session profile of whatever symbol they are pointed at.
  • Alert coverage is intentionally narrow: per-slot state, blended state, and alignment across enabled slots. No level-cross alerts, no session-reset alerts, no cross-above or cross-below event alerts.
  • Symbols with thin or missing volume produce weak or empty reads, because the participation contribution is scaled by volume. Use it where volume is meaningful on the timeframes you care about.
Support and training

Support and documentation route through the AxiomCharts website. There is no separate Discord, Slack, Telegram, or email support channel for this indicator outside what is published on the site.

Disclaimer

This indicator is an analytical tool. It reports CVD state and context; it does not provide financial advice, execute trades, or guarantee outcomes. Markets carry real risk of loss. Backtest results and visual review are not substitutes for live testing with capital you can afford to lose. Trade at your own discretion, size within your plan, and do not use any single indicator — this one included — as the sole basis for a trading decision.

Related products

If this one is close but not quite right, there may be a better fit nearby for the same kind of chart work, testing need, or workflow gap.

Back to products
Axiom CVD Oscindicator
Axiom CVD Osc thumbnail

indicator / indicators

Axiom CVD Osc

Free

A three-slot multi-timeframe CVD oscillator with bounded 0..100 slot reads, a weighted composite, and optional post-blend smoothing. The focused/free Base version for clean chart-symbol flow reads.

1m5m15m1H4H1DANY

Crypto / Stocks +3 / 1m / 5m +5

Axiom CVD Osc STRindicator
Axiom CVD Osc STR thumbnail

indicator / indicators

Axiom CVD Osc STR

A five-slot multi-timeframe CVD oscillator with a weighted composite and optional structure context — divergence, Keltner, BBWP, and Donchian — all built on the composite itself. STR trades CTX's ten-slot breadth for blended-line structure.

1m5m15m1H4H1DANY

Crypto / Stocks +3 / 1m / 5m +5

Axiom MA Osc CTXindicator
Axiom MA Osc CTX thumbnail

indicator / indicators

Axiom MA Osc CTX

A ten-slot MA-stretch oscillator with bounded 0..100 slot reads, a weighted composite, optional master smoothing, and optional per-slot cross-symbol studies. For operators who already read moving averages as structure and want to stack several legible stretch contexts without losing the ability to inspect each one.

1m5m15m1H4H1DANY

Crypto / Forex +4 / 1m / 5m +5

Weighing a few options against each other?

Tell us what you are trying to accomplish and we will help you narrow it down honestly.