KDJ RSI Crossover Strategi sinyal Beli Jual

Penulis:ChaoZhang, Tanggal: 2023-11-27 10:57:16
Tag:

img

Gambaran umum

Strategi ini menggabungkan indikator KDJ dan indikator RSI untuk menentukan waktu pembelian dan penjualan.

Prinsip Strategi

Strategi ini menggunakan crossover dari indikator KDJ dan indikator RSI untuk menilai waktu pembelian dan penjualan.

Secara khusus, ketika garis J dari KDJ melintasi di atas garis K dari bawah ke atas, itu dianggap sinyal beli. dan ketika garis J melintasi di bawah garis K dari atas ke bawah, itu adalah sinyal jual. ini berarti membeli ketika saham berubah dari oversold menjadi overbought dan menjual ketika berubah dari overbought menjadi oversold.

Pada saat yang sama, strategi ini menggabungkan indikator RSI untuk menilai kekuatan sinyal. RSI di bawah 30 adalah oversold dan RSI di atas 70 adalah overbought. Ketika KDJ mengeluarkan sinyal beli, jika indikator RSI juga menunjukkan oversold, itu meningkatkan keandalan sinyal beli. Sebaliknya, ketika KDJ mengeluarkan sinyal jual, jika RSI juga menunjukkan overbought, itu meningkatkan keandalan sinyal jual.

Singkatnya, strategi ini menghasilkan sinyal perdagangan dalam situasi berikut:

Sinyal beli:

  1. KDJ garis J melintasi garis K DAN RSI(6) < RSI(12)
  2. KDJ garis J melintasi di atas garis K DAN RSI(6) melintasi di atas RSI(24)
  3. RSI ((6) melintasi di atas RSI ((24) DAN RSI ((6) < 40

Sinyal jual:

  1. KDJ garis J melintasi di bawah garis K DAN RSI(6) > RSI(12)
  2. KDJ garis J melintasi di bawah garis K DAN RSI(6) melintasi di bawah RSI(24)
  3. RSI ((6) melintasi di bawah RSI ((24) DAN RSI ((6) > 60

Keuntungan

  1. Menggabungkan indikator KDJ dan indikator RSI membuat sinyal perdagangan lebih dapat diandalkan.

  2. Indikator KDJ menilai keadaan overbought/oversold, sedangkan indikator RSI menilai kekuatan.

  3. Berbagai kondisi pembelian/penjualan menghindari kesempatan yang hilang karena alasan dari satu indikator.

  4. Parameter RSI ditetapkan pada periode 6, 12 dan 24, yang cocok untuk tingkat siklus yang berbeda, membuat strategi lebih serbaguna.

Analisis Risiko

  1. Kedua indikator KDJ dan RSI dapat memberikan sinyal palsu, yang mengarah pada perdagangan yang tidak perlu.

  2. Kondisi perdagangan yang beragam meningkatkan kompleksitas operasi strategi dan membutuhkan verifikasi yang cermat.

  3. Strategi perlu diuji dan dioptimalkan di pasar yang berbeda, dan parameter perlu disesuaikan.

Arah Peningkatan

  1. Uji menambahkan indikator lain seperti Bollinger Bands untuk memperkuat sinyal perdagangan.

  2. Mengoptimalkan parameter KDJ dan RSI agar sesuai dengan tingkat siklus yang berbeda.

  3. Tingkatkan standar stop loss untuk mengendalikan risiko.

  4. Tambahkan mekanisme stop loss otomatis untuk menghentikan kerugian ketika harga berbalik.

Kesimpulan

Strategi ini menggabungkan keuntungan dari indikator KDJ dan indikator RSI dengan menggunakan silang kedua indikator untuk menentukan waktu pembelian dan penjualan, yang meningkatkan keakuratan sinyal perdagangan. Menggunakan indikator RSI dengan parameter yang berbeda juga membuat strategi lebih serbaguna. Strategi ini secara efektif menghindari risiko sinyal palsu yang mungkin terjadi dengan satu indikator. Dengan meningkatkan parameter, menambahkan indikator tambahan, mekanisme stop loss, dll., Kinerja strategi ini dapat ditingkatkan lebih lanjut.


/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © innocentChart76064

//@version=5
strategy(title = "buy/sell KDJ RSI", overlay=true)

//Define KDJ parameter
kdj_length = input(9, title = "KDJ length")
signal = input(3,title="signal")

// Calculate KDJ values
bcwsma(s,l,m) => 
    _bcwsma = float(na)
    _s = s
    _l = l
    _m = m
    _bcwsma := (_m*_s+(_l-_m)*nz(_bcwsma[1]))/_l
    _bcwsma

c = close
h = ta.highest(high, kdj_length)
l = ta.lowest(low,kdj_length)
RSV = 100*((c-l)/(h-l))
kdj_k = bcwsma(RSV, signal, 1)
kdj_d = bcwsma(kdj_k, signal, 1)
kdj_j = 3 * kdj_k-2 * kdj_d

//Define RSI parameter 
rsi_length_1 = input(6)
rsi_length_2 = input(12)
rsi_length_3 = input(24)
price = close 

//Calculate RSI values
rsi_1 = ta.rsi(price, rsi_length_1)
rsi_2 = ta.rsi(price, rsi_length_2)
rsi_3 = ta.rsi(price, rsi_length_3)

// Trading conditions
longCondition = ta.crossover(kdj_j,kdj_k) and rsi_1 > rsi_2 or ta.crossover(kdj_j,kdj_k) and ta.crossover(rsi_1,rsi_3) or ta.crossover(rsi_1,rsi_3) and rsi_1<40
shortCondition = ta.crossunder(kdj_j,kdj_k) and rsi_1 < rsi_2 or ta.crossunder(kdj_j,kdj_k) and ta.crossunder(rsi_1,rsi_3) or ta.crossunder(rsi_1,rsi_3) and rsi_1>60
// Enter long trade
strategy.entry("Long", strategy.long, when=longCondition)

// Enter short trade
strategy.entry("Short", strategy.short, when=shortCondition)


Lebih banyak