
この取引戦略は,相対的に強い指標 ((RSI)) と価格の動きの間の離散現象に基づいています. 潜在的トレンド反転の機会を捉えることを目的としています. 戦略は,多頭離散と空頭離散を検知することによって,それぞれ買いと売りのシグナルを生成します. RSIと価格との離散が発生すると,現在のトレンドがすぐに反転する可能性を示し,トレーダーに潜在的取引機会を提供します.
RSIベースのトレンド反転取引戦略は,RSI指標と価格の動きの間の反転現象を捉え,潜在的なトレンド反転の機会を識別します.戦略はシンプルで使いやすいもので,複数の金融市場に適用できます.しかし,トレーダーは,偽信号,遅滞,パラメータの感受性などのリスク要因に注意する必要があります.他の指標,パラメータのダイナミック調整,リスク管理などの最適化措置を組み合わせることで,戦略の安定性と収益性の可能性をさらに向上させることができます.
/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("RSI Divergence Strategy", overlay=true)
// Input parameters
rsiLength = input.int(14, title="RSI Length")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
lookback = input.int(5, title="Lookback Period for Divergence")
// Calculate RSI
rsi = ta.rsi(close, rsiLength)
// Function to detect bullish divergence
bullishDivergence(price, rsi, lookback) =>
var bool bullDiv = false
for i = 1 to lookback
if (low[i] < low and rsi[i] > rsi)
bullDiv := true
bullDiv
// Function to detect bearish divergence
bearishDivergence(price, rsi, lookback) =>
var bool bearDiv = false
for i = 1 to lookback
if (high[i] > high and rsi[i] < rsi)
bearDiv := true
bearDiv
// Detect bullish and bearish divergence
bullDiv = bullishDivergence(close, rsi, lookback)
bearDiv = bearishDivergence(close, rsi, lookback)
// Plot RSI
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)
plot(rsi, title="RSI", color=color.blue)
// Generate buy signal on bullish divergence
if (bullDiv and ta.crossover(rsi, rsiOversold))
strategy.entry("Buy", strategy.long)
// Generate sell signal on bearish divergence
if (bearDiv and ta.crossunder(rsi, rsiOverbought))
strategy.entry("Sell", strategy.short)
// Plot buy/sell signals on chart
plotshape(series=bullDiv, location=location.belowbar, color=color.green, style=shape.labelup, text="Bull Div")
plotshape(series=bearDiv, location=location.abovebar, color=color.red, style=shape.labeldown, text="Bear Div")