Concept
VIDYA
VIDYA is a Trend concept. The Library holds 4 implementations, each one a working definition you can pull into Quant.
Chande
Top VIDYA indicators
4 total
What is VIDYA?
VIDYA (Variable Index Dynamic Average) is Tushar Chande's adaptive moving average: an EMA whose smoothing constant is rescaled every bar by how decisively price is moving. In the most widely used formulation the scaler is the absolute value of the Chande Momentum Oscillator (CMO), so strong one-sided momentum pushes the effective smoothing constant up and the average chases price, while balanced up-and-down movement pushes it toward zero and the average flattens. Chande's original version (introduced in a 1992 article) scaled by relative volatility, a ratio of recent to reference standard deviation, and both readings exist in the wild.
The effect is an average with a variable effective length. In a strong trend it behaves like a fast EMA; in congestion it goes nearly horizontal, which is exactly the property traders want from it: a line that stops following noise when there is nothing directional to follow. That behavior made it a common core for adaptive baselines and the trailing systems built on top of them. Adaptation reduces whipsaw in ranges; it does not eliminate it, and platforms that use different scalers will print different VIDYA values on the same chart.
How to calculate VIDYA
The common CMO-based form takes a length N and a momentum lookback, frequently 9.
- 1Compute the base smoothing constant exactly as an EMA would: alpha = 2 / (N + 1).
- 2Compute the CMO over its lookback and take its absolute value divided by 100, giving a factor between 0 (movement fully balanced) and 1 (movement fully one-sided).
- 3Multiply the two: the effective smoothing constant for this bar is alpha × factor.
- 4Update recursively: VIDYA = effective alpha × price + (1 - effective alpha) × previous VIDYA. In the original variant, the CMO factor is replaced by a ratio of short-term to reference standard deviation.
How traders use it
- As a self-tightening trend baseline: a clearly sloped VIDYA marks a directional phase and a flat one marks congestion, a read some traders use directly as a trend regime filter.
- For price-cross and crossover signals, where the flattening behavior is intended to produce fewer triggers inside ranges than a fixed-length EMA; fewer, not zero.
- As the engine of trailing systems: bands or offsets around VIDYA follow price while momentum persists and stop migrating when it dies, which is why several trailing-stop designs are built on it.
VIDYA vs other adaptive averages
KAMA: KAMA also varies an EMA's smoothing constant, but scales it by Kaufman's efficiency ratio (net displacement over total path length) mapped between a fast and a slow bound. VIDYA's common form scales by absolute CMO and has no fixed floor, so it can flatten more completely.
EMA: An EMA weights new data with the same fixed constant on every bar regardless of conditions. VIDYA is the same recursion with the constant re-derived each bar, so it speeds up and slows down while an EMA cannot.
FRAMA: FRAMA adapts using the fractal dimension of the price path (how space-filling it is) rather than momentum or volatility. Same goal, different diagnostic for deciding when the average should move fast.
More VIDYA implementations
Related concepts · Moving-average lineage
Concept family
Trend
100 concepts mapped · 88 in the Library
VIDYA FAQ
What makes VIDYA different from a normal EMA?
Only the smoothing constant, and that changes everything about its behavior. An EMA fixes the constant from the length setting; VIDYA multiplies that base constant by a bar-by-bar measure of directional strength, usually absolute CMO divided by 100. When momentum is strong VIDYA updates quickly, and when movement nets out to nothing it barely updates at all.
Does VIDYA adapt to momentum or to volatility?
Both versions exist. Chande's original 1992 formulation scaled the smoothing constant by relative volatility, a ratio of current to reference standard deviation. The formulation most platforms implement today scales by the absolute Chande Momentum Oscillator instead. Check which one your tool uses, because the two can disagree noticeably on the same chart.
Can VIDYA go completely flat?
Essentially, yes. When the momentum factor approaches zero the effective smoothing constant approaches zero, so the average stops absorbing new prices and prints nearly horizontal. That is deliberate: the line refuses to chase two-sided noise. It also means VIDYA can sit still while price drifts slowly, so a flat line is not proof that nothing is happening.
Build VIDYA your way.
Quant writes, tests, and refines it with you — then it runs on LuxAlgo charting or ports to TradingView.


