
Strategi tren ikan RSI adalah kombinasi indikator ikan yang didasarkan pada indikator RSI untuk menentukan masuk dan keluar dari tren. Ini menggunakan tiga rata-rata - garis uptrend, garis gigi, dan garis lip ikan, dengan konstruksi RSI dengan periode yang berbeda.
Strategi tren ikan RSI menggunakan indikator RSI untuk membangun tiga rata-rata bergerak dari indikator ikan RSI. Pengaturan spesifiknya adalah sebagai berikut:
Logika penilaian sinyal masuk adalah:
Sinyal multihead: Lakukan lebih banyak ketika Anda memakai lip line di atas garis gigi dan juga ketika garis gigi berada di atas garis gigi.
Sinyal kepala kosong: Keluar dari mulut saat gigi di bawah garis gigi, sementara gigi di atas berada di bawah garis gigi.
Strategi ini menetapkan kondisi stop loss dan stop loss:
Strategi RSI untuk menangkap tren memiliki keuntungan sebagai berikut:
RSI juga memiliki risiko untuk strategi penarikan tren:
Interaksi antara garis gigi dan garis bibir dapat menyebabkan kerusakan yang tidak perlu. Parameter siklus dapat disesuaikan untuk mengurangi kemungkinan kerusakan.
Pengaturan Stop Loss mungkin terlalu radikal, dan kemungkinan besar tidak ada Stop Loss. Anda dapat dengan tepat melonggarkan jangkauan Stop Loss, atau menambahkan kondisi lain sebagai prasyarat untuk mengaktifkan Stop Loss.
Jika terjadi hal-hal yang parah, kerusakan atau tidak dapat memberikan efek yang seharusnya dari jaminan. Maka diperlukan intervensi manual untuk menghentikan kerusakan tepat waktu.
Dengan seringnya pertukaran multi-ruang, tekanan biaya transaksi lebih besar. Anda dapat dengan tepat melonggarkan persyaratan akses, mengurangi pengulangan yang tidak perlu.
Strategi RSI untuk memancing tren dapat dioptimalkan dari beberapa aspek:
Mengoptimalkan pengaturan parameter garis penangkapan ikan, menyesuaikan parameter siklus, dan menemukan kombinasi parameter yang optimal
Optimalkan logik kondisi masuk, seperti sinyal penyaringan seperti indikator volume transaksi baru
Optimalkan strategi stop loss agar lebih sesuai dengan kondisi dan tingkat jaminan
Meningkatkan mekanisme penanganan insiden dan mencegah terungkapnya perilaku yang tidak normal
Meningkatkan algoritma penarikan, mengontrol proporsi investasi tunggal, menghindari risiko
Strategi trend fishing RSI secara keseluruhan adalah strategi pelacakan tren yang handal dan mudah dioperasikan. Ini menggunakan indikator penangkap ikan untuk menentukan arah tren, bekerja dengan indikator RSI untuk menetapkan titik reference, dapat mengunci tren secara efektif dan menetapkan titik keluar yang masuk akal.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// @version=3
// RSI Alligator
// Forked from Author: Reza Akhavan
// Updated by Khalid Salomão
strategy("RSI Alligator Strategy", overlay=false, pyramiding=0, default_qty_type=strategy.cash, default_qty_value=25000, initial_capital=25000, commission_type=strategy.commission.percent, commission_value=0.15, slippage=3)
// === TA LOGIC ===
overBought = input(70, minval=0, maxval=100, title="Over bought")
overSold = input(30, minval=0, maxval=100, title="Over sold")
jawPeriods = input(5, minval=1, title="Jaw Periods")
jawOffset = input(0, minval=0, title="Jaw Offset")
teethPeriods = input(13, minval=1, title="Teeth Periods")
teethOffset = input(0, minval=0, title="Teeth Offset")
lipsPeriods = input(34, minval=1, title="Lips Periods")
lipsOffset = input(0, minval=0, title="Lips Offset")
jaws = rsi(close, jawPeriods)
teeth = rsi(close, teethPeriods)
lips = rsi(close, lipsPeriods)
plot(jaws, color=green, offset=jawOffset, title="Jaw")
plot(teeth, color=red, offset=teethOffset, title="Teeth")
plot(lips, color=blue, offset=lipsOffset, title="Lips")
//
// === Signal logic ===
//
LONG_SIGNAL_BOOLEAN = crossover(teeth, lips) and jaws > teeth
SHORT_SIGNAL_BOOLEAN = crossunder(teeth, lips) and jaws < teeth
// === INPUT BACKTEST DATE RANGE ===
strategyType = input(defval="Long Only", options=["Long & Short", "Long Only", "Short Only"])
FromMonth = input(defval = 7, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 2020, title = "To Year", minval = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() => true
// === STRATEGY BUY / SELL ENTRIES ===
// TODO: update the placeholder LONG_SIGNAL_BOOLEAN and SHORT_SIGNAL_BOOLEAN to signal
// long and short entries
buy() => window() and LONG_SIGNAL_BOOLEAN
sell() => window() and SHORT_SIGNAL_BOOLEAN
if buy()
if (strategyType == "Short Only")
strategy.close("Short")
else
strategy.entry("Long", strategy.long, comment="Long")
if sell()
if (strategyType == "Long Only")
strategy.close("Long")
else
strategy.entry("Short", strategy.short, comment="Short")
// === BACKTESTING: EXIT strategy ===
sl_inp = input(10, title='Stop Loss %', type=float)/100
tp_inp = input(90, title='Take Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - sl_inp)
take_level = strategy.position_avg_price * (1 + tp_inp)
strategy.exit("Stop Loss/Profit", "Long", stop=stop_level, limit=take_level)