mortdiggiddy

Spearman Rank Correlation Coefficient

I'm pleased to introduce this script in honor of the new array functions introduced to PineScript version 4.0. This update is a long time coming and opens the door to amazing scripting possibilities!

Definition

Named after Charles Spearman and denoted by the Greek letter ‘ρ’ (rho), the Spearman rank correlation coefficient is the nonparametric version of the Pearson correlation coefficient. Use the Spearman rank correlation when you have two ranked variables, and you want to see whether the two variables covary. That is, as one variable increases/decreases, the other variable tends to increase/decrease respectively.

It is best used to discover if two variables (and in this first version of the indicator, two ticker symbols) increase and decrease together. There are advantages to using this version of correlation vs. the Pearson R.

Interpretation

The value oscillates between +1 and -1.

  • A value of +1 means the two variables are perfectly correlated, that is they are increasing and decreasing together in perfect harmony.
  • A value of -1 means the two variables exhibit a perfect negative correlation, that is they increase and decrease oppositely.
  • A value of zero means the two variables are not correlated at all (noise).
Release Notes:
  • Removed the 'lookahead = true' parameter from the security function, not needed.
  • Fixed logic of duplicates to be more straightforward.
Release Notes:
  • Fixed issue with hLines.
Release Notes:
  • Updated symbol input to input.symbol.
Release Notes:
  • Fixed -1 index out of bounds exception.
Release Notes:
  • Removed index out of bound corner cases.
Skript med en öppen källkod

I sann TradingView-anda har författaren till detta skript publicerat det som öppen källkod, så att handlare kan förstå och verifiera det. Skål för författaren! Du kan använda den gratis men återanvändning av den här koden i en publikation regleras av våra Ordningsregler. Du kan göra den till favorit för att använda den i ett diagram.

Vill du använda det här skriptet i ett diagram?

Kommentarer

Thank you for the update!!!!
500 coins
+1 Svara
👏
500 coins
+1 Svara
500 coins
Svara
This publication is now featured in our Editors' Picks. In the name of all TradingView traders, thank you for your valuable contribution to the TradingView community, and congrats!
+5 Svara
mortdiggiddy PineCoders
@PineCoders, Thank you kindly!
+1 Svara
Thank you for this. This is very elegant coding. The only problem for me is that this implementation of the Spearman Rank Correlation does not work as a function. Pine Script is limited and does not yet allow the use of function within functions. So, the rank function and corr function prevent the adaptation of the script to serve as a function.
+1 Svara
thanks for sharing

I have a published study which implements Pearson correlation coefficient, where I attempted to discover correlation between two variables of the same instrument, such as Price(Close) and OBV. What would be you thoughts of such kind of usage?

Cheers
+1 Svara
@dgtrd, Spearman is superior when all you are looking for is if the two instruments are increasing and decreasing together. Pearson will go a step further to give weight to the magnitudes of increases and decreases.
Svara
dgtrd mortdiggiddy
thnaks @mortdiggiddy,
Svara
Thank you for this script !
Sadly it often displays errors "Index -1 is out of bounds. Array size is 1" when using intraday time frames, and sometimes on daily time frame, depending of the source to compare to. Do you have any idea why ?
Svara