MT4のRSIは本当にRSI ???

RSI(Relative Strength Index:相対力指数)は、J.W.ワイルダーが『ワイルダーテクニカル分析入門』で紹介したモメンタム・オシレーター系のテクニカル指標で、計算式は、
RSI = 100 - [100 / (1 + RS)]
RS=計算期間の値上がり幅の平均を計算期間の値下がり幅の平均値で割ったもの(=相対力)
と紹介されていることが多いと思います。

…で、実際にこれを手計算で求めてみるとMT4付属のRSIとは一致しません
MT4のRSIの計算式は、RSI.mq4 のコード(http://codebase.mql4.com/source/1210 )を見れば分かりますが、
平均の求め方がちょっと変わっています。

{
//---- smoothed moving average
rel=Close[i]-Close[i+1];
if(rel>0) sump=rel;
else sumn=-rel;
positive=(PosBuffer[i+1]*(RSIPeriod-1)+sump)/RSIPeriod;
negative=(NegBuffer[i+1]*(RSIPeriod-1)+sumn)/RSIPeriod;
}

これは、計算期間の単純平均を求めない代わりに、前日の平均値と今日の値から今日の平均値を求めている感じで、EMA(指数移動平均)に近い考え方です。
これって、本当に正しいRSIなの???と思って調べたところ、
http://www.k3.dion.ne.jp/~forex/tc/rsi.htm
にRSIの計算方法のBパターンとして紹介されていました。

ワイルダーの定義がどちらだったのかは分かりませんが、計算式の定義は注意して見る必要がありそうですね。