Chiến lược này dựa trên chiến lược giao dịch hai chiều bằng nhau của giá tổng hợp giảm xu hướng (Detrended Synthetic Price, DSP). DSP là một hàm đồng bộ với chu kỳ thống trị giá thực, được lấy bằng cách tính 1⁄4 chu kỳ EMA trừ 1/ 2 chu kỳ EMA.
Tính trung bình của giá trong 1⁄2 chu kỳ HL x HL2.
Tính theo tham số Length xHL2 1⁄4 chu kỳ EMA ((xEMA1) và 1⁄2 chu kỳ EMA ((xEMA2)
Tính toán xEMA1 trừ xEMA2 để có được giá tổng hợp DSP.
Cài đặt tham số trên và dưới đường ray, làm nhiều khi DSP lên đường ray và trống khi đi xuống đường ray.
Có thể thực hiện nhiều hướng trống bằng cách chuyển đổi tham số đảo ngược.
Chiến lược này có những ưu điểm sau:
DSP có thể nắm bắt chu kỳ chi phối giá và tránh bị lừa bởi chu kỳ thứ cấp.
Thiết kế EMA kép có thể theo dõi hiệu quả sự thay đổi vòng luân phiên.
Dễ dàng di chuyển, tránh giao dịch quá mức.
Có thể dễ dàng chuyển đổi theo nhiều hướng để thích ứng với các môi trường thị trường khác nhau.
Không cần phải tối ưu hóa các tham số phức tạp, đơn giản và thực tế.
Những rủi ro chính của chiến lược này là:
Chu kỳ DSP được thiết lập không chính xác, có thể bỏ lỡ vòng lặp chủ đạo.
Kích thước đường ray trên và dưới cần được tối ưu hóa, nếu không có thể giao dịch quá thường xuyên.
Thiết kế chu kỳ cố định, thích ứng kém với thị trường thay đổi mạnh mẽ.
Chỉ dựa trên giao dịch DSP, dễ bị lừa đảo bởi thị trường rung động.
Không tính đến dừng lỗ, có nguy cơ mất mát lớn.
Chiến lược này có thể được tối ưu hóa theo các hướng sau:
Tối ưu hóa tham số, tìm kiếm sự kết hợp tham số chu kỳ tốt nhất.
Thêm thiết lập đường ray động dựa trên biến động.
Các chỉ số biến động và xu hướng được lọc để giảm tín hiệu giả.
Tăng mức dừng di động hoặc theo dõi để kiểm soát rủi ro.
Điều chỉnh tham số đa giống để đánh giá tính phổ biến.
Thêm thuật toán học máy để thực hiện tối ưu hóa tự điều chỉnh chu kỳ DSP.
Chiến lược tổng thể là một chiến lược giao dịch theo đường hai chiều rất đơn giản và thực tế. Nó được xây dựng trên cơ sở phân tích chu kỳ hợp lý, theo dõi chu kỳ thống trị hiệu quả thông qua DSP. Cải tiến về tối ưu hóa tham số, cơ chế dừng lỗ, điều kiện lọc, v.v., có thể trở thành một chiến lược giao dịch định lượng đáng tin cậy hơn.
/*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")