
Chiến lược phá vỡ đường Dongxian đôi là một chiến lược giao dịch định lượng dựa trên đường Dongxian. Chiến lược này sử dụng sự kết hợp của đường Dongxian nhanh và đường Dongxian chậm để thực hiện giao dịch phá vỡ có lợi nhuận cao có rủi ro thấp.
Chiến lược này chủ yếu dựa trên hai kênh Đồng Chiên, bao gồm một kênh Đồng Chiên chậm với chu kỳ dài và một kênh Đồng Chiên nhanh với chu kỳ ngắn.
Chuyến đi của kênh Dongxian chậm có chu kỳ dài, có thể loại bỏ tiếng ồn thị trường một cách hiệu quả, tín hiệu phá vỡ của nó có độ tin cậy cao hơn. Khi giá phá vỡ kênh chậm lên đường ray, hãy tham gia nhiều hơn; Khi giá giảm xuống kênh chậm, hãy tham gia.
Chuỗi nhanh của đường đan chiên có chu kỳ ngắn, có thể phản ứng nhanh với biến động giá ngắn hạn. Khi giá vượt qua lại kênh này, điều này cho thấy xu hướng đã đảo ngược và cần dừng lỗ hoặc dừng lại ngay lập tức.
Ngoài ra, điều kiện biến động cũng được thiết lập như một bộ lọc nhập cảnh cho chiến lược. Chỉ khi biến động giá vượt quá phần trăm ngưỡng được thiết lập trước, thì nhập cảnh sẽ được kích hoạt. Điều này có thể tránh được việc nhập cảnh thường xuyên trong bảng xếp hạng ngang.
Những rủi ro này có thể được giảm thiểu bằng các biện pháp như tối ưu hóa tham số, thiết lập điểm dừng lỗ hợp lý, chú ý đến các sự kiện lớn.
Chiến lược phá vỡ kênh TCNA nói chung là một chiến lược theo dõi xu hướng tương đối ổn định và đáng tin cậy. Nó đồng thời có lợi thế của việc nắm bắt xu hướng và kiểm soát rủi ro, phù hợp với các mô-đun cơ bản cho nhiều chiến lược giao dịch chứng khoán.
/*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)