RSIは一般的に、70以上で買われすぎ30以下で売られすぎですよね。
でもこれだとあまりに機械的すぎ。出来高増えだすニューヨーク時間などだと全く違う結果だったりします。
そこで、できるだけ状況に柔軟に対応できるように、ボラティリティによってRSIの買われすぎ売られすぎのラインが変化するインジケーターをつくりました。
コードは最後の方にありますが、設定とかもあるので軽くでもいいので一通り読んでから使うことをおススメします。
RSIボラティリティ変化抜け出しインジ

コチラがRSIボラティリティ変化インジ。
相場が大きく動いた後、RSIの買われすぎ売られすぎのラインがグイっと広がっているのが分かると思います。
ボラティリティ(変動率)が上がると、それに合わせて買われすぎ売られすぎが変化してサインがやや出にくくなる という仕様です。
買われすぎ売られすぎに突入後、抜けだしたタイミングでサインが出て、アラートも設定できます。
RSIボラティリティ設定方法

コチラが設定画面。
volatility sensitivity というのがありますが、この数値でボラティリティの変動率を変えることができます。
買われすぎ売られすぎラインは基本、買われすぎ70、売られすぎ30固定です。
ここで、volatility sensitivityの値を10にすると、70~前後10=75~65まで変化しますよ~
という意味。
もし20にしたら、80~60まで変化しますよ~ という意味。売られすぎも同様ですね。
volatility sensitivityの値を大きくすればするほどダマシ回避になりますがサインが減るという感じです。
「時間足」とのはマルチタイムフレーム機能。
時間足を限定してみているなら変更してもいいですが、基本「チャート」で使うことになると思います。
なんとなく付けました。

コチラがスタイル画面。色の変更とかはこちらでどうぞ。
アラート画面

コチラがアラート画面。
買われすぎ売られすぎのアラートは別にしてあるのでそれぞれ設定してください。
ちなみに、アラートメッセージに自動で「通貨名」「時間足」が表示されるようになっているので、アラートを作るたびにメッセージを変更する必要ありません。
とりあえず任意の通貨と時間足で設定してしまえば、後はアラートメッセージ見ればすぐ分かります。
RSIボラティリティ抜け出しインジコード
//@version=5
indicator("Dynamic RSI", "DRSI", overlay=false, precision=2, timeframe="")
// Input parameter
vol_sensitivity = input.float(10, "Volatility Sensitivity", minval=1, maxval=30, step=1, tooltip="Higher values make the bands more responsive to volatility (1-30)")
// Base RSI calculation
rsi = ta.rsi(close, 14)
// Volatility calculation using ATR
atr = ta.atr(14)
norm_atr = atr / close * 100 // Normalized ATR as percentage
// Dynamic levels based on volatility
vol_factor = norm_atr / ta.sma(norm_atr, 14) // Compare current volatility to average
base_ob = 70
base_os = 30
// Adjust levels based on volatility with user-defined sensitivity
dynamic_ob = base_ob + (vol_factor - 1) * vol_sensitivity
dynamic_os = base_os - (vol_factor - 1) * vol_sensitivity
// クロスオーバー検出
crossedAboveOS = ta.crossover(rsi, dynamic_os)
crossedBelowOB = ta.crossunder(rsi, dynamic_ob)
// Plot
plot(rsi, "RSI", color=#2962FF)
plot(dynamic_ob, "Dynamic Overbought", color=#FF5252)
plot(dynamic_os, "Dynamic Oversold", color=#4CAF50)
// アラート条件の設定
alertcondition(crossedAboveOS, "Dynamic Oversold Cross", "{{ticker}} ({{interval}}) - RSI crossed above dynamic oversold level")
alertcondition(crossedBelowOB, "Dynamic Overbought Cross", "{{ticker}} ({{interval}}) - RSI crossed below dynamic overbought level")
// シグナルの可視化
plotshape(crossedAboveOS, title="Oversold Signal", style=shape.triangleup, location=location.bottom, color=#4CAF50, size=size.tiny)
plotshape(crossedBelowOB, title="Overbought Signal", style=shape.triangledown, location=location.top, color=#FF5252, size=size.tiny)
コチラがコード。トレーディングビューのpineに張り付けて使えるハズです。
アラート統合版
//@version=5
indicator("Dynamic RSI", "DRSI", overlay=false, precision=2, timeframe="")
// Input parameter
vol_sensitivity = input.float(10, "Volatility Sensitivity", minval=1, maxval=30, step=1, tooltip="Higher values make the bands more responsive to volatility (1-30)")
// Base RSI calculation
rsi = ta.rsi(close, 14)
// Volatility calculation using ATR
atr = ta.atr(14)
norm_atr = atr / close * 100 // Normalized ATR as percentage
// Dynamic levels based on volatility
vol_factor = norm_atr / ta.sma(norm_atr, 14) // Compare current volatility to average
base_ob = 70
base_os = 30
// Adjust levels based on volatility with user-defined sensitivity
dynamic_ob = base_ob + (vol_factor - 1) * vol_sensitivity
dynamic_os = base_os - (vol_factor - 1) * vol_sensitivity
// クロスオーバー検出
crossedAboveOS = ta.crossover(rsi, dynamic_os)
crossedBelowOB = ta.crossunder(rsi, dynamic_ob)
// Plot
plot(rsi, "RSI", color=#2962FF)
plot(dynamic_ob, "Dynamic Overbought", color=#FF5252)
plot(dynamic_os, "Dynamic Oversold", color=#4CAF50)
// アラート条件の設定
alertcondition(crossedAboveOS or crossedBelowOB, "Dynamic RSI Signal", "{{ticker}} ({{interval}}) - RSI Signal Alert")
// シグナルの可視化
plotshape(crossedAboveOS, title="Oversold Signal", style=shape.triangleup, location=location.bottom, color=#4CAF50, size=size.tiny)
plotshape(crossedBelowOB, title="Overbought Signal", style=shape.triangledown, location=location.top, color=#FF5252, size=size.tiny)
「アラート買われすぎ売られすぎ1つにまとめてほしい」という方のために、コチラはアラート統合バージョンです。
お好きな方でどうぞ。
手法紹介
他のインジケーターと組み合わせてもいいと思いますが、一番わかりやすいのは200EMAなど、MAラインとの組み合わせですかね。
例えば200EMAより上にいる状態で売られすぎから抜け出しサインが出た。
逆に200EMAより下にいる状態で買われすぎから抜け出しサインが出た。
これだとそのままトレンドに乗っかるかる感じで押し目狙いということになります。
グランビルになるのかな?
まぁ呼び方は自由でいいと思いますが、わかりやすいのがこの方法ですかね。
好みもあると思うので、いろいろいじってご自身で確認してみてください。


コメント