Sumber daya yang dimuat... Pemuatan...

Strategi Sinyal Jangka Pendek Berbasis QQE dan RSI

Penulis:ChaoZhang, Tanggal: 2024-05-27 15:17:45
Tag:RSIQQE

img

Gambaran umum

Strategi ini didasarkan pada indikator QQE dan indikator RSI. Ini menghitung rata-rata bergerak halus dan rentang osilasi dinamis dari indikator RSI untuk membangun interval sinyal panjang-pendek. Ketika indikator RSI menembus rel atas, itu menghasilkan sinyal panjang, dan ketika itu menembus rel bawah, itu menghasilkan sinyal pendek. Ide utama dari strategi ini adalah menggunakan karakteristik tren indikator RSI dan karakteristik volatilitas indikator QQE untuk menangkap perubahan tren pasar dan peluang volatilitas.

Prinsip Strategi

  1. Menghitung rata-rata bergerak rata-rata RsiMa dari indikator RSI sebagai dasar untuk menilai tren.
  2. Menghitung nilai penyimpangan mutlak AtrRsi dari indikator RSI dan rata-rata bergeraknya MaAtrRsi sebagai dasar untuk menilai volatilitas.
  3. Menghitung kisaran osilasi dinamis dar menurut faktor QQE, dan menggabungkannya dengan RsiMa untuk membangun interval sinyal panjang-pendek pita panjang dan pita pendek.
  4. Hukum hubungan antara indikator RSI dan interval sinyal panjang-pendek. Ketika indikator RSI melintasi band panjang, itu menghasilkan sinyal panjang, dan ketika melintasi band pendek, itu menghasilkan sinyal pendek.
  5. Melakukan perdagangan sesuai dengan sinyal panjang-pendek. Ketika sinyal panjang dipicu, buka posisi panjang, dan ketika sinyal pendek dipicu, tutup posisi.

Keuntungan Strategi

  1. Ini menggabungkan karakteristik indikator RSI dan indikator QQE, yang dapat lebih menangkap tren pasar dan peluang volatilitas.
  2. Ini menggunakan rentang osilasi dinamis untuk membangun interval sinyal, yang dapat beradaptasi dengan perubahan volatilitas pasar.
  3. Ini meratakan indikator RSI dan rentang volatilitas, secara efektif mengurangi gangguan kebisingan dan perdagangan yang sering.
  4. Logika jelas, dengan lebih sedikit parameter, dan cocok untuk optimasi dan perbaikan lebih lanjut.

Risiko Strategi

  1. Untuk pasar volatile dan pasar dengan volatilitas rendah, kinerja strategi ini mungkin tidak ideal.
  2. Ini tidak memiliki mekanisme stop-loss yang jelas dan dapat menghadapi risiko penarikan yang lebih besar ketika pasar tiba-tiba berbalik.
  3. Pengaturan parameter memiliki dampak yang lebih besar pada kinerja strategi dan perlu disesuaikan dengan berbagai pasar dan varietas.

Arah Optimasi Strategi

  1. Memperkenalkan mekanisme stop loss yang jelas, seperti stop loss persentase tetap, ATR stop loss, dll, untuk mengendalikan risiko penarikan.
  2. Mengoptimalkan pengaturan parameter. Kombinasi parameter optimal dapat ditemukan melalui algoritma genetik, pencarian grid dan metode lainnya.
  3. Pertimbangkan untuk memperkenalkan indikator lain seperti volume perdagangan dan volume posisi untuk memperkaya sinyal perdagangan dan meningkatkan stabilitas strategi.
  4. Untuk pasar yang volatile, pertimbangkan untuk memperkenalkan logika range trading atau swing trading untuk meningkatkan kemampuan adaptasi strategi.

Ringkasan

Strategi ini membangun sinyal panjang-pendek berdasarkan indikator RSI dan indikator QQE, dan memiliki karakteristik penangkapan tren dan pemahaman volatilitas. Logika strategi jelas, dengan lebih sedikit parameter, dan cocok untuk optimasi dan perbaikan lebih lanjut. Namun, strategi ini juga memiliki risiko tertentu, seperti kontrol penarikan dan pengaturan parameter, yang perlu ditingkatkan lebih lanjut. Di masa depan, strategi dapat dioptimalkan dari aspek seperti mekanisme stop-loss, optimasi parameter, pengayaan sinyal, dan kemampuan beradaptasi dengan pasar yang berbeda, sehingga meningkatkan ketahanan dan profitabilitas strategi.


/*backtest
start: 2023-05-21 00:00:00
end: 2024-05-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=4
// modified by swigle
// thanks colinmck

strategy("QQE signals bot", overlay=true)


RSI_Period = input(14, title='RSI Length')
SF = input(5, title='RSI Smoothing')
QQE = input(4.236, title='Fast QQE Factor')
ThreshHold = input(10, title="Thresh-hold")

src = close
Wilders_Period = RSI_Period * 2 - 1

Rsi = rsi(src, RSI_Period)
RsiMa = ema(Rsi, SF)
AtrRsi = abs(RsiMa[1] - RsiMa)
MaAtrRsi = ema(AtrRsi, Wilders_Period)
dar = ema(MaAtrRsi, Wilders_Period) * QQE

longband = 0.0
shortband = 0.0
trend = 0

DeltaFastAtrRsi = dar
RSIndex = RsiMa
newshortband = RSIndex + DeltaFastAtrRsi
newlongband = RSIndex - DeltaFastAtrRsi
longband := RSIndex[1] > longband[1] and RSIndex > longband[1] ? max(longband[1], newlongband) : newlongband
shortband := RSIndex[1] < shortband[1] and RSIndex < shortband[1] ? min(shortband[1], newshortband) : newshortband
cross_1 = cross(longband[1], RSIndex)
trend := cross(RSIndex, shortband[1]) ? 1 : cross_1 ? -1 : nz(trend[1], 1)
FastAtrRsiTL = trend == 1 ? longband : shortband

// Find all the QQE Crosses

QQExlong = 0
QQExlong := nz(QQExlong[1])
QQExshort = 0
QQExshort := nz(QQExshort[1])
QQExlong := FastAtrRsiTL < RSIndex ? QQExlong + 1 : 0
QQExshort := FastAtrRsiTL > RSIndex ? QQExshort + 1 : 0

//Conditions

qqeLong = QQExlong == 1 ? FastAtrRsiTL[1] - 50 : na
qqeShort = QQExshort == 1 ? FastAtrRsiTL[1] - 50 : na

// Plotting

plotshape(qqeLong, title="QQE long", text="Long", textcolor=color.white, style=shape.labelup, location=location.belowbar, color=color.green, size=size.tiny)
plotshape(qqeShort, title="QQE short", text="Short", textcolor=color.white, style=shape.labeldown, location=location.abovebar, color=color.red, size=size.tiny)

// trade

//if qqeLong > 0
strategy.entry("buy long", strategy.long, 100, when=qqeLong)
    
if qqeShort > 0
    strategy.close("buy long")
    // strategy.exit("close_position", "buy long", loss=1000)
    // strategy.entry("sell", strategy.short, 1, when=strategy.position_size > 0)
    


Berkaitan

Lebih banyak