
Chiến lược này là một chiến lược giao dịch định lượng dựa trên các chỉ số xu hướng. Nó chủ yếu sử dụng các đường trung bình di chuyển trong ba chu kỳ khác nhau, kết hợp với chỉ số ATR để theo dõi xu hướng thị trường, hỗ trợ quyết định thời gian ra thị trường.
Chiến lược này sử dụng ba đường trung bình di chuyển 9 ngày (tạm dịch: ngắn hạn), 15 ngày (trung bình) và 24 ngày (tạm dịch: dài hạn). Trong đó, đường 9 và 15 ngày được sử dụng để xác định hướng xu hướng và thời gian đi vào thị trường, đường 24 ngày được sử dụng để xác định điểm dừng và dừng.
Cụ thể, khi đường trung bình di chuyển ngắn hạn xuyên qua đường trung bình di chuyển trung bình và giá đóng cửa lớn hơn đường trung bình di chuyển ngắn hạn, điều này cho thấy thị trường bắt đầu đi vào xu hướng, tại thời điểm này có thể thiết lập một vị trí đa vị trí. Khi đường trung bình di chuyển ngắn hạn xuyên qua đường trung bình di chuyển dài hạn, hoặc giá đóng cửa thấp hơn đường trung bình di chuyển dài hạn, cho thấy xu hướng đảo ngược, nên dừng lỗ hoặc thiết lập vị trí mở.
Ngoài ra, chiến lược này cũng sử dụng màu sắc biểu đồ cột để hiển thị trực quan hướng xu hướng. Đường ngắn là màu xanh lá cây khi lớn hơn đường trung bình và đỏ khi nhỏ hơn đường dài.
Chiến lược này nói chung là một chiến lược theo dõi xu hướng mạnh mẽ hơn. Nó có thể nắm bắt hiệu quả xu hướng đường dài và trung bình, đồng thời thiết lập cơ chế kiểm soát rủi ro của hệ thống ngăn chặn. Tuy nhiên, chiến lược này nhạy cảm với các tham số và tình trạng thị trường và cần được tối ưu hóa hơn nữa để phù hợp với nhiều môi trường thị trường.
/*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')