# RSI - Connors

### Description

This study calculates and displays the Connors RSI, as developed by Connors Research.

Let $$X$$ be a random variable denoting the Input Data Input. Let the Inputs RSI Length and Rate of Change Length be denoted as $$n_{RSI}$$ and $$n_{ROC}$$, respectvely.

We begin by computing the standard RSI using the Wilders Moving Average by default. This can be changed by appropriately setting the RSI Average Type Input.

We then define the Up-Down Length, denoted as $$UDL_t(X)$$. This is a backward-looking calculation of the number of consecutive bars (starting with the current two bars) that the value of $$X$$ has been either higher or lower than than the previous bar. Let $$N$$ denote this number. We then compute $$UDL_t(X)$$ as follows.

$$\displaystyle{UDL_t(X) = \left\{ \begin{matrix} N & X_{t - N + 1} < X_{t - N + 2} < \cdot\cdot\cdot < X_{t - 1} < X_t \\ 0 & X_{t - 1} = X_t \\ -N & X_{t - N + 1} > X_{t - N + 2} > \cdot\cdot\cdot > X_{t - 1} > X_t \end{matrix}\right .}$$

We then compute $$RSI_t(UDL(X),2)$$.

Next we define the Rate of Change, denoted as $$ROC_t(X,n_{ROC})$$ This is the percentage of the previous $$n_{ROC}$$ bars for which the price change from one bar to the next is less than the current price change. Denote the current price change as $$Delta X_t = X_t - X_{t - 1}$$, and denote the price change $$i$$ bars ago as $$\Delta X_{t - i} = X_{t - i} - X_{t - i - 1}$$. Define $$n_i$$ as follows.

$$\displaystyle{n_i = \left\{ \begin{matrix} 1 & \Delta X_{t - i} < \Delta X_t \\ 0 & \Delta X_{t - i} \geq \Delta X_t \end{matrix}\right .}$$

We then compute $$ROC_t(X,n_{ROC})$$ as follows.

$$\displaystyle{ROC_t(X,n_{ROC}) = \frac{100}{n_{ROC}}\sum_{i = 1}^{n_{ROC}}n_i}$$

Finally, we denote the Connors RSI as $$RSI^{(C)}_t(X,n_{RSI},n_{ROC})$$ and compute it as follows.

$$\displaystyle{RSI^{(C)}_t(X,n_{RSI},n_{ROC}) = \frac{1}{3}\left(RSI(X,n_{RSI}) + RSI_t(UDL(X),2) + ROC_t(X,n_{ROC})\right) }$$

In addition to displaying the Subgraph for $$RSI^{(C)}_t(X,n_{RSI},n_{ROC})$$, it also displays horizontal lines at levels determined by the Line 1 Value and Line 2 Value Inputs.