Note: Pearson Correlation only measures the linear relationship between two variables, such as y = a*x + b. There are other measurements for nonlinear correlations.
When option “R” for "Correlation variants" is chosen, the value would be the same as TradingView's built in correlation() function. For "Adjusted R ", the calculation is based on the traditional Pearson. The sample r is a biased estimate of population ρ. The adjusted r gets rid of some of the bias but not all. As the sample size or lookback period increases, adjusted r will be closer to r.
The confidence interval is computed for population ρ estimation based on sample r. itself doesn’t follow a normal distribution. is applied to transform the data into an approximately normal distribution. We compute the based on the transformed data, then use an inverse to transform back the in terms of r.
Note: the confidence interval band is an approximation of population, it proposes a range of plausible r values (instead of a point). The confidence level represents the frequency (i.e. the proportion) of possible confidence intervals that contain the true value of the unknown population parameter. The proportion of those intervals that contain the true value of the parameter will be equal to the confidence level. For example, if the confidence level is 95% then in hypothetical indefinite data collection, in 95% of the samples the interval estimate will contain the population parameter. The default setting is 1.96* which is 95% confidence interval.
The most important and distinguishable feature of this indicator is the p-value provided along with the correlation.
The value of alone doesn’t provide any information regarding its statistical significance. For example, two sets of independent samples have 0 correlation in theory. However, your on these samples will never actually show 0 correlation (small correlation value but not 0). Therefore without a significance test, one would be fooled by the value of r when there’s no linear relationship at all.
In statistical hypothesis testing, the p-value or probability value is the probability of obtaining test results at least as extreme as the results actually observed during the test, assuming that the null hypothesis is correct. The smaller the p-value, the stronger the evidence that the null hypothesis should be rejected and that the alternate hypothesis might be more credible. Since one could be deceived by r showing values while correlation is actually 0. The null hypothesis here is the “r is 0”. The alternative hypothesis is “ r is not 0”. The default setting for p critical value is 0. 05 . It means that when p is lower than 0. 05 , there’s less than 5% chance that correlation is 0, and we consider that to be "significant correlation". To get the p-value, We use a t distribution with n – 2 degrees of freedom to find the probability. P-value will adjust automatically when the sample size or lookback changes.
When p is lower than 0. 05 and r > 0, shows red, p-value shows yellow, panel shows “Significant Positive Correlation”.
When p is lower than 0. 05 and r < 0, shows green, p-value shows yellow, panel shows “Significant Negative Correlation”.
When p is higher than 0. 05 , correlation, shows white, p-value shows grey, panel shows “Insignificant Correlation”.
r² (r squared) also known as the coefficient of determination, is the square of correlation r. r² measures how well the data fit the model used in correlation. When two assets show significant correlation, r squared can be used to compare which one fits the data better. r² is displayed on the panel and has a different lookback by default than the .
Contributors : Pig (ideas, code, math and design), Balipour (ideas), midtownsk8rguy(applying/employing Pine etiquette).
In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.