Chiến lược này sử dụng sự kết hợp của EMA và Hull EMA để thực hiện theo dõi xu hướng. EMA chậm trễ không có thể loại bỏ sự chậm trễ của EMA thông thường, trong khi Hull EMA có thể làm phẳng đường cong giá. Sự kết hợp của cả hai có thể nắm bắt chính xác hơn xu hướng và thực hiện giao dịch theo dõi xu hướng có rủi ro thấp.
Đầu tiên, tính EMA với độ trễ 0 giờ:
EMA1 = ema(close, Period) EMA2 = ema(EMA1, Period) Difference = EMA1 - EMA2 ZeroLagEMA = EMA1 + Difference
Trong số đó, ZeroLagEMA là EMA trễ thời gian bằng không. Nó loại bỏ sự trễ thời gian của EMA thông thường.
Sau đó tính toán đường cong Hull EMA sau khi làm mịn:
n2ma = 2*wma(ZeroLagEMA, round(S_period/2)) nma = wma(ZeroLagEMA, S_period) n1 = wma(n2ma - nma, sqn)
Cuối cùng, tính toán mối quan hệ lớn của Hull EMA hiện tại (n1) với Hull EMA (n2) của chu kỳ trước, xác định hướng xu hướng và xây dựng chiến lược giao dịch.
Lợi thế lớn nhất của chiến lược này là nó có thể nắm bắt chính xác xu hướng.
EMA trễ thời gian bằng không loại bỏ sự trễ thời gian của EMA thông thường và có thể nắm bắt sự thay đổi giá nhanh hơn.
Hull EMA đã làm cho giá cả được làm mịn đôi, có thể lọc ra một số tiếng ồn, xu hướng Capture rõ ràng hơn.
So với EMA hoặc Hull EMA riêng lẻ, sự kết hợp của cả hai có thể sử dụng các lợi thế riêng của mình để làm cho chiến lược chính xác và đáng tin cậy hơn.
Chiến lược này có những rủi ro:
Các tham số Period và S_period được thiết lập không chính xác, có thể dẫn đến việc chiến lược không nhạy cảm với phản ứng của thị trường và bỏ lỡ thời gian giao dịch.
Trong các trường hợp chấn động, EMA và Hull EMA có thể tạo ra nhiều tín hiệu chéo hơn, cần cảnh báo phá vỡ giả.
Không thể xử lý một cách hiệu quả tình huống giá cả tăng vọt qua đêm.
Do đó, cần kiểm tra cẩn thận các thiết lập tham số, xem xét các tín hiệu chỉ số một cách thận trọng, để phòng ngừa rủi ro của giá nhảy vọt.
Chiến lược này có thể được tối ưu hóa bằng cách:
Thử nghiệm các kết hợp tối ưu hóa tham số trong các chu kỳ khác nhau của thị trường khác nhau, làm cho chiến lược có thể thích ứng tốt hơn với các tình huống khác nhau.
Kết hợp với các chỉ số khác để lọc các tín hiệu đột phá giả, chẳng hạn như KDJ, MACD, v.v., để tăng sự ổn định của chiến lược.
Thêm chiến lược dừng lỗ để kiểm soát tổn thất đơn lẻ.
Tối ưu hóa thời gian đầu tư, tiếp tục nâng cao tỷ lệ chiến lược chiến thắng. Ví dụ: kết hợp hướng xu hướng, tránh mở vị trí ngược.
Chiến lược này sử dụng sự kết hợp của Hull EMA với độ trễ 0 giờ, có thể nắm bắt xu hướng thị trường một cách chính xác và nhạy cảm để giao dịch theo xu hướng theo cách rủi ro thấp. Sự ổn định của chiến lược có thể được nâng cao hơn nữa thông qua các phương tiện như tối ưu hóa tham số, lọc chỉ số và dừng lỗ.
/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
// Zero Lag EMA combined with Hull moving average for smoothing purposes.
// author: email: [email protected]
strategy("Ujanja", overlay=true)
Period = input(title="Period",defval=30, minval=1)
S_period=input(title="Smoother Period",defval=176)
EMA1= ema(close,Period)
EMA2= ema(EMA1,Period)
Difference= EMA1 - EMA2
ZeroLagEMA= EMA1 + Difference
n2ma=2*wma(ZeroLagEMA,round(S_period/2))
nma=wma(ZeroLagEMA,S_period)
diff=n2ma-nma
sqn=round(sqrt(S_period))
n2ma1=2*wma(ZeroLagEMA[1],round(S_period/2))
nma1=wma(ZeroLagEMA[1],S_period)
diff1=n2ma1-nma1
sqn1=round(sqrt(S_period))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
c=n1>n2?green:red
ma=plot(n1,color=c)
longCondition = n1>n2
if (longCondition)
strategy.entry("Long", strategy.long)
shortCondition = longCondition != true
if (shortCondition)
strategy.entry("Short", strategy.short)