Strategi ini menghitung rel tengah, atas dan bawah dari Saluran Keltner. Ini mengisi warna di atas rel tengah dan bawah. Setelah menentukan arah saluran, ia menerobos dan membeli dan menjual. Ini adalah semacam strategi pelacakan tren.
Indikator inti adalah Saluran Keltner. Rel tengah saluran adalah rata-rata bergerak tertimbang N-hari dari harga khas (harga tertinggi + harga terendah + harga penutupan) / 3. Jalur rel atas dan bawah saluran masing-masing adalah satu rentang perdagangan N-hari rata-rata bergerak tertimbang jauh dari jalur rel tengah. Di mana rentang perdagangan dapat memilih ATR volatilitas sejati, atau langsung mengambil amplitudo (harga tertinggi - harga terendah). Yang terakhir diadopsi dalam strategi ini.
Secara khusus, strategi ini terutama menilai apakah harga menembus rel atas atau rel bawah, dan membuat keputusan panjang atau pendek dengan rel tengah sebagai batas. Jika harga penutupan lebih besar dari rel atas, pergi panjang; jika harga penutupan kurang dari rel bawah, pergi pendek.
Secara umum, strategi ini relatif sederhana dan langsung, dan ini adalah strategi terobosan harga yang umum. Keuntungannya adalah bahwa idenya jelas dan mudah dipahami dan diimplementasikan, yang cocok untuk pemula untuk dipelajari. Tapi ada juga keterbatasan tertentu. Ini sensitif terhadap parameter, hasilnya tidak merata, dan pengujian dan optimasi berulang diperlukan. Jika dapat dikombinasikan dengan indikator penilaian yang lebih kompleks, ini dapat membentuk strategi perdagangan yang lebih kuat.
/*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"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © WMX_Q_System_Trading //@version=3 strategy(title = "WMX Keltner Channels strategy", shorttitle = "WMX Keltner Channels strategy", overlay = true) useTrueRange = input(true) length = input(20, minval=5) mult = input(2.618, minval=0.1) mah =ema(ema( ema(high, length),length),length) mal =ema(ema( ema(low, length),length),length) range = useTrueRange ? tr : high - low rangema =ema(ema( ema(range, length),length),length) upper = mah + rangema * mult lower = mal - rangema * mult ma=(upper+lower)/2 uc = red lc=green u = plot(upper, color=uc, title="Upper") basis=plot(ma, color=yellow, title="Basis") l = plot(lower, color=lc, title="Lower") fill(u, basis, color=uc, transp=95) fill(l, basis, color=lc, transp=95) strategy.entry("Long", strategy.long, stop = upper, when = strategy.position_size <= 0 and close >upper) strategy.entry("Short", strategy.short, stop = lower, when = strategy.position_size >= 0 and close<lower) if strategy.position_size > 0 strategy.exit("Stop Long", "Long", stop = ma) if strategy.position_size < 0 strategy.exit("Stop Short", "Short", stop = ma)