Đây là một chiến lược giao dịch định lượng dựa trên xu hướng. Nó chủ yếu sử dụng ba đường trung bình động với các giai đoạn khác nhau, kết hợp với chỉ số ATR, để theo dõi xu hướng thị trường và hỗ trợ xác định thời gian vào và ra.
Chiến lược này sử dụng ba đường trung bình động 9 ngày (ngắn hạn), 15 ngày (trung hạn) và 24 ngày ( dài hạn). Trong số đó, các đường 9 ngày và 15 ngày được sử dụng để xác định hướng xu hướng và thời gian nhập cảnh, trong khi đường 24 ngày được sử dụng để xác định lợi nhuận và dừng lỗ. Đồng thời, chiến lược cũng kết hợp chỉ số ATR để điều chỉnh động các đường trung bình động để thích nghi tốt hơn với biến động của thị trường.
Cụ thể, khi đường trung bình động ngắn hạn vượt qua đường trung bình động trung bình trung hạn, và giá đóng cửa lớn hơn đường trung bình động ngắn hạn, nó cho thấy xu hướng đang bắt đầu xuất hiện và các vị trí dài có thể được thiết lập tại thời điểm này. Khi đường trung bình động ngắn hạn vượt qua đường trung bình động dài hạn, hoặc giá đóng cửa dưới đường trung bình động dài hạn, nó biểu thị sự đảo ngược xu hướng, vì vậy các vị trí hiện có nên được đóng cửa để dừng lỗ hoặc các vị trí ngắn có thể được bắt đầu.
Ngoài ra, chiến lược cũng sử dụng màu thanh để hiển thị trực quan hướng xu hướng. Các thanh có màu xanh lá cây khi đường ngắn hạn nằm trên đường trung hạn và màu đỏ khi dưới đường dài hạn.
Nhìn chung, đây là một chiến lược theo xu hướng tương đối mạnh mẽ. Nó có thể nắm bắt hiệu quả các xu hướng trung và dài hạn, trong khi thiết lập các cơ chế dừng lỗ / lợi nhuận để kiểm soát rủi ro. Nhưng chiến lược nhạy cảm với các thông số và điều kiện thị trường, đòi hỏi tối ưu hóa thêm để thích nghi với nhiều môi trường thị trường hơn.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 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/ // © ceyhun //@version=4 strategy("Chaloke System Strategy",overlay=true) P1=input(9,title="ShortTerm Period") P2=input(15,title="MidTerm Period") P3=input(24,title="LongTerm Period") P4=input(5,title="Invesment Term") P5=input(5,title="ATR Period") Barcolor=input(true,title="Barcolor") Sm=2*P5/10 ATRX=Sm*atr(P4) S=ema(close,P1)-ATRX M=ema(close,P2)-ATRX Lg=ema(close,P3)-ATRX Sht=iff(close==highest(close,3),S,ema(close[1],P1)-ATRX) Mid=iff(close==highest(close,3),M,ema(close[1],P2)-ATRX) Lng=iff(close==highest(close,3),Lg,ema(close[1],P3)-ATRX) colors=iff(Sht>Mid and close > Sht ,color.green,iff(close < Lng or Sht<Lng,color.red,color.black)) plot(Sht,"Short",color=color.green,linewidth=2) plot(Mid,"Middle",color=color.black,linewidth=2) plot(Lng,"Long",color=color.red,linewidth=2) barcolor(Barcolor ? colors :na) long = crossover(Sht,Mid) and close > Sht short = crossunder(Sht,Lng) or close < Lng if long strategy.entry("Long", strategy.long, comment="Long") if short strategy.entry("Short", strategy.short, comment="Short") alertcondition(long, title='Long', message='Chaloke System Alert Long') alertcondition(short, title='Short', message='Chaloke System Alert Short')