Troubleshooting

This page is organized by what you see on the chart, not by what setting caused it. When something on the pane is not doing what you expected, start from the symptom and work backward. Each entry distinguishes three c...

Written By Axiom Admin

Last updated 22 days ago

Troubleshooting

This page is organized by what you see on the chart, not by what setting caused it. When something on the pane is not doing what you expected, start from the symptom and work backward. Each entry distinguishes three cause classes:

  • Setup error β€” a configuration is wrong and the script is telling you so, usually via a runtime error. Fix the configuration and the symptom goes away.

  • Misread β€” the pane is doing exactly what it should, and the reading that looks wrong is actually a specific state the Visuals page explains. No fix needed on the configuration; the fix is in how you are reading it.

  • Genuine limit β€” the tool cannot do the thing you are trying to do, by design. The fix is either to accept the limit, or to reach for a different tool (often the CTX trim).

Each entry below names which class it falls into. The distinction matters because the three classes need different remediation. A setup error gets fixed by changing a setting. A misread gets fixed by changing how you read. A genuine limit does not get fixed at all; it gets accepted or it sends you to a different tool. Confusing the three is the most common reason troubleshooting time gets wasted.

Contents

Runtime errors

All three runtime errors this script can raise name the slot in the message. The class is always Setup error.

"CVD 0N timeframe cannot be lower than the chart timeframe."

Class. Setup error.

What it means. The slot's TimeFrame is set to a value lower than the chart's own timeframe. The script refuses to compute a slot on a resolution finer than the chart, because the result would not be honestly defined.

Fix.

  • Raise the slot's TimeFrame to at least the chart timeframe.

  • Or lower the chart timeframe until the slot constraint holds.

Avoid. Trying to get around this by setting a strange fractional timeframe. There is no honest version of a sub-chart-bar slot read on this indicator.

Related. MTF and Repainting β†’ Rule 1.

"CVD 0N lower TF precision must be lower than the slot timeframe."

Class. Setup error.

What it means. The slot's Lower TF Precision is equal to or higher than the slot's own TimeFrame. The intrabar walk that the estimator depends on requires a strictly lower timeframe.

Fix.

  • Lower the Lower TF Precision below the slot's TimeFrame.

  • Or raise the slot's TimeFrame above the Lower TF Precision.

Avoid. Setting Lower TF Precision equal to the slot TimeFrame. It will not produce a better read; it will produce an error.

Related. MTF and Repainting β†’ Rule 2.

"CVD 0N window must be greater than or equal to the slot timeframe."

Class. Setup error.

What it means. The slot's Window is shorter than the slot's own TimeFrame. The accumulation window has to be at least one slot bar long to carry any meaning.

Fix.

  • Lengthen the Window. The default D is almost always valid.

  • Or shorten the slot TimeFrame so the Window constraint holds.

Related. MTF and Repainting β†’ Rule 3.

Pane does not appear or lines missing

Class. Most commonly Setup error; occasionally a TradingView rendering artefact.

Symptoms.

  • The indicator is in the indicator list but no pane opens beneath price.

  • The pane opens but one or more expected lines are not drawn.

  • The pane opens but no fill is drawn between blended lines.

Likely causes and fixes.

  • The indicator is hidden in the pane. Click the eye icon next to the indicator title in the pane header. Sometimes a click during previous chart work toggles visibility and leaves it off.

  • Every slot is disabled. Open the Inputs dialog and confirm at least one Enable CVD 0N is on. If all three are off, the pane has nothing to draw.

  • Every slot's Hide Plot is on. Confirm at least one slot has Hide Plot off. A pane with all three slot plots hidden can still show the blend if Plot Blended is on, but the stack is invisible.

  • Plot Blended is off. If the blend lines are missing specifically, check that Plot Blended CVD/Signal is on. The three slot lines can still draw when the blend is off.

  • Master Smoothing is producing extreme values during warm-up. In a few rare cases with very short lengths and certain MA families, the master pass on a cold chart can produce na values for the first few bars. The blend should recover within the master length. If it does not, toggle Master Smoothing off and check the raw blend.

  • TradingView render hiccup. Rare but real: remove the indicator and re-add it. If the pane comes back, this was a rendering issue. If not, check the above.

Lines drawing outside 0 to 100

Class. Setup error or rendering issue.

Symptoms.

  • A slot or blend line escapes the 0–100 pane.

