Chiến lược xu hướng kênh

Tác giả:ChaoZhang, Ngày: 2023-12-18 12:35:42
Tags:

img

Tổng quan

Chiến lược xu hướng kênh là một chiến lược theo xu hướng dựa trên giá mở và kênh Donchian. Nó xác định hướng xu hướng bằng cách vẽ một đường từ giá hiện tại đến đường xu hướng được đánh giá trên giá mở, kết hợp với kênh giá được hình thành bởi kênh Donchian.

Chiến lược logic

  1. Chọn một khung thời gian (ngày, hàng tuần, v.v.) và lấy giá mở của nó làm giá chuẩn.

  2. Tính toán trung bình động trong N ngày của giá cao nhất và giá thấp nhất bằng cách sử dụng chỉ số kênh Donchian, tạo thành kênh giá.

  3. Kéo một đường thẳng từ giá đóng hiện tại đến giá mở của khung thời gian đó, như đường chuẩn xu hướng.

  4. Khi giá đóng vượt qua dải trên của kênh Donchian, một tín hiệu mua được tạo ra. Khi giá đóng vượt qua dải dưới, một tín hiệu bán được tạo ra.

  5. Thiết lập chiến lược dừng lỗ và lấy lợi nhuận.

Sự kết hợp của đường chuẩn và đường kênh khóa theo hướng xu hướng và tạo ra các tín hiệu liên tục khi xu hướng tồn tại, trong khi lọc ra một số tiếng ồn.

Phân tích lợi thế

  1. Sử dụng giá mở cửa làm đường chuẩn chiến lược có thể xác định hiệu quả sự thay đổi xu hướng giá trong các khung thời gian khác nhau.

  2. Chỉ số kênh Donchian có thể loại bỏ hiệu quả tác động của biến động ngắn hạn đối với đường chuẩn.

  3. Sự kết hợp giữa đường chuẩn và kênh Donchian có thể tạo ra tín hiệu khi xu hướng rõ ràng, tránh các sự đột phá sai.

  4. Tự động dừng lỗ và lấy lợi nhuận đặt khóa trong một số lợi nhuận và kiểm soát rủi ro.

  5. Chiến lược này có ít tham số và dễ thực hiện.

Phân tích rủi ro

  1. Nó có thể tạo ra nhiều tín hiệu không hợp lệ hơn trong thị trường giới hạn phạm vi.

  2. Nếu các tham số được đặt không đúng cách, stop loss có thể được kích hoạt sớm.

  3. Chiến lược này dựa nhiều hơn vào xu hướng thị trường và không phù hợp với các chiến lược đảo ngược trung bình.

  4. Trong điều kiện thị trường bất thường, giá có thể vượt qua đường dừng lỗ trực tiếp dẫn đến tổn thất lớn.

Hướng tối ưu hóa

  1. Kiểm tra các thông số khung thời gian khác nhau để chọn thông số mượt mà nhất để tạo tín hiệu.

  2. Điều chỉnh các thông số của kênh Donchian để thiết lập chiều rộng kênh phù hợp hơn.

  3. Tối ưu hóa tỷ lệ dừng lỗ và lợi nhuận dựa trên các đặc điểm sản phẩm khác nhau.

  4. Thêm các bộ lọc chỉ số khác để tránh các tín hiệu được tạo ra trong điều kiện thị trường bất thường.

Tóm lại

Chiến lược xu hướng kênh sử dụng các đường kênh được hình thành bởi giá mở và kênh Donchian để xác định hướng xu hướng giá. Nó có thể tạo ra các tín hiệu liên tục dễ đọc, khóa lợi nhuận và kiểm soát rủi ro thông qua việc thiết lập dừng lỗ và lấy lợi nhuận, làm cho nó trở thành một chiến lược theo xu hướng rất thực tế. Thông qua kiểm tra liên tục và tối ưu hóa tham số, chiến lược này có thể được áp dụng cho các sản phẩm khác nhau và đạt được lợi nhuận tốt trong các thị trường xu hướng.


/*backtest
start: 2023-11-17 00:00:00
end: 2023-12-17 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
//
strategy("STR-TREND", overlay=true)

emax = ta.ema(close,1)
plot(emax,title="X-EMA",color=color.black,linewidth=2)

XDX = input.string(title="TIMELINE", defval="M")
xdaily = request.security(syminfo.tickerid, XDX, open,barmerge.gaps_off, barmerge.lookahead_on)
length = input.int(21, minval=1)
lower = ta.lowest(xdaily,length)
upper = ta.highest(xdaily,length)
XXX = close>upper?lower:upper
plot(XXX,title="STR-X",color=color.red,linewidth=4)

TAKEPROFIT = input.int(15,title="Take Profit %", minval=1)
SELLTAKEPROFIT = XXX * (1-(TAKEPROFIT/100))
BUYTAKEPROFIT = XXX * (1+(TAKEPROFIT/100))
TAKEPROFITX = close<XXX?SELLTAKEPROFIT:BUYTAKEPROFIT
plot(TAKEPROFITX,title="TAKE PROFIT",color=color.black,linewidth=1)


//////////////STRATEGY ///////////////////

buystat= ta.crossover(close,XXX) 
sellstat = ta.crossunder(close,XXX) 

plotshape(buystat==true, title='long', text='BUY', textcolor=color.new(color.white, 0), style=shape.labelup, location=location.belowbar, color=color.new(color.green, 0), size=size.tiny) 
plotshape(sellstat==true, title='short', text='SELL', textcolor=color.new(color.white, 0), style=shape.labeldown, location=location.abovebar, color=color.new(color.red, 0), size=size.tiny) 

//////////////STRATEGY ///////////////////

strategy.entry("LONG", strategy.long, when = buystat==true, comment="")
strategy.exit("BUY TP", "LONG", qty_percent = 50 ,limit = BUYTAKEPROFIT)
strategy.close("LONG", when = sellstat==true, comment="")

strategy.entry("SHORT", strategy.short, when = sellstat==true, comment="")
strategy.exit("SELL TP", "SHORT", qty_percent = 50 ,limit = SELLTAKEPROFIT)
strategy.close("SHORT", when = buystat==true , comment="")








Thêm nữa