
Strategi supertrend reversal adalah strategi trading reversal yang menggabungkan indikator supertrend dan indikator RSI. Strategi ini menggunakan supertrend untuk menentukan arah tren pasar, kemudian digabungkan dengan indikator RSI untuk mengidentifikasi peluang reversal dan melakukan perdagangan pada titik reversal tren.
Strategi super trend reversal terdiri dari dua bagian utama:
Indikator supertrend menilai arah tren dengan menghitung harga saat ini dengan harga rata-rata gelombang nyata dalam periode tertentu. Ketika harga menerobos jalur, itu adalah bullish, dan ketika harga jatuh dari jalur, itu adalah bearish.
Indikator RSI membandingkan hari-hari kenaikan dan penurunan harga penutupan dalam jangka waktu tertentu untuk menilai apakah saat ini sedang dalam keadaan overbought atau oversold.
Dalam strategi ini, melalui transformations tertentu, yang diperoleh setelah RSI kurva diproses, menetapkan garis threshold, RSI kurva melanggar threshold yang sesuai menghasilkan sinyal beli dan jual.
Strategi super trend reversal yang menggabungkan trend dan indikator reversal, kekuatan tren yang dipertimbangkan secara komprehensif dan fenomena overbought oversold, dapat membuka posisi damai di posisi yang relatif baik, sehingga mendapatkan keuntungan strategi yang lebih baik.
Keunggulan utama:
Strategi super trend reversal juga memiliki beberapa risiko, yang meliputi:
Sinyal pembalikan mungkin adalah sinyal palsu, tidak dapat berhasil membalik, dan kerugian bisa meningkat.
Optimasi parameter yang tidak tepat dapat menyebabkan strategi terlalu cocok dan tidak dapat beradaptasi dengan perubahan pasar.
Semua indikator teknis tertinggal, dan kemungkinan kehilangan posisi terbaik untuk masuk.
Risiko ini dapat dioptimalkan dan ditingkatkan lebih lanjut dengan kombinasi indikator lain, penyesuaian metode optimasi parameter, dan sebagainya.
Strategi super trend reversal dapat dioptimalkan sesuai dengan pasar dan kebutuhan dalam dimensi berikut:
Keuntungan dari strategi super trend reversal adalah menggabungkan perdagangan tren dan perdagangan reversal, baik secara berurutan, maupun dapat membuka posisi di titik balik. Dengan terus-menerus menguji dan mengoptimalkan parameter, dan mengontrol risiko dengan tepat, strategi ini dapat memperoleh keuntungan strategi yang stabil. Ruang yang dapat dioptimalkan juga sangat besar, dapat disesuaikan dengan kondisi pasar yang sebenarnya.
/*backtest
start: 2022-12-21 00:00:00
end: 2023-12-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "Super-Trend-reverse Strategy", overlay = true)
// Super Trend Strategy
Factor=input(2,type =float, minval=1,maxval = 100)
Pd=10 //input(10,minval=1,maxval = 100)
// ST1
UP=hlc3-(Factor*atr(Pd))
DOWN=hlc3+(Factor*atr(Pd))
// ST1.2
TrendUp=na
TrendUp:=close[1]>TrendUp[1]? max(UP,TrendUp[1]) : UP
TrendDown=na
TrendDown:=close[1]<TrendDown[1]? min(DOWN,TrendDown[1]) : UP
Trend = na
Tsl = na
Trend := close[1] > TrendDown[1] ? 1: close[1] < TrendUp[1]? -1: nz(Trend[1],1)
Tsl := Trend==1 ? TrendUp: TrendDown
/////////////// Functions for Reverse //////////////////////////////
IF(input) => (exp(2*input)-1) / (exp(2*input)+1)
//////////////////////// RSI REVERSE /////////////////////
RSI_main = input(14, title="RSI Main Period")
RSI_smooth = input(5, title="RSI Smooth Period")
//Functions
RVS(input) => (exp(2*input)-1) / (exp(2*input)+1)
//RSI Calculation
raw_RSI=0.1*(rsi(close,RSI_main)-50)
wma_RSI=wma(raw_RSI,RSI_smooth)
RVS_RSI = RVS(wma_RSI)
threshold1 = RVS_RSI < 0.8? 1 : 0
threshold2 = -0.8
RSIbuy = (RVS_RSI<threshold2)
RSIsell = (RVS_RSI > threshold1)
////////////////////// RSI REVERSE ///////////////////////
// Conditions
longCond = na
shortCond = na
longCond := RSIbuy and crossover(close, Tsl)
shortCond := RSIsell and crossunder(close, Tsl)
yearfrom = input(2018)
yearuntil =input(2039)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)
if ( longCond and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil)
strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY")
else
strategy.cancel(id="BUY")
if ( shortCond and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil )
strategy.close("BUY")