# Klinger Volume Oscillator

This study calculates and displays a Klinger Volume Oscillator (KVO) of the Price and Volume Data.

Let $$H_t$$, $$L_t$$, $$C_t$$, and $$V_t$$ denote the High, Low, Close, and Volume, respectively, at Index $$t$$.

We begin by introducing the Trend, Daily Measurement, Cumulative Measurement, and Volume Force, whose values at Index $$t$$ are denoted respectively as $$Trend_t$$, $$DM_t$$, $$CM_t$$, and $$VF_t$$. We compute these as follows.

$$\displaystyle{Trend_t = \left\{ \begin{matrix} 1 & H_t + L_t + C_t > H_{t - 1} + L_{t - 1} + C_{t - 1} \\ -1 & H_t + L_t + C_t \leq H_{t - 1} + L_{t - 1} + C_{t - 1} \end{matrix}\right .}$$

$$DM_t = H_t = L_t$$

For $$t = 0$$:

$$CM_0 = DM_0$$

For $$t > 0$$:

$$\displaystyle{CM_t = \left\{ \begin{matrix} CM_{t - 1} + DM_t & Trend_t = Trend_{t - 1} \\ DM_{t - 1} + DM_t & Trend_t \neq Trend_{t - 1} \end{matrix}\right .}$$

$$\displaystyle{VF_t = V_t \left|2\left(\frac{DM_t}{CM_t} - 1\right)\right| \cdot Trend_t \cdot 100}$$

Let the Inputs Fast Moving Average Length and Slow Moving Average Length be denoted as $$n_F$$ and $$n_S$$, respectively. Then we denote the Klinger Volume Oscillator at Index $$t$$ for the given Inputs as $$KVO_t(n_F,n_S)$$, and we compute it in terms of Exponential Moving Averages as follows.

$$KVO_t(n_F,n_S) = EMA_t(VF_t, n_F) - EMA_t(VF_t, n_S)$$

As can be seen in the above formula, the KVO is the MACD of the Volume Force.

Note: Depending on the setting of the Input KVO Moving Average Type, the Exponential Moving Averages in the above formula could be replaced with Linear Regression Moving Averages, Simple Moving Averages, Weighted Moving Averages, Wilders Moving Averages, Simple Moving Averages - Skip Zeros, or Smoothed Moving Averages.

A second subgraph displayed by this study is the Trigger Line. Let $$n_T$$ denote the Trigger Moving Average Length

Input. Then the Trigger Line at Index $$t$$ is denoted as $$Trig_t(n_F, n_S, n_t)$$, and it is computed as follows.

$$Trig_t(n_F, n_S, n_T) = EMA_t(KVO(n_F, n_S), n_T)$$

Note: Depending on the setting of the Input Trigger Moving Average Type, the Exponential Moving Average in the above formula could be replaced with a Linear Regression Moving Average, a Simple Moving Average, a Weighted Moving Average, a Wilders Moving Average, a Simple Moving Average - Skip Zeros, or a Smoothed Moving Average.