Why this should not happen. Every published value on this indicator is clamped to 0–100. _normalizeCvd clamps the normalized value; the subsequent smoothing pass clamps the smoothed value; the master smoothing pass clamps the mastered value. If a line is drawing outside the guides, something is off.

Likely causes and fixes.

  • The chart has a scale issue. Right-click the pane's scale axis and pick "Auto (fits data to screen)" or reset the scale. Some scale configurations can push the guides off-screen and make the lines appear outside them visually.

  • An MA family the Axiom library supports is interacting oddly with short lengths. Reduce to SMA with length 3 for both CVD and Signal across all slots; confirm the lines return to the 0–100 range. If so, the issue was an MA-family setting and the line was drawing correctly but unusually; if not, something deeper is happening and the script is misbehaving.

  • Re-add the indicator. If the previous steps did not resolve, removing and re-adding the indicator is a cheap reset.

If it still persists after the above. This is the one symptom that warrants a note to the Axiom team, because the clamping is mechanical and should be unconditional. Record the chart, the configuration, and the line that went outside the range.

A slot is pinned at 0 or 100

Class. Misread (usually) or Genuine limit (rarely).

Symptoms.

  • A slot's CVD line has been sitting at or very close to 0 or 100 for an extended stretch.

What to check first. Compare the pane against price. Two legitimate pictures produce this symptom.

  • Genuine sustained one-sided pressure. The instrument has been under prolonged buying or selling participation, and the slot's cumulative is genuinely near the window's observed extreme. If price confirms a one-sided regime, the pinning is honest. Treat it as information, not as a malfunction.

  • Quiet window, small cumulative. The window has not seen meaningful variation, and a small net delta has pinned the line against a narrow observed range. The pane is describing the window more than the market. Switching to a longer Window or to Rolling mode can help; so can waiting until the window sees more variation.

Fixes and adjustments.

  • If you decide the pinning is a quiet-window artefact and you want to see more character on the line, lengthen the Window. For example, move a slot with Window D to W and watch how the normalization range changes.

  • If you decide the pinning is genuine and you want the line to give you finer resolution inside the pinned zone, there is nothing to fix β€” the line is telling you what the estimator sees, and the resolution is what it is within the current Window.

Related. Visuals and Logic β†’ Quiet-window pinning. Limitations β†’ The estimate boundary in practice.

Blend is quiet while slots are moving

Class. Misread.

Symptoms.

  • The blended line is sitting near 50 and the fill is thin.

  • The slot lines are not at 50; they are spread across the pane.

What is happening. The blend is a weighted mean. When the slots lean in opposite directions, the mean can land in the middle even though no slot is actually in the middle. This is the ambiguous-middle state.

How to tell if this is the case.

  • Look at the three slot lines. If they are clustered around 50, the blend is a clean summary and the quiet really is quiet.

  • If the slots are spread β€” one high, one middle, one low β€” the blend is averaging the disagreement, and the quietness on the blend is cancellation, not silence.

Fix. There is nothing to fix on the indicator. The fix is in the reading: when the stack is spread, ignore the blend for the decision and read the slots directly. The blend is still telling you something important β€” the information that the timeframes disagree β€” but it is not telling you direction.

Related. Visuals and Logic β†’ Ambiguity walkthrough: blend near 50.

Line looks blockier than usual

Class. Misread β€” this is the silent intrabar fallback.

Symptoms.

  • On older bars, the slot line looks less resolved than it does on recent bars.

  • Fewer inflections, blockier movement, a crude feel compared to the recent end of the chart.

What is happening. TradingView serves intrabar data only for a finite window of recent bars. Past that window, the script's request.security_lower_tf returns empty arrays, and the slot falls back to estimating delta from the slot bar's own OHLCV. The participation model still runs; it just has one bar of evidence instead of many.

How to confirm. Scroll forward into recent bars and watch the line's character improve. Scroll back and watch it coarsen. The transition is the fallback boundary.

Is this a fix you can apply? No. TradingView's intrabar window is platform-side, not script-side. The fallback is the honest behavior for historical bars beyond the intrabar window.

What you can do.

  • Accept that historical reads are cruder than live reads. They are still honest; they are just coarser.

  • On instruments with particularly thin intrabar coverage, consider setting Lower TF Precision coarser (but still below the slot TF). Finer Lower TF will trip the fallback more aggressively on sparse symbols.

Related. MTF and Repainting β†’ The silent intrabar fallback. Limitations β†’ The silent intrabar fallback.

Color flips are whip-firing

Class. Misread or Setup-tuning.

