
Strategi ini adalah sistem perdagangan campuran yang menggabungkan Keltner Channel dan Multiple Index Moving Average EMA. Ini menangkap kondisi overbought dan oversold dengan memantau interaksi harga dengan batas Keltner Channel, sambil menggunakan titik persimpangan EMA jangka pendek dan menengah untuk mengkonfirmasi dinamika tren.
Strategi ini didasarkan pada dua sistem sinyal perdagangan yang berbeda:
Perdagangan Balik Jembatan Kettner:
Trending Tracking Trading:
Saluran Kentner sendiri melalui 20 siklus EMA sebagai rel tengah, dengan rel atas dan bawah masing-masing untuk rel tengah ditambah 1,5 kali lipat nilai ATR. Cara konstruksi ini memungkinkan saluran untuk menyesuaikan lebarnya sesuai dengan dinamika volatilitas pasar, secara otomatis memperluas pada periode fluktuasi tinggi, dan secara otomatis menyusut pada periode fluktuasi rendah.
Sistem manajemen risiko menggunakan stop loss dan profit target dinamis berbasis ATR:
Integrasi multi-strategiMenggabungkan strategi reversal trading dan trend tracking, memungkinkan sistem untuk tetap fleksibel dalam berbagai lingkungan pasar, menangkap reversal harga dalam jangka pendek dan mengikuti tren jangka menengah dan panjang.
Manajemen risiko dinamisTarget stop loss dan profit yang dihitung melalui ATR akan disesuaikan secara otomatis dengan volatilitas pasar, memberikan ruang stop loss yang lebih luas pada periode fluktuasi tinggi, dan pengendalian risiko yang ketat pada periode fluktuasi rendah.
Mekanisme konfirmasi sinyal: Bagian perdagangan tren yang membutuhkan beberapa kondisi yang harus dipenuhi secara bersamaan ((persaingan EMA jangka pendek dan menengah dan harga berada di sisi yang benar dari EMA jangka panjang), mengurangi sinyal palsu secara signifikan.
Sangat mudah beradaptasi: Jari-jari Kentner secara otomatis disesuaikan dengan volatilitas pasar, sehingga strategi dapat beradaptasi dengan berbagai kondisi pasar tanpa harus menyesuaikan parameter secara manual.
Siklus perdagangan yang lengkapStrategi: Jelas mendefinisikan entry, exit, stop loss, dan profit, membentuk kerangka perdagangan yang lengkap.
Pemberitahuan otomatis: Terintegrasi dengan fungsi peringatan TradingView, dapat memberikan pemberitahuan sinyal perdagangan yang sepenuhnya otomatis.
Risiko Penembusan PalsuDalam pasar yang sangat berfluktuasi, harga mungkin sering menyentuh batas saluran Kenter dan kemudian kembali dengan cepat, menghasilkan sinyal reversal palsu. Metode mitigasi: Anda dapat mempertimbangkan untuk menambahkan kondisi konfirmasi, seperti meminta harga untuk tinggal di luar saluran untuk waktu tertentu atau dalam kombinasi dengan indikator teknis lainnya.
Perubahan tren yang tertinggal: EMA sinyal silang pada dasarnya merupakan indikator lag, yang dapat menyebabkan masuk atau keluar yang tidak cukup tepat waktu di dekat titik perputaran tren. . Metode mitigasi: Pertimbangan untuk memperkenalkan indikator momentum yang lebih sensitif sebagai konfirmasi tambahan.
Stop loss yang tidak cukupDalam beberapa situasi fluktuasi ekstrem, pengaturan stop loss 1.5x ATR mungkin tidak cukup untuk menghindari kebisingan pasar. Metode Mitigasi: Untuk varietas tertentu yang berfluktuasi tinggi, pertimbangan untuk menyesuaikan stop loss multiplier menjadi 2x atau lebih tinggi.
Konflik Multi-SignalStrategi Reversal dan Strategi Trend dapat menghasilkan sinyal yang berlawanan secara bersamaan, sehingga membuat keputusan sulit. Metode Mitigasi: Anda dapat membuat prioritas sinyal atau menerapkan kedua strategi secara terpisah pada kerangka waktu yang berbeda.
Parameter SensitivitasPerforma strategi lebih sensitif terhadap pilihan multipel saluran Kenter (mult) dan siklus EMA. Metode mitigasi: disarankan untuk melakukan optimasi parameter yang memadai dan verifikasi backtesting sebelum hard disk.
Menambahkan waktu penyaringan transaksiFilter jendela waktu perdagangan dapat ditambahkan untuk menghindari fluktuasi yang tidak biasa dan periode likuiditas rendah pada saat pasar terbuka dan ditutup, dan hanya melakukan sinyal perdagangan pada saat pasar paling aktif.
Pengertian volatilitas: dapat meningkatkan penilaian ATR terhadap nilai historis, menangguhkan perdagangan reversal jika volatilitas terlalu tinggi, hanya melakukan perdagangan tren; prioritaskan perdagangan reversal jika volatilitas terlalu rendah.
Pengelolaan dana yang optimalStrategi saat ini menggunakan rasio tetap ((10%) untuk manajemen posisi, yang dapat ditingkatkan untuk menyesuaikan posisi dinamis berdasarkan volatilitas, meningkatkan posisi di lingkungan berfluktuasi rendah, mengurangi posisi di lingkungan berfluktuasi tinggi.
Menambahkan kondisi penyaringan transaksi: Anda dapat menambahkan lebih banyak kondisi penyaringan untuk meningkatkan kualitas sinyal, seperti:
Analisis multi-frame waktuIntroduksi penilaian tren pada kerangka waktu yang lebih tinggi, hanya melakukan sinyal kerangka waktu rendah di arah tren kerangka waktu yang lebih tinggi.
Optimalkan cara untuk mendapatkan keuntunganDengan menggunakan ATR dengan perkalian tetap sebagai target keuntungan, mekanisme stop loss yang diikuti dapat ditingkatkan untuk memaksimalkan keuntungan yang ditangkap oleh tren.
Sistem perdagangan campuran Kentner Channel dan EMA adalah strategi perdagangan yang komprehensif dan fleksibel, yang memungkinkan adaptasi dalam berbagai lingkungan pasar dengan menggabungkan sinyal reversal dan trend tracking. Kelebihannya yang utama adalah penyesuaian lebar saluran yang dinamis dan manajemen risiko berbasis ATR, yang memungkinkan strategi untuk secara otomatis beradaptasi dengan perubahan volatilitas pasar. Namun, strategi ini masih memiliki beberapa risiko yang melekat, seperti masalah seperti breakout palsu dan lag sinyal.
Strategi ini memiliki ruang untuk perbaikan yang lebih besar melalui serangkaian langkah-langkah optimasi, seperti menambahkan kondisi pemfilteran perdagangan, pengoptimalan manajemen dana, dan pengenalan analisis multi-frame waktu. Untuk pedagang, disarankan untuk melakukan pengembalian yang cukup di bawah berbagai kondisi pasar dan kerangka waktu sebelum diterapkan di pasar, dan menyesuaikan parameter pengaturan sesuai dengan karakteristik varietas perdagangan tertentu.
/*backtest
start: 2024-03-26 00:00:00
end: 2024-07-22 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Keltner Channel Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// Keltner Channel Settings
length = 20
mult = 1.5
emaBasis = ta.ema(close, length)
atrVal = ta.atr(length)
upperKC = emaBasis + (mult * atrVal)
lowerKC = emaBasis - (mult * atrVal)
// Entry Conditions for Different Strategies
longEntryKC = ta.crossunder(close, lowerKC)
shortEntryKC = ta.crossover(close, upperKC)
longEntryTrend = ta.crossover(ta.ema(close, 9), ta.ema(close, 21)) and close > ta.ema(close, 50)
shortEntryTrend = ta.crossunder(ta.ema(close, 9), ta.ema(close, 21)) and close < ta.ema(close, 50)
// Stop-Loss and Take-Profit Levels
atrMultiplier = 1.5
stopLossLong = close - (atrMultiplier * atrVal)
stopLossShort = close + (atrMultiplier * atrVal)
takeProfitLong = close + (2 * atrMultiplier * atrVal)
takeProfitShort = close - (2 * atrMultiplier * atrVal)
// Exit Conditions
exitLongKC = ta.crossover(close, emaBasis)
exitShortKC = ta.crossunder(close, emaBasis)
exitLongTrend = ta.crossunder(ta.ema(close, 9), ta.ema(close, 21))
exitShortTrend = ta.crossover(ta.ema(close, 9), ta.ema(close, 21))
// Plot Keltner Channels
plot(upperKC, title="Upper Keltner Band", color=color.blue)
plot(lowerKC, title="Lower Keltner Band", color=color.red)
plot(emaBasis, title="Mid Keltner Band", color=color.gray)
// Execute Trades
strategy.entry("Long_KC", strategy.long, when=longEntryKC)
strategy.close("Long_KC", when=exitLongKC)
strategy.entry("Short_KC", strategy.short, when=shortEntryKC)
strategy.close("Short_KC", when=exitShortKC)
strategy.entry("Long_Trend", strategy.long, when=longEntryTrend)
strategy.close("Long_Trend", when=exitLongTrend)
strategy.entry("Short_Trend", strategy.short, when=shortEntryTrend)
strategy.close("Short_Trend", when=exitShortTrend)
// Stop-Loss and Take-Profit Implementation
strategy.exit("Long_KC_Exit", from_entry="Long_KC", stop=stopLossLong, limit=takeProfitLong)
strategy.exit("Short_KC_Exit", from_entry="Short_KC", stop=stopLossShort, limit=takeProfitShort)
strategy.exit("Long_Trend_Exit", from_entry="Long_Trend", stop=stopLossLong, limit=takeProfitLong)
strategy.exit("Short_Trend_Exit", from_entry="Short_Trend", stop=stopLossShort, limit=takeProfitShort)
// Alerts
alertcondition(longEntryKC, title="Long Entry KC Alert", message="Price touched Lower Keltner Band - Possible Long Setup")
alertcondition(shortEntryKC, title="Short Entry KC Alert", message="Price touched Upper Keltner Band - Possible Short Setup")
alertcondition(longEntryTrend, title="Long Entry Trend Alert", message="9 EMA crossed above 21 EMA - Possible Long Setup")
alertcondition(shortEntryTrend, title="Short Entry Trend Alert", message="9 EMA crossed below 21 EMA - Possible Short Setup")