SPY RSI Stochastics cross value reversal trend strategy adalah strategi perdagangan kuantitatif yang menggunakan crossover garis cepat dan lambat dari indikator RSI untuk menilai harga reversal. Strategi ini menggabungkan garis lambat, garis cepat, dan garis MA untuk menghasilkan sinyal beli dan jual dalam kondisi tertentu untuk menangkap peluang reversal harga yang lebih besar.
Logika inti dari strategi ini didasarkan pada rasio crossover RSI. RSI biasanya berbalik di area overbought dan oversold, sehingga dengan menilai rasio crossover RSI dengan rasio crossover RSI, Anda dapat mengetahui kapan harga mungkin berbalik. Secara khusus, strategi ini bergantung pada beberapa indikator dan kondisi:
Ketika RSI cepat melewati RSI lambat (((Goldfork) dan melewati MA pada RSI cepat, maka akan ada sinyal beli. Ketika RSI cepat melewati RSI lambat (((Deadfork) dan melewati MA pada RSI cepat, maka akan ada sinyal jual.
Selain itu, untuk menyaring sebagian dari transaksi yang berisik, strategi ini diatur dengan logika berikut:
Setelah masuk, ada dua syarat untuk keluar:
Keuntungan terbesar dari strategi SPY RSI Stochastics adalah bahwa strategi ini dapat menangkap tren sebelum ada perubahan harga yang lebih jelas. Dengan cara melintasi garis RSI yang cepat dan lambat, strategi ini dapat mengirimkan sinyal perdagangan untuk waktu tertentu sebelumnya dan menciptakan peluang untuk masuk.
Secara keseluruhan, strategi ini, yang menggabungkan pelacakan tren dan penilaian nilai reversal, dapat menangkap waktu reversal harga hingga tingkat tertentu, dan memiliki kepraktisan yang kuat.
Meskipun ada beberapa keuntungan dari strategi reversal SPY RSI Stochastics, ada juga risiko utama sebagai berikut:
Strategi ini dapat dioptimalkan dan ditingkatkan untuk menghadapi risiko-risiko di atas dengan cara:
Strategi reversal SPY RSI Stochastics dapat dioptimalkan dari beberapa aspek:
Optimisasi ini dapat membuat parameter strategi lebih cerdas, sinyal lebih dapat diandalkan, dan juga dapat menyesuaikan aturan strategi sesuai dengan perubahan pasar, sehingga meningkatkan profitabilitas strategi yang stabil.
SPY RSI Stochastics strategi reversal tren nilai silang dengan menilai persimpangan RSI garis cepat dan lambat, merancang sebuah set strategi perdagangan kuantitatif yang relatif sederhana dan jelas. Ini menggabungkan fitur trend tracking dan reversal trading, dapat menangkap harga reversal waktu sampai batas tertentu. Namun, strategi ini juga memiliki beberapa kelemahan yang melekat, perlu melalui parameter, fitur dan optimasi model untuk mengendalikan risiko, meningkatkan kualitas sinyal.
/*backtest
start: 2024-01-23 00:00:00
end: 2024-02-22 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SPY Auto RSI Stochastics", pyramiding = 3)
// Input parameters
slowRSILength = input(64, title="SLOW RSI Length")
fastRSILength = input(9, title="FAST RSI Length")
smaRSILength = input(3, title="RSI SMA Length")
RSIUpperThreshold = input(83, title="RSI Upper")
RSILowerThreshold = input(25, title="RSI Lower")
RSIUpperDeadzone = input(61, title='RSI Upper Deadzone')
RSILowerDeadzone = input(39, title='RSI Lower Deadzone')
blockedDays = (dayofweek(time) == 1 or dayofweek(time) == 7)
sessionMarket = input("0900-0900", title="Session Start")
allowedTimes() => time(timeframe = timeframe.period, session = sessionMarket, timezone = "GMT+1")
isvalidTradeTime =true
// RSI and ATR
slowRSI = ta.rsi(close, slowRSILength)
fastRSI = ta.rsi(close, fastRSILength)
smaRSI = ta.sma(fastRSI, smaRSILength)
rsi = fastRSI
// Entry condition
RSIUptrend() => ta.crossover(fastRSI, slowRSI) and ta.crossover(fastRSI, smaRSI)
RSIDowntrend() => ta.crossunder(fastRSI, slowRSI) and ta.crossunder(fastRSI, smaRSI)
isRSIDeadzone() =>
rsi < RSIUpperDeadzone and rsi > RSILowerDeadzone
isBullishEngulfing() =>
close > high[1]
isBearishEngulfing() =>
close < low[1]
// Declare variables
var float initialSLLong = na
var float initialTPLong = na
var float initialSLShort = na
var float initialTPShort = na
//var bool inATrade = false
entryConditionLong = RSIUptrend() and not isRSIDeadzone() and isvalidTradeTime
entryConditionShort = RSIDowntrend() and not isRSIDeadzone() and isvalidTradeTime
exitConditionLong = entryConditionShort or fastRSI > RSIUpperThreshold
exitConditionShort = entryConditionLong or fastRSI < RSILowerThreshold
if (entryConditionLong)
strategy.entry(id = "Long", direction = strategy.long, alert_message = 'LONG! beep boop, all aboard the long train')
if (entryConditionShort)
strategy.entry(id = "Short", direction = strategy.short, alert_message = 'Short! beep boop, all aboard the short train')
if (exitConditionLong)
strategy.exit("Long", from_entry="Long", limit=close, alert_message = 'Stop Long, halt halt, take the profits and runnn')
if (exitConditionShort)
strategy.exit("Short", from_entry="Short", limit=close, alert_message = 'Stop Short, halt halt, take the profits and runnn')
//plot(smaRSI, "RSI MA", color=color.red)
plot(slowRSI, "Slow RSI", color=color.green)
//plot(fastRSI, "Fast RSI", color=color.white)
plot(smaRSI, "SMA RSI", color=color.white)