Symptoms.

  • Slot color is flipping many times in a short span.

  • The blend is whipping between lime and red, with a thin fill.

What is happening. Color flips happen the moment CVD crosses signal, regardless of how far apart the two lines are. If CVD and signal are running very close to each other, small movement from either line produces a crossing, and the color flips. With the defaults (CVD Length 3 and Signal Length 3 on the same MA family), the two lines run close by construction.

Fixes.

  • Widen the signal. Bump the slot's Signal Length by a bar or two. The signal becomes slightly laggier and the gap between CVD and signal tends to be larger. Crossings happen less often on hair gaps.

  • Use a different MA family pair. A responsive CVD family (like EMA) against a slower signal family can produce a wider average gap than two SMAs. The Axiom MA library manual covers temperaments.

  • Turn on Master Smoothing for the blend. This does not affect slot-level flips, but it reduces the blend's whip-flipping specifically. Accept the lag.

  • Accept the whip as part of the instrument's character. On instruments that print balanced bars frequently, some whip is honest β€” the pane is reporting that no clear pressure state is holding. Trying to engineer the whip away can mask that the instrument is genuinely balanced.

Related. Visuals and Logic β†’ Color flips. Settings β†’ Smoothing.

Session reset dash did not appear

Class. Misread most often; occasionally Setup error.

Symptoms.

  • Expected a dashed vertical line at a session boundary. No line appeared.

Likely causes.

  • The slot is in Rolling mode. Rolling mode draws no reset dashes, by design. Check Window Mode in the Inputs dialog. If the slot should be in Session mode, switch it; if Rolling is correct, the absence of the dash is expected.

  • The slot is hidden. Hide Plot hides the drawing, including the reset dash. The math runs in the background, but the dash does not draw. Turn Hide Plot off if you want to see the dash.

  • The slot is disabled. A disabled slot draws nothing, including the dash.

  • The window timeframe did not change on that bar. The dash fires on timeframe.change(windowTimeframe). If your Window is D and the chart bar did not cross the daily boundary (for example, a 1h chart's 23:00 bar did not cross the day boundary for the instrument's exchange), no dash will be drawn that bar. Wait for the next boundary.

  • The boundary is defined on the exchange clock, not your local clock. A 24-hour crypto instrument's daily boundary is typically UTC or the exchange's internal session β€” it may not match your local midnight. This is normal; the dash is correct for the instrument's clock.

Related. MTF and Repainting β†’ Session resets and window rollovers.

An alert keeps firing on every bar close

Class. Misread β€” this is the intended behavior.

Symptoms.

  • An alert (per-slot bullish/bearish, blended bullish/bearish, or alignment) keeps re-firing while the state holds.

What is happening. All alerts on this indicator are state descriptors. They fire on every confirmed bar that the state holds, not only on the bar where the state changed.

Fixes.

  • Receiving-side deduplication. Configure your alert sink (webhook, Discord, pager) to ignore repeats on the same state within a rolling window.

  • Receiving-side flip detection. If you want flip-only behavior, detect state changes on the receiving side: ignore alerts where the prior alert was the same state; only notify on direction change.

  • Reduce alert count. If you have wired all ten alerts, drop the per-slot pairs and keep only the blend pair and the alignment pair. See Alerts β†’ A minimal wiring pattern.

Avoid. Treating the repeat behavior as a bug and looking for an indicator-side fix. There is no switch on the indicator that changes this β€” the design is deliberate. Alerts is explicit about why.

An alignment alert fired right after a reset

Class. Misread.

Symptoms.

  • The All CVD Slots Bullish or All CVD Slots Bearish alert fired within a few bars of a session reset.

What is happening. After a session reset, every Session-mode slot has just been renormalized and is working with a freshly initialized range. In thin-session stretches, all three slots can transiently agree because they are all calibrating, not because the instrument is uniformly leaning. The alert evaluates on each confirmed bar; if all three happen to agree on a calibration bar, the alert fires.

Fixes and posture.

  • Build a post-reset pause into your triage process. The Workflows alert-triage pattern does this explicitly: ignore alignment alerts in the first few bars after a window rollover.

  • Lengthen the Window. A longer window reduces the frequency of resets and therefore the frequency of spurious post-reset alignments.

  • Switch to Rolling mode. Rolling mode has no reset event and no post-reset calibration artefacts. The tradeoff is that you lose the session anchor, which is often exactly what you wanted in Session mode.

Related. Alerts β†’ Alignment after a reset. Workflows β†’ The triage process.

A hidden slot still seems to be affecting the blend

Class. Misread.

What is happening. Hide Plot hides the slot's drawing. It does not change the slot's math, its weight in the blend, or its alerts. This is the single most common source of "why is the blend doing that" questions.

Fix.

  • If you want the slot's influence on the blend removed while keeping its alerts: set the slot's Blended Weight to 0 in the Inputs dialog.

  • If you want the slot out of everything entirely: turn Enable CVD 0N off. A disabled slot draws nothing, contributes nothing to the blend, and fires no alerts.

Related. Settings β†’ Hide CVD 0N Plot. Alerts β†’ Alerts and Hide Plot.

Pane disagrees with price

Class. Misread.

Symptoms.

  • The pane is showing bullish pressure while price is falling.

  • The pane is showing bearish pressure while price is rising.

What is happening. The pane reports participation-weighted pressure. Price is the outcome of pressure against opposing forces. They can diverge. A market can rally against selling participation before rolling over; a market can sell off against buying participation before turning up.

Fix. There is nothing to fix on the indicator. The "fix" is in the framing: pressure and direction are not the same read, and the pane is not wrong when they diverge. It is telling you about participation in the moment; price is telling you about the outcome.

Whether the divergence is meaningful to you depends on your process. Sometimes divergences precede reversals. Sometimes they persist for a long time before anything happens. The pane does not predict which.

Related. Visuals and Logic β†’ Pressure is not direction. Limitations β†’ Pressure that persists against price.

OHLCV delta is not enough for what I need

Class. Genuine limit.

Symptoms.

  • Your process requires tick-resolution bid/ask delta, footprint data, or orderbook information.

  • The pane's estimate is not granular enough for the decision you are making.

What is true. The estimator walks lower-timeframe OHLCV. It is a defensible estimate, but it is an estimate. No knob in this indicator converts it into true bid/ask delta.

What to do.

  • Use a different tool for the job that requires footprint-grade data. A dedicated orderflow platform is the honest answer.

  • Keep this pane as supplementary context, or stop using it for processes that require tick-resolution.

Avoid. Tuning Pressure Sensitivity and Wick Weight in an attempt to make the pane feel more precise. Those knobs change the classifier's decisiveness; they do not change the data. A "sharper-looking" pane is not a more-accurate pane.

Related. For the Geeks β†’ The problem the estimator is solving. Limitations β†’ The single biggest thing to internalize.

Expected features that are not in the base trim

Class. Genuine limit.

Symptoms.

  • Expected to configure a slot on a different symbol.

  • Expected Power User MA parameters (ALMA Offset, KAMA Fast, Jurik Phase, etc.).

  • Expected a per-slot On Bar Close switch.

  • Expected more than three slots.

  • Expected crossing-at-level alerts, divergence alerts, or flip-only alerts.

What is true. The base trim is deliberately smaller than the CTX trim. The missing features are in CTX, not here.

What to do.

  • If any of these features is required for your process, the CTX trim is the right choice. It is the context-breadth surface.

  • If the features are nice-to-have but not required, staying on the base trim is a legitimate choice.

Related. README β†’ The three-slot frame, quickly. Limitations β†’ What the base trim does not do.

When in doubt

If the symptom does not match anything on this page, the fastest path is usually:

  1. Compare against a clean default. Remove the indicator, re-add it, leave every input on defaults, and see whether the symptom persists. If it disappears, something in your prior configuration was the cause; bring changes back one at a time until the symptom returns.

  2. Check the Inputs dialog carefully. Most symptoms trace back to a configuration choice that was made intentionally in the past and then forgotten. Read every control.

  3. Re-read the page that covers the relevant surface. Settings for a configuration question, Visuals for a reading question, Alerts for an alert question, MTF for a timing question, Limitations for a "what can this tool actually do" question.

  4. If the script is producing output the clamping should prevent (lines outside 0–100, persistent na, etc.), record the chart and configuration and send it to the Axiom team. Those are the symptoms worth flagging; almost everything else is on this page.

A note on troubleshooting under stress

The hardest moment to troubleshoot this pane is the moment a position is open and the read does not look right. The temptation is to start changing settings to make the pane say what you want it to say. Resist it. Almost every "the pane looks wrong" symptom during a live position is a misread, not a setup error β€” and changing settings while a trade is open replaces a clean read with a configuration you cannot reconstruct later. Close the position on the criteria you opened it on, or do not. The pane is not the place to make that decision when stress is doing the talking.