Chiến lược kênh nắm bắt đà là một biến thể của chiến lược giao dịch kênh Donchian. Nó bao gồm một dải cao nhất, dải thấp nhất và một đường cơ sở trung bình các dải cao nhất và thấp nhất. Chiến lược này hoạt động rất tốt trên các công cụ xu hướng trên các khung thời gian hàng tuần và hàng ngày. Đây là việc thực hiện được sử dụng trong ứng dụng QuantCT.
Bạn có thể đặt chế độ hoạt động vào Long/Short hoặc Long-only.
Bạn cũng có thể đặt một stop-loss cố định hoặc bỏ qua nó để chiến lược hoạt động chỉ dựa trên tín hiệu vào và ra.
Định hướng xu hướng và sự đảo ngược tiềm năng được đánh giá bằng cách giá vượt qua các dải trên và dưới của kênh.
Chiến lược này là một biến thể trên kênh Donchian. Nó bao gồm một băng tần cao nhất, một băng tần thấp nhất và một đường cơ sở trung bình các băng tần cao nhất và thấp nhất.
Ưu điểm của chiến lược này là nó có thể nắm bắt hiệu quả đà tăng của xu hướng giá. Bằng cách chờ giá phá vỡ các dải trên / dưới để xác định sự khởi đầu thực sự của xu hướng, các tổn thất không cần thiết từ giả mạo có thể được tránh.
Giải pháp:
Chiến lược Momentum Capture Channel cung cấp cơ hội lợi nhuận đáng kể bằng cách nắm bắt xu hướng giá. Đồng thời, nó cũng có một số rủi ro cần được kiểm soát bằng cách điều chỉnh các tham số đúng cách. Bằng cách tối ưu hóa liên tục lựa chọn thời gian nhập cảnh và logic dừng lỗ, chiến lược này có thể trở thành một hệ thống theo xu hướng tuyệt vời. Quy tắc giao dịch đơn giản và đánh giá tín hiệu rõ ràng làm cho nó dễ hiểu và thực hiện, rất phù hợp với các nhà giao dịch mới bắt đầu.
/*backtest start: 2023-11-19 00:00:00 end: 2023-12-19 00:00:00 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/ // © QuantCT //@version=4 strategy("Donchian Channel Strategy Idea", shorttitle="Donchian", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=1000, commission_type=strategy.commission.percent, commission_value=0.075) // ____ Inputs high_period = input(title="High Period", defval=10) low_period = input(title="Low Period", defval=10) long_only = input(title="Long Only", defval=false) slp = input(title="Stop-loss (%)", minval=1.0, maxval=25.0, defval=5.0) use_sl = input(title="Use Stop-Loss", defval=false) // ____ Logic highest_high = highest(high, high_period) lowest_low = lowest(low, low_period) base_line = (highest_high + lowest_low) / 2 enter_long = (close > highest_high[1]) exit_long = (close < base_line) enter_short = (close < lowest_low[1]) exit_short = (close > base_line) strategy.entry("Long", strategy.long, when=enter_long) strategy.close("Long", when=exit_long) if (not long_only) strategy.entry("Short", strategy.short, when=enter_short) strategy.close("Short", when=exit_short) // ____ SL sl_long = strategy.position_avg_price * (1- (slp/100)) sl_short = strategy.position_avg_price * (1 + (slp/100)) if (use_sl) strategy.exit(id="SL", from_entry="Long", stop=sl_long) strategy.exit(id="SL", from_entry="Short", stop=sl_short) // ____ Plots colors = strategy.position_size > 0 ? #27D600 : strategy.position_size < 0 ? #E30202 : color.orange highest_high_plot = plot(highest_high, color=colors) lowest_low_plot = plot(lowest_low, color=colors) plot(base_line, color=color.silver) fill(highest_high_plot, lowest_low_plot, color=colors, transp=90)