【無料インジ】RSI買われすぎ売られすぎアラートインジケーター

RSIアラートサムネイル 無料インジケーター

TradingView用のインジケーターです。

RSIの買われすぎ売られすぎラインに到達すると、アラートで知らせてくれます。

 

元々あるRSIのインジケーターにアラートを設定することはできたのですが、一度鳴ると消えてしまうので、常に反応できるように改造しました。

RSIアラートインジケーター

RSIアラート

コチラがRSIのアラートインジケーターの画面。

基本的にはデフォルトのRSIと変わりません。

 

RSIアラートパラメータ画面

RSIアラートスタイル

コチラがパラメータ画面とスタイル画面。コチラも基本的には変わりませんね。

期間や色の変更、買われすぎ売られすぎラインの位置を変更できます。

 

RSIアラートアラート画面

コチラがアラート画面。条件が満たされると、「RSIが買われすぎのレベルを超えました」とアラート画面に表示されます。

スマホなどだと待ち受けに出てくるので分かりやすいですね。

 

RSIアラートコード

 

//@version=5
indicator(title="Relative Strength Index with Alerts", shorttitle="RSI Alerts", format=format.price, precision=2, timeframe="", timeframe_gaps=true)

// Functions and existing code

ma(source, length, type) =>
    switch type
        "SMA" => ta.sma(source, length)
        "Bollinger Bands" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")
maTypeInput = input.string("SMA", title="MA Type", options=["SMA", "Bollinger Bands", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="MA Settings")
maLengthInput = input.int(14, title="MA Length", group="MA Settings")
bbMultInput = input.float(2.0, minval=0.001, maxval=50, title="BB StdDev", group="MA Settings")
showDivergence = input.bool(false, title="Show Divergence", group="RSI Settings")

up = ta.rma(math.max(ta.change(rsiSourceInput), 0), rsiLengthInput)
down = ta.rma(-math.min(ta.change(rsiSourceInput), 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiMA = ma(rsi, maLengthInput, maTypeInput)
isBB = maTypeInput == "Bollinger Bands"

// Plotting RSI and MA

rsiPlot = plot(rsi, "RSI", color=#7E57C2)
plot(rsiMA, "RSI-based MA", color=color.yellow)
rsiUpperBand = hline(70, "RSI Upper Band", color=#787B86)
midline = hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
rsiLowerBand = hline(30, "RSI Lower Band", color=#787B86)
fill(rsiUpperBand, rsiLowerBand, color=color.rgb(126, 87, 194, 90), title="RSI Background Fill")
bbUpperBand = plot(isBB ? rsiMA + ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Upper Bollinger Band", color=color.green)
bbLowerBand = plot(isBB ? rsiMA - ta.stdev(rsi, maLengthInput) * bbMultInput : na, title = "Lower Bollinger Band", color=color.green)
fill(bbUpperBand, bbLowerBand, color= isBB ? color.new(color.green, 90) : na, title="Bollinger Bands Background Fill")

// Overbought and Oversold alert conditions

overboughtLevel = 70
oversoldLevel = 30
rsiOverbought = rsi > overboughtLevel
rsiOversold = rsi < oversoldLevel
alertcondition(rsiOverbought, title="RSI Overbought Alert", message="RSIが買われ過ぎのレベルを超えました。")
alertcondition(rsiOversold, title="RSI Oversold Alert", message="RSIが売られ過ぎのレベルを下回りました。")

// Divergence and other existing code...

// Rest of the existing divergence code...

 

コメント

タイトルとURLをコピーしました