# Klinger Volume Oscillator

A Volume & Order Flow concept (Cumulative flow lines) in the LuxAlgo Library, with 1 indicator implementation.

## What is the Klinger Volume Oscillator?

The Klinger Volume Oscillator (KVO) is a volume-flow oscillator developed by Stephen Klinger in the 1990s. Each bar contributes a quantity called volume force: the bar's full volume, signed positive or negative by trend (whether the sum of high, low, and close rose or fell versus the prior bar) and scaled by a temper factor that compares the bar's range with the cumulative range of the current move, so volume counts for more when range behavior suggests conviction. The oscillator is the difference between a fast and a slow [EMA](https://www.luxalgo.com/library/concept/ema/) of volume force, most commonly 34 and 55 periods, plotted with a 13-period signal line.

Klinger introduced the design through the technical-analysis press in the late 1990s, aiming at a known gap: cumulative volume lines track the long arc of accumulation and distribution but react slowly, while raw per-bar volume is too noisy to read. Signing volume by the high-low-close trend, tempering it by range behavior, and differencing two EMAs was his attempt to keep both horizons in one pane.

Klinger's stated aim was an indicator sensitive enough to register short-term shifts in money flow while still tracking the longer arc of accumulation and distribution. Readings above zero and rising suggest volume is behind the advance; an oscillator that sags while price presses higher is the classic warning that the move is losing volume support.

Its construction sets its personality. Because the trend sign flips on the high-low-close sum, single indecisive bars can flip a whole bar's volume from one side to the other, which makes raw KVO jumpy; the temper factor amplifies conviction moves but also magnifies odd bars in thin sessions. In practice the oscillator behaves best on liquid instruments, read through its signal line and zero line with trend context supplied elsewhere, and worst as a standalone trigger in chop.

## How to read the Klinger Volume Oscillator

KVO plots in its own pane around zero with a signal line; the reading is regime, crosses, and divergence.

1. Add the oscillator with its conventional settings (34/55 EMAs of volume force, 13-period signal line) beneath a chart with trustworthy volume data.
2. Read the zero line as the flow regime: sustained time above zero says the faster money-flow consensus sits above the slower one.
3. Use signal-line crosses as the tactical event, expecting whipsaw in ranges; most users only honor crosses aligned with the prevailing trend.
4. Compare swings against price for divergence: a new price extreme with a weaker oscillator extreme is the fading-participation warning.
5. Grade the instrument first: KVO inherits every quirk of the venue's volume prints, so thin sessions and synthetic feeds degrade the reading.

## How it's calculated

Converts volume into a signed force based on trend direction and range expansion, then takes the difference between a fast and a slow EMA of that force.

```
T_t = +1 if H_t + L_t + C_t > H_(t-1) + L_(t-1) + C_(t-1), else T_t = -1
dm_t = H_t - L_t
cm_t = cm_(t-1) + dm_t if T_t = T_(t-1), else cm_t = dm_(t-1) + dm_t
VF_t = V_t × abs(2 × (dm_t / cm_t) - 1) × T_t × 100
KVO_t = EMA_34(VF)_t - EMA_55(VF)_t
Signal_t = EMA_13(KVO)_t

  H_t: high of bar t
  L_t: low of bar t
  C_t: close of bar t
  V_t: volume of bar t
  T_t: trend direction of bar t, +1 or -1
  dm_t: daily measurement, the bar's high-low range
  cm_t: cumulative measurement, a running sum of dm that resets when the trend flips
  VF_t: volume force at bar t
  EMA_n: exponential moving average over n bars (defaults 34 fast, 55 slow, 13 signal)
  KVO_t: oscillator value at bar t
  Signal_t: signal line at bar t
  abs(): absolute value
  t: bar index
```

Variants differ on the abs(): some references print VF_t = V_t × (2 × (dm_t / cm_t) - 1) × T_t × 100, which can flip the sign of the force.

Several platforms ship a simplified version that feeds raw volume, signed by whether H + L + C rose or fell, into the same 34/55 EMA difference.

Standard reading is KVO crossing its 13-period signal line and divergences against price.

## How traders use it

- As a money-flow trigger: crosses above the signal line or the zero line are read as flow turning positive, and crosses below as flow turning negative; in choppy ranges these crossings whipsaw, so most users demand trend context first.
- As a divergence tool: price printing a new high while the oscillator prints a lower high flags fading participation, the same logic as other forms of [volume divergence](https://www.luxalgo.com/library/concept/volume-divergence/).
- As confirmation rather than a standalone system: pairing KVO direction with price structure or a trend filter, since volume-based oscillators are noisy on their own.
- As a breakout auditor: a range break accompanied by KVO expanding through zero agrees with the [volume-at-breakout](https://www.luxalgo.com/library/concept/volume-at-breakout/) read that real participation funded the move, while a break on a flat oscillator invites the failed-break scenario.
- As a second opinion next to bounded flow gauges: agreement between KVO and the [Money Flow Index](https://www.luxalgo.com/library/concept/money-flow-index/) covers both construction styles, cumulative-force and bounded-ratio, and disagreement flags that the volume story is not as clean as either alone suggests.

## Klinger oscillator vs other volume-flow tools

- **OBV** (https://www.luxalgo.com/library/concept/obv/): OBV adds or subtracts whole-bar volume on the close-to-close direction and accumulates forever, a blunt but durable trend line of participation. KVO signs volume by the high-low-close trend, tempers it by range conviction, and oscillates around zero, trading OBV's simplicity for crossable, divergible structure.
- **Money Flow Index** (https://www.luxalgo.com/library/concept/money-flow-index/): MFI is a bounded 0-100 ratio of positive to negative typical-price volume, read against overbought and oversold bands. KVO is unbounded and EMA-differenced, read for crosses and divergence; the two encode volume pressure in structurally different ways.
- **Volume Delta** (https://www.luxalgo.com/library/concept/volume-delta/): Volume delta measures buyer versus seller aggression directly from executed trades at bid and ask. KVO infers direction from bar anatomy, one signed number per bar, which any chart can compute but which cannot see the intrabar auction delta actually records.

## FAQ

### What are the standard settings for the Klinger Volume Oscillator?

The commonly published defaults are a 34-period and a 55-period EMA of volume force, with a 13-period EMA of the oscillator serving as the signal line. These are conventions rather than optimized values: shortening them produces more signals and more noise, while lengthening them favors slower money-flow trends over trade timing.

### How is the Klinger oscillator different from OBV?

[OBV](https://www.luxalgo.com/library/concept/obv/) adds or subtracts each bar's entire volume based only on whether the close rose or fell versus the prior close, producing an unbounded cumulative line. The Klinger oscillator signs volume by a high-low-close trend rule, weights it by a range-based temper factor, then takes the spread of two EMAs, so it oscillates around zero and can be read for crosses and divergence.

### What is volume force in the Klinger calculation?

It is the per-bar quantity everything else smooths: the bar's total volume, signed by whether the high-low-close sum rose or fell versus the prior bar, and scaled by a temper factor built from the bar's range relative to the cumulative range of the current directional move. The intent is that volume printed with conviction-sized ranges counts more than the same volume printed in drift.

### How should zero-line crosses be traded?

As regime confirmation rather than entries. A cross above zero says the fast consensus of signed volume has overtaken the slow one, which supports long setups generated elsewhere; the mirror applies below. Taken raw, zero crosses whipsaw in ranges like any EMA-difference signal, so most rule sets require the cross to agree with structure or a trend filter before it counts.

### Does the Klinger oscillator work in crypto and forex?

It runs anywhere volume exists, with the usual caveat that the reading is only as honest as the volume feed. Centralized crypto venues provide real traded volume per exchange; spot forex charts usually show tick counts standing in for volume, which changes what force means. On such feeds KVO becomes an activity oscillator, still readable, but not the money-flow measure Klinger designed.

### How does KVO compare with the Chaikin Oscillator?

Both are EMA-difference oscillators built on signed volume, but the signing differs. Chaikin's version accumulates close-location-weighted volume (the A/D line) and differences 3- and 10-period EMAs of it, so it grades where closes sit within bars. Klinger signs whole-bar volume by the high-low-close trend and tempers by range. In practice Chaikin reacts to close position within range while KVO reacts to trend flips, and they disagree most exactly where that distinction matters.

## Implementations in the Library

- Klinger Oscillator (LuxAlgo, the standard build of the classic formula): https://www.luxalgo.com/library/indicator/klinger-oscillator/

## Related concepts

- Money Flow Index: https://www.luxalgo.com/library/concept/money-flow-index/
- Weis Wave Volume: https://www.luxalgo.com/library/concept/weis-wave-volume/
- OBV: https://www.luxalgo.com/library/concept/obv/
- OBV Divergence: https://www.luxalgo.com/library/concept/obv-divergence/
- Accumulation/Distribution Line: https://www.luxalgo.com/library/concept/accumulation-distribution-line/
- Chaikin Oscillator: https://www.luxalgo.com/library/concept/chaikin-oscillator/
- Chaikin Money Flow: https://www.luxalgo.com/library/concept/chaikin-money-flow/
- Twiggs Money Flow: https://www.luxalgo.com/library/concept/twiggs-money-flow/
- Williams A/D: https://www.luxalgo.com/library/concept/williams-a-d/
- Price Volume Trend: https://www.luxalgo.com/library/concept/price-volume-trend/

---

Source: https://www.luxalgo.com/library/concept/klinger-volume-oscillator/ (LuxAlgo Library, the encyclopedia of trading & technical analysis). Free to use with attribution: https://www.luxalgo.com/library/license/