通常のRelative Strength Index (RSI)は、価格変動の速度と変化を測定し、買われすぎや売られすぎの状態を識別するための指標であり、一般的には0から100の範囲で推移し、70と30を境界として用います。本記事ではRSIを拡張し、Cuttler、Ehlers、Harris、Quick、Basic、RSX、Gradualといった複数のバリエーションを追加することで、計算方法を調整し、また市場のモメンタムに対する感度や平滑化の特性など、異なる側面を強調できるようにします。データの平滑化には、単純平均、成長ベース、平滑化平均、線形加重といった平均化手法を用い、価格入力(終値、始値、高値、安値、またはそれらから導出される平均値など)に対して前処理をおこなうことで、ノイズを低減し、より明確なシグナルを得られるようにします。
新しい記事「MQL5でカスタムインジケータを作成する(第6回):平滑化、色相シフト、マルチタイムフレーム対応を備えたRSI計算の拡張」はパブリッシュされました:
通常のRelative Strength Index (RSI)は、価格変動の速度と変化を測定し、買われすぎや売られすぎの状態を識別するための指標であり、一般的には0から100の範囲で推移し、70と30を境界として用います。本記事ではRSIを拡張し、Cuttler、Ehlers、Harris、Quick、Basic、RSX、Gradualといった複数のバリエーションを追加することで、計算方法を調整し、また市場のモメンタムに対する感度や平滑化の特性など、異なる側面を強調できるようにします。データの平滑化には、単純平均、成長ベース、平滑化平均、線形加重といった平均化手法を用い、価格入力(終値、始値、高値、安値、またはそれらから導出される平均値など)に対して前処理をおこなうことで、ノイズを低減し、より明確なシグナルを得られるようにします。
色相シフトは、方向転換、中心線の交差、または境界の突破といった条件に基づいてインジケータの色を変化させ、トレンドの反転や強さを示す視覚的な手がかりを提供します。動的な境界線は、指定された期間における最近のRSIの極値に基づいて買われすぎと売られすぎのレベルを調整しますが、静的な境界線は固定のパーセンテージを使用します。また、マルチタイムフレームのサポートにより、異なる期間にわたる分析が可能になり、オプションの補間機能を使用してより滑らかな視覚化を実現できます。
設計方針としては、RSIのバリエーション、データソース、平滑化手法、色相シフトの条件、境界設定を選択するためのユーザー入力を構成し、それらの設定に基づいてRSI曲線を計算します。その後、境界線および塗りつぶしを描画し、マルチタイムフレームデータを処理し、色相シフトが発生した際には通知を送信します。つまり、本インジケータは従来のRSIよりも柔軟性が高く、さまざまな市場環境や分析スタイルに対応できる高度なカスタマイズ性を備えています。
最終的には、任意の価格系列からモメンタムを計算できる適応型RSIエンジンが得られます。これは終値に限定されるものではありません。さらに、入力データとRSI自体の両方を動的に平滑化できるため、コアロジックを変更することなく、高速、低速、サイクル追従型の挙動を切り替えることが可能になります。そのうえで、境界値と視覚的状態は自動調整され、買われすぎ・売られすぎのシグナルは固定値ではなく市場状況に適応する形になります。それでは実装に進みましょう。
作者: Allan Munene Mutiiria