
Chiến lược giao dịch theo xu hướng biển là một chiến lược định lượng dựa trên phương tiện di chuyển để xác định xu hướng và giao dịch tại các điểm đảo ngược xu hướng. Chiến lược này kết hợp với tín hiệu xác định hình dạng đường K để vào và dừng lỗ tại các điểm đảo ngược tiềm năng.
Chiến lược này sử dụng trung bình EMA của ba chu kỳ khác nhau để xác định xu hướng. Cụ thể, tính trung bình EMA của đường 15 ngày, đường 120 ngày và đường 220 ngày.
Trong xu hướng giảm giá, nếu giá đóng cửa dưới 220 ngày, bạn sẽ làm giảm giá; trong xu hướng giảm giá, nếu giá đóng cửa trên 220 ngày, bạn sẽ làm nhiều hơn.
Trong khi đó, chiến lược này cũng kết hợp với hình dạng K-line để xác nhận tín hiệu. Khi có đường K-line lỗ hổng lớn hoặc đường K-line lỗ hổng lớn xuất hiện, thì dừng vị trí.
Ưu điểm lớn nhất của chiến lược này là có thể hoạt động theo xu hướng, tránh hoạt động ngược tùy ý khi không có tín hiệu rõ ràng. Bằng cách đánh giá xu hướng bằng nhiều đường trung bình di chuyển, bạn có thể lọc hiệu quả tiếng ồn thị trường và khóa hướng xu hướng chính.
Trong khi đó, chiến lược cũng có thể tham gia vào các điểm đảo ngược xu hướng tiềm năng, khi đó có đặc điểm lợi nhuận rủi ro tốt. Và kết hợp với dừng chân hình dạng K, có thể tránh điểm dừng lỗ quá phân mảnh.
Rủi ro chính của chiến lược này là xu hướng được đánh giá bởi các đường trung bình di chuyển có thể bị chậm trễ so với xu hướng thực tế của giá. Khi đó có thể xảy ra hoạt động ngược với xu hướng.
Ngoài ra, quy tắc hình dạng K-line được sử dụng trong chiến lược cũng có thể bị mất hiệu lực và không thể dừng lỗ hiệu quả. Khi thị trường có biến động bất thường, điểm dừng lỗ có thể bị phá vỡ trực tiếp, dẫn đến tổn thất lớn.
Để giảm rủi ro trên, bạn có thể xem xét điều chỉnh các tham số chu kỳ của đường trung bình di chuyển hoặc điều chỉnh các yếu tố tỷ lệ được xác định bởi hình dạng đường K để làm cho quy tắc nghiêm ngặt hơn. Tất nhiên, cũng cần phải nhận ra rằng phân tích kỹ thuật không bao giờ có thể hoàn toàn tránh được rủi ro thị trường và cần kiểm soát vị trí.
Chiến lược này có thể được tối ưu hóa theo các khía cạnh sau:
Tối ưu hóa các tham số chu kỳ của đường trung bình di chuyển để tìm các tham số chu kỳ phù hợp hơn để đánh giá xu hướng
Kiểm tra các loại chỉ số trung bình di chuyển khác nhau, chẳng hạn như SMA, LWMA, v.v., để tìm các chỉ số phù hợp hơn với phong cách của bạn
Điều chỉnh hoặc thêm quy tắc xác định hình dạng đường K để tín hiệu đảo ngược rõ ràng và đáng tin cậy hơn
Tăng các chiến lược dừng lỗ, chẳng hạn như dừng theo dõi, dừng thời gian, để kiểm soát tổn thất đơn lẻ hơn
Kết hợp với các chỉ số khác, chẳng hạn như chỉ số biến động, khối lượng giao dịch, tín hiệu giao dịch làm phong phú hệ thống
Chiến lược theo xu hướng là một chiến lược theo xu hướng rất điển hình. Phương pháp đánh giá xu hướng rất đơn giản và dễ thực hiện, đồng thời có một số biện pháp kiểm soát rủi ro. Chiến lược này phù hợp với các nhà đầu tư có hiểu biết về giao dịch xu hướng và muốn có thu nhập ổn định. Nếu có thể tối ưu hóa liên tục, nó cũng có thể trở thành chiến lược định lượng có lợi thế cạnh tranh lâu dài.
/*backtest
start: 2023-12-14 00:00:00
end: 2023-12-21 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// © Aayonga
//@version=5
strategy('帆船探险寻找传说', overlay=true)
useDateFilter=input.bool(true,title = "启用回测时间范围限定", group = "回测范围")
backtesStarDate=input(timestamp("1 Jan 2015"),title = "开始时间", group = "回测范围")
backtestEndDate=input(timestamp("1 Jan 2040"),title = "结束时间",group = "回测范围")
inTradeWindow= true
A = input(50, '计算的周期')
shallowsea = ta.highest(A)
deepsea= ta.lowest(A)
//趋势形成条件
Length1 = input.int(15, title='短期市场平均成本', minval=1, group='市场平均成本')
Length2 = input.int(120, title='中期市场平均成本', minval=1, group='市场平均成本')
Length3 = input.int(220, title='长期市场平均成本', minval=1, group='市场平均成本')
SMA1 = ta.ema(close, Length1)
SMA2 = ta.sma(close, Length2)
SMA3 = ta.sma(close, Length3)
//趋势看多
longTrend=SMA1>SMA3 and open >SMA3
shortTrend=SMA1<SMA3
bullPinBar = ((close > open) and ((open - low) > 0.66* (high - low))) or ((close < open) and ((close - low) > 0.9 * (high - low)))
bearPinBar = ((close > open) and ((high - close) > 0.75 * (high - low))) or ((close < open) and ((high - open) >0.9 * (high - low)))
if close > shallowsea[5] and shortTrend and inTradeWindow
strategy.entry('⛵🎏', strategy.short)
if close < deepsea[5] and longTrend and inTradeWindow
strategy.entry('🧜', strategy.long)
if bullPinBar and inTradeWindow
strategy.close('⛵🎏',comment = '🐚')
if bearPinBar and inTradeWindow
strategy.close('🧜',comment = '🐳')
plot(shallowsea,style=plot.style_area, color=color.new(#71bfef, 0))
plot(deepsea, style=plot.style_area,color=color.new(#298bd1, 0))