Strategi Breakout saluran Donchian adalah strategi trend-mengikuti berdasarkan saluran harga.
Strategi ini pertama-tama menghitung rata-rata pergerakan harga tertinggi, terendah terendah, dan garis tengah selama periode tertentu. Band atas dan bawah membentuk saluran harga, sementara garis tengah berada di tengah saluran. Ketika harga melanggar di atas garis tengah, itu menandakan tren naik dan pergi panjang. Ketika harga melanggar di bawah garis tengah, itu menandakan tren turun dan pergi pendek.
Secara khusus, strategi ini beroperasi dalam langkah-langkah berikut:
Logika di atas menggambarkan prinsip dasar perdagangan strategi - menangkap tren dengan price breakout dan beralih arah pada titik pivot.
Strategi ini memiliki keuntungan berikut:
Ada juga beberapa risiko:
Solusi:
Strategi ini dapat dioptimalkan lebih lanjut dalam aspek berikut:
Kesimpulannya, strategi breakout saluran Donchian adalah sistem trend-mengikuti yang efektif, dengan dasar teoritis yang kuat, logika sederhana, dan kemampuan untuk menunggang tren melalui breakout. Sementara itu, risiko yang melekat dari sistem breakout tersebut membutuhkan penyesuaian parameter dan penyaringan sinyal. Dengan penelitian dan optimalisasi lebih lanjut, strategi Donchian dapat menjadi lebih kuat dan praktis untuk pedagang kuantitatif.
/*backtest start: 2024-01-26 00:00:00 end: 2024-02-25 00:00:00 period: 4h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title = "dc", overlay = true) testStartYear = input(2018, "Backtest Start Year") testStartMonth = input(1, "Backtest Start Month") testStartDay = input(1, "Backtest Start Day") testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0) testEndYear = input(2018, "Backtest Start Year") testEndMonth = input(12) testEndDay = input(31, "Backtest Start Day") testPeriodEnd = timestamp(testStartYear,testStartMonth,testStartDay,0,0) testPeriod() => true //time >= testPeriodStart ? true : false dcPeriod = input(20, "Period") dcUpper = highest(close, dcPeriod)[1] dcLower = lowest(close, dcPeriod)[1] dcAverage = (dcUpper + dcLower) / 2 plot(dcLower, style=line, linewidth=3, color=red, offset=1) plot(dcUpper, style=line, linewidth=3, color=aqua, offset=1) plot(dcAverage, color=black, style=line, linewidth=3, title="Mid-Line Average") strategy.entry("simpleBuy", strategy.long, when=close > dcAverage) strategy.close("simpleBuy",when=close < dcLower) strategy.entry("simpleSell", strategy.short,when=close < dcAverage) strategy.close("simpleSell",when=close > dcAverage)