Strategi penembusan saluran Dongguan ganda adalah strategi perdagangan kuantitatif yang didasarkan pada saluran Dongguan. Strategi ini menggunakan kombinasi saluran Dongguan cepat dan saluran Dongguan lambat untuk melakukan transaksi penembusan dengan risiko rendah dan keuntungan tinggi.
Strategi ini terutama didasarkan pada dua saluran Tongxian, termasuk saluran Tongxian lambat dengan siklus yang lebih lama dan saluran Tongxian cepat dengan siklus yang lebih pendek.
Periode jangka panjang dari saluran Dongxian yang lambat dapat secara efektif menghilangkan kebisingan pasar, dan sinyal penembusannya memiliki keandalan yang lebih tinggi. Ketika harga menembus saluran lambat, masuk lebih banyak; Ketika harga jatuh dari saluran lambat, masuk kosong.
Jalur cepat Dongxian memiliki siklus yang lebih pendek, sehingga dapat merespons dengan cepat terhadap perubahan harga jangka pendek. Ketika harga kembali menerobos saluran ini, menunjukkan adanya pergeseran tren yang memerlukan penghentian kerugian atau berhenti segera.
Selain itu, kondisi volatilitas ditetapkan sebagai filter masuk untuk strategi. Hanya jika harga berfluktuasi di atas persentase terobosan yang telah ditetapkan, maka akan memicu masuk. Ini dapat menghindari sering masuk dalam penyusunan lateral.
Risiko ini dapat dikurangi dengan mengoptimalkan parameter, menetapkan titik-titik penghentian yang masuk akal, dan memperhatikan peristiwa-peristiwa besar.
Strategi penembusan saluran Double Dongguan secara keseluruhan merupakan strategi pelacakan tren yang relatif stabil dan andal. Ini memiliki keunggulan menangkap tren dan kontrol risiko, dan cocok sebagai modul dasar untuk berbagai strategi perdagangan saham.
/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © omererkan
//@version=5
strategy(title="Double Donchian Channel Breakout", overlay=true, initial_capital = 1000, commission_value = 0.05, default_qty_value = 100, default_qty_type = strategy.percent_of_equity)
slowLen = input.int(50, title="Slow Donchian")
fastLen = input.int(30, title="Fast Donchian")
volatility = input.int(3, title="Volatility (%)")
longProfitPerc = input.float(2, title="Long TP1 (%)", minval=0.0, step=0.1) * 0.01
shortProfitPerc = input.float(2, title="Short TP1 (%)", minval=0.0, step=0.1) * 0.01
TP1Yuzde =input.int(50, title = "TP1 Position Amount (%)")
ubSlow = ta.highest(close, slowLen)[1]
lbSlow = ta.lowest(close, slowLen)[1]
ubFast = ta.highest(close, fastLen)[1]
lbFast = ta.lowest(close, fastLen)[1]
plot(ubSlow, color=color.green, linewidth=2, title="Slow DoCh - Upperband")
plot(lbSlow, color=color.green, linewidth=2, title="Slow DoCh - Lowerband")
plot(ubFast, color=color.blue, linewidth=2, title="Fast DoCh - Upperband")
plot(lbFast, color=color.blue, linewidth=2, title="Fast DoCh - Lowerband")
fark = (ubSlow - lbSlow) / lbSlow * 100
longExitPrice = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)
longCondition = ta.crossover(close, ubSlow) and fark > volatility
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = ta.crossunder(close, lbSlow) and fark > volatility
if (shortCondition)
strategy.entry("Short", strategy.short)
if strategy.position_size > 0 and ta.crossunder(close, lbFast)
strategy.close("Long", "Close All")
if strategy.position_size < 0 and ta.crossover(close, ubFast)
strategy.close("Short", "Close All")
// Take Profit
if strategy.position_size > 0
strategy.exit("TP1", "Long", qty_percent = TP1Yuzde, limit = longExitPrice)
if strategy.position_size < 0
strategy.exit("TP1", "Short", qty_percent = TP1Yuzde, limit = shortExitPrice)