RCI:正確な定義による算出

RCI(スピアマンの順位相関係数・Rank Correlation Index)に関する技術的な解説です。
RCIを利用する場合には理解しておいた方が良いでしょう。

RCIの正確な定義による算出と、証券会社の一般的なチャートで利用されているRCIの算出方法とは一部異なっています。

数値に同順位(数値が同じ)がある場合、

  1. 平均順位で補正する。
  2. 別の数式で算出する。

方法が正確です。

一般的なチャートではそうされていません。この場合、RCIが異なります。
また、一般的なチャートでも、範囲の数値がすべて異なる場合にはRCIは正確に算出されています。

更に、トレード向けのRCIの解説では、平均順位で補正することを書いていないところもあります。

M.trading システムトレード開発(Excel) Ver 1.5以降の初期設定では、正確な定義に合わせたRCIを算出しています。

以前のM.tradingの算出に戻す方法

Ver1.5より前のM.tradingの算出方法にする(平均順位で補正を行わないRCIの算出になります)場合は、次のようにして下さい。

VBAのModule1にある、Function RCI(終値 As Range, n As Long) As Double のモジュール内の、次の部分をコメントにします。

同順位の補正因子 = (n + 1 - WorksheetFunction.Rank(dataValue, dataRange, 0) - WorksheetFunction.Rank(dataValue, dataRange, 1)) / 2

参考

注意深く調べた結果ですが、私は数学に関する知識はさほどありません。間違いがありましたらお知らせ下さい。

実例

中部電力(9504) 四本値と、楽天マーケットスピードのRCI(10日)・M.trading 正確な定義RCI(10)・M.trading 平均順位の補正を行わない場合RCI(10)の比較です。

日付始値高値安値終値マーケットスピード RCI(10) %M.trading 正確な定義RCI(10)M.trading 平均順位の補正を行わない場合RCI(10)
2010/6/181,8301,8341,8151,819
2010/6/211,8241,8391,8191,833
2010/6/221,8281,8341,8231,825
2010/6/231,8201,8281,8191,819
2010/6/241,8191,8371,8141,822
2010/6/251,8131,8321,8091,832
2010/6/281,8311,8471,8261,847
2010/6/291,8371,8421,8301,842
2010/6/301,8401,8401,8101,829
2010/7/11,8271,8291,7981,81311.210.1094230.140517
2010/7/21,8201,8211,7971,818-29.69-0.29697-0.29697
2010/7/51,8301,8331,8161,823-21.21-0.21212-0.21212
2010/7/61,8161,8311,8111,831-10.3-0.10303-0.10303
2010/7/71,8281,8451,8191,839-10.3-0.10303-0.10303
2010/7/81,8501,8641,8421,8593.030.0303030.030303
2010/7/91,8531,8561,8401,84421.210.2121210.212121
2010/7/121,8441,8451,8221,82433.330.3333330.333333
2010/7/131,8271,8311,8111,81424.840.2484850.248485
2010/7/141,8311,8351,8171,81815.450.1519760.142134
2010/7/151,8171,8221,7901,790-39.09-0.39514-0.37902
2010/7/161,7901,8041,7851,796-68.48-0.68485-0.68485

M.trading 平均順位の補正を行わない場合RCI(10) は、

  • Ver1.5より前のM.trading(RCIのFunctionを変更する前)
  • Ver1.5以降のM.tradingで、同順位の補正因子 = の部分をコメントアウトした場合。

のどちらもこの値になります。

  • 7/1のRCIは、6/18~7/1までの10日間の終値を基に算出します。6/18、6/23の終値が1819で同じであるため、M.tradingの正確な定義のRCIとマーケットスピードのRCIとは異なっています。
  • 7/14のRCIは、7/1~7/14までの10日間の終値を基に算出します。7/2、7/14の終値が1818で同じであるため、M.tradingの正確な定義のRCIとマーケットスピードのRCIとは異なっています。
  • 7/15のRCIは、7/2~7/15までの10日間の終値を基に算出します。7/2、7/14の終値が1818で同じであるため、M.tradingの正確な定義のRCIとマーケットスピードのRCIとは異なっています。

検算

スピアマンとケンドールの順位相関係数で、7/1のRCI(10)を計算させてみました。

0.1094230

となり、M.tradingで正確な定義のRCIを計算した場合と一致します。

スピアマンの順位相関係数= 0.1094230 
検定統計量: 0.3113646 
自由度: 8 
有意確率: 0.7634826 
検定結果: P > 0.05

履歴

2010-08-03
掲載