斯皮尔曼等级相关性是一种非参数方法,常用于研究变量之间的关系。在这里,我们主要是检测两个数值序列之间的平行程度。
计算斯皮尔曼等级相关性的步骤
- 第一步:将每个指标与其对应的排名进行配对,并按从高到低或从低到高的顺序排列。
- 第二步:对每对需要比较的值的两个排名进行相减。
- 第三步:将每个差值平方后加总。
- 第四步:使用以下公式计算等级相关性:

其中,
为排名差值的平方和,
为配对观察的数量。
使用等级相关性时,通常将相关系数小于或等于0.3视为低相关性,0.4至0.7视为中等相关性,而大于0.7则视为高度相关性。
总体来说,斯皮尔曼等级相关性在统计能力上稍逊于参数相关性。当观察数量较少时,使用等级相关性是合理的。这个方法可以用于数值数据,也适用于注册值的不同强度属性情况。
另外,这个指标属于振荡器的一种。与随机振荡器相比,它的平滑度更高,并且不会在转折点上滞后。
参数设置
影响计算算法的唯一外部参数是 rangeN。它设定了我们试图寻找规律的 bars 数量。如果 rangeN = 14,那么我们将取收盘价格序列 Close[i], Close[i+1], ... Close[i+rangeN-1],并为它们构建一个排名序列,即在序列排序时找到每个收盘价的位置。在这种情况下,一个实际图表将与另一个单调递增的图表进行比较。
direction 参数表示从最高值到最低值(true)或从最低值到最高值(false)的排序。值为 true 时显示的是更常见的图像,而 false 则生成反转的图像。CalculatedBars 参数的引入是为了限制计算的 bars 数量,以节省 CPU 资源(尽管这其实并不必要)。该参数为零时,表示将对所有可用历史进行计算。Maxrange = 30 则设置最大计算周期,这个参数也是为了节省资源,也许有人会需要它。
