
Chiến lược kênh thu động là một biến thể dựa trên kênh Donchian. Nó bao gồm các vùng giá cao nhất, vùng giá thấp nhất và đường cơ sở làm trung bình giữa vùng giá cao nhất và vùng giá thấp nhất. Chiến lược này rất hữu ích trong khung thời gian đường tròn và đường nắng của các giống có xu hướng. Đây là thực hiện được sử dụng trong ứng dụng QuantCT.
Bạn có thể thiết lập chế độ điều hành là nhiều không hoặc chỉ nhiều đầu.
Bạn cũng có thể thiết lập dừng cố định hoặc bỏ qua nó để chiến lược này chỉ hoạt động dựa trên tín hiệu vào và ra khỏi thị trường.
Lập luận cốt lõi của chiến lược này dựa trên chỉ số kênh Donchian. Cổng Donchian bao gồm giá cao nhất, giá thấp nhất và giá đóng cửa trung bình trong 20 ngày.
Chiến lược này là một biến thể của kênh Donchian. Nó bao gồm các vùng giá cao nhất, vùng giá thấp nhất và đường cơ sở làm trung bình giữa vùng giá cao nhất và vùng giá thấp nhất.
Lợi thế của chiến lược này là có thể nắm bắt được động lực của xu hướng giá một cách hiệu quả. Bằng cách chờ đợi giá phá vỡ đường mòn để đánh giá xu hướng thực sự bắt đầu, bạn có thể tránh thiệt hại không cần thiết do bị nói chuyện.
Giải pháp:
Chiến lược thu thập động lực cung cấp cơ hội lợi nhuận đáng kể bằng cách nắm bắt xu hướng giá cả. Đồng thời, nó cũng có một số rủi ro cần điều chỉnh các tham số để kiểm soát rủi ro. Bằng cách liên tục tối ưu hóa lựa chọn thời gian vào và logic dừng lỗ, chiến lược này có thể trở thành một hệ thống theo dõi xu hướng rất tuyệt vời.
/*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)