Machine Learning: Optimal RSI [YinYangAlgorithms]
Machine Learning: Optimal RSI とは
RSIといえばデフォルトの「期間14」が定番ですが、**「その14という数字は本当に最適なのか?」**という問いから生まれたインジケーターです。
複数のRSI期間を同時に評価し、直近の一定期間で最も利益を生み出した期間を自動的に選択します。さらにその選択をk近傍法(KNN)という機械学習アルゴリズムで精緻化することで、より滑らかで精度の高いRSIを生成します。
RSIが「動的に自分で最適な期間を探す」というコンセプトは、固定パラメータのインジケーターに慣れ親しんだトレーダーには新鮮な視点です。

主な特徴
- 最適RSI期間の自動選択 — 複数のRSI期間を並列評価し、最も高い利益を出したクロスシグナルを生む期間をリアルタイムで選択
- 2種類の機械学習モード — 「シンプル平均(最適RSIの平均値)」または「KNN(異なる速度の移動平均を比較)」から選択可能
- クロス評価の2モード — 「全クロス評価」(全てのRSI-MAクロス)または「極値クロス評価」(RSI≤40またはRSI≥60時のみ)から選択
- 最適RSI期間ベースのボリンジャーバンド — 動的に選ばれたRSI期間に基づいてボリンジャーバンドを描画。適応的なサポレジとして機能
- 時間足自動調整 — 時間足に応じてルックバック長とRSI数を自動調整。タイムアウトエラーを防ぐ設計
使い方のポイント
基本的なシグナルの読み方
- RSIがMAを下から上にクロス → 買いシグナルの候補
- RSIがMAを上から下にクロス → 売りシグナルの候補
- 通常のRSIと違い、使用される期間が毎バー変化する可能性がある点に注意
極値クロスモードの活用
- RSI≤40での上クロスは売られすぎからの反転を示す信頼性の高い買いシグナル
- RSI≥60での下クロスは買われすぎからの反転を示す信頼性の高い売りシグナル
- ダマシを減らしたい場合は極値クロスモードがおすすめ
KNNモードとシンプル平均の違い
- シンプル平均 → 最適RSI期間の平均値を使用。比較的安定した動き
- KNN → 異なる速度の移動平均を参照して判定。相場環境の変化への適応性が高い
インジケーター情報
| 項目 | 内容 |
|---|---|
| 作者 | YinYangAlgorithms |
| ソースコード | 公開(Open Source) |
| いいね | 1,324 |
| タグ | RSI, 機械学習, KNN, 最適化, ボリンジャーバンド |
このインジケーターをTradingViewで使う: Machine Learning: Optimal RSI [YinYangAlgorithms]
このインジケーターをEA化するなら
売買条件の言語化例:
- 買いエントリー: 最適RSIがMAを下から上にクロスし、かつRSI値が40以下の時
- 売りエントリー: 最適RSIがMAを上から下にクロスし、かつRSI値が60以上の時
- フィルター: 上位時間足のトレンド方向と一致する方向のクロスのみ採用
EAに応用したい場合は、AIにPine Scriptのソースコードを読ませて複数RSI期間の並列評価ロジックをMQL4で再現させる方法が現実的です。ただしKNNの完全再現は複雑になるため、**「直近N期間で最も高頻度にクロスが発生したRSI期間を選ぶ」**というシンプル化した実装から始めるのが現実的です。
変換の具体的な手順は TradingViewのインジケーター条件をAIに伝える方法 を参照してください。
この記事で紹介したツール
TradingView — Machine Learning: Optimal RSIのような複数パラメータを同時評価するインジケーターを活用するには、動作が安定したPro以上のプランがおすすめです。
関連記事
LOWESS Channel & Extrapolation [LuxAlgo]
局所回帰(LOWESS)を使った非線形トレンドラインと将来予測チャネルを表示するインジケーター。平均回帰ポイントの特定に活用できる。
Volatility Gaussian Bands [BigBeluga]
ガウスフィルターと動的ボラティリティバンドを組み合わせた高精度なトレンド分析インジケーター。トレンドの方向・強さ・反転ポイントを視覚化する。
Divergence for Many Indicators v4
RSI・MACD・ストキャスティクスなど9種類のインジケーターで同時にダイバージェンスを検出。通常・隠れダイバージェンスの両方に対応した多機能ツール。
Trend Lines v2
ピボットポイントを使ってトレンドラインを自動描画するインジケーター。ブレイク済みラインの表示切替やアラート機能も備えた実用的なツール。
