Đây là một chiến lược giao dịch trung bình động kép dựa trên giá tổng hợp bị ngắt (DSP). DSP là một hàm phù hợp với chu kỳ thống trị của dữ liệu giá thực, được lấy bằng cách trừ EMA nửa chu kỳ khỏi EMA chu kỳ quý. Khi DSP vượt qua trên dải trên hoặc dưới dải dưới, các giao dịch đơn phương được thực hiện.
Tính toán giá trung bình HL 1/2 chu kỳ xHL2.
Tính toán EMA 1/4 chu kỳ (xEMA1) và EMA 1/2 chu kỳ (xEMA2) của xHL2 dựa trên Dài.
Nhận DSP bằng cách trừ xEMA2 từ xEMA1.
Thiết lập tham số dải trên và dưới, đi dài khi DSP vượt qua dải trên và đi ngắn khi vượt qua dải dưới.
Các thông số ngược có thể chuyển đổi giữa hướng dài và hướng ngắn.
Ưu điểm của chiến lược này:
DSP nắm bắt chu kỳ giá thống trị, tránh bị sai hướng từ các chu kỳ nhỏ.
Thiết kế EMA kép theo dõi hiệu quả các thay đổi chu kỳ thống trị.
Các dải trên/dưới đơn giản tránh giao dịch quá mức.
Dễ dàng chuyển đổi giữa dài / ngắn sử dụng tham số ngược, thích nghi với môi trường thị trường khác nhau.
Không cần tối ưu hóa tham số phức tạp, đơn giản và thực tế.
Rủi ro chính:
Việc thiết lập chu kỳ DSP không đúng có thể bỏ lỡ chu kỳ thống trị.
Chiều rộng băng cần tối ưu hóa, nếu không có thể xảy ra giao dịch quá mức.
Thiết kế chu kỳ cố định có khả năng thích nghi kém với những thay đổi thị trường dữ dội.
Giao dịch trên DSP một mình khiến chiến lược dễ bị tấn công.
Không có lệnh dừng lỗ có thể dẫn đến tổn thất đáng kể.
Cải tiến:
Tối ưu hóa các thông số để tìm kết hợp chu kỳ tốt nhất.
Thêm các dải động dựa trên biến động.
Tích hợp các bộ lọc xu hướng và biến động để giảm tín hiệu sai.
Thêm các cơ chế dừng lỗ hoặc ngăn chặn để kiểm soát rủi ro.
Kiểm tra trên nhiều công cụ để phổ biến.
giới thiệu máy học để tối ưu hóa chu kỳ DSP thích nghi.
Nhìn chung đây là một chiến lược giao dịch trung bình động kép rất đơn giản và thực tế. Nó được xây dựng trên nền tảng phân tích chu kỳ vững chắc, với DSP theo dõi hiệu quả chu kỳ thống trị. Với những cải tiến trong tối ưu hóa tham số, dừng lỗ, điều kiện lọc và nhiều hơn nữa, nó có thể trở thành một chiến lược giao dịch định lượng đáng tin cậy.
/*backtest start: 2023-09-11 00:00:00 end: 2023-09-13 02:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 20/03/2017 // Detrended Synthetic Price is a function that is in phase with the // dominant cycle of real price data. This DSP is computed by subtracting // a half-cycle exponential moving average (EMA) from the quarter cycle // exponential moving average. // See "MESA and Trading Market Cycles" by John Ehlers pages 64 - 70. // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="D_DSP (Detrended Synthetic Price)", shorttitle="D_DSP") Length = input(14, minval=1) SellBand = input(25) BuyBand = input(-25) reverse = input(false, title="Trade reverse") hline(0, color=blue, linestyle=line) hline(SellBand, color=red, linestyle=line) hline(BuyBand, color=green, linestyle=line) xHL2 = hl2 xEMA1 = ema(xHL2, Length) xEMA2 = ema(xHL2, 2 * Length) xEMA1_EMA2 = xEMA1 - xEMA2 pos = iff(xEMA1_EMA2 > SellBand, 1, iff(xEMA1_EMA2 < BuyBand, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xEMA1_EMA2, color=blue, title="D_DSP")