Chiến lược này được đặt tên là
Chiến lược này chủ yếu sử dụng sự chéo chéo của Đường trung bình di chuyển nhân tố hai (DEMA) và Đường trung bình di chuyển nhân tố ba (TEMA) để tạo ra các tín hiệu giao dịch.
Công thức cho DEMA là:
DEMA = 2*EMA1 - EMA2
Trong đó EMA1 và EMA2 là Mức trung bình động theo cấp số nhân với giai đoạn N. DEMA kết hợp sự trơn tru của EMA và khả năng đáp ứng.
Công thức cho TEMA là:
TEMA = 3*(EMA1 - EMA2) + EMA3
Nơi EMA1, EMA2 và EMA3 là Mức trung bình động theo cấp số nhân với thời gian N. TEMA lọc các sự đột phá giả bằng cách làm mịn ba lần.
Khi DEMA vượt trên TEMA, một tín hiệu mua được tạo ra. Khi DEMA vượt dưới TEMA, một tín hiệu bán được tạo ra. Theo nguyên tắc chéo, nó có thể nắm bắt chuyển đổi chu kỳ kịp thời.
Chiến lược này tạo ra các tín hiệu giao dịch từ DEMA và TEMA chéo, kết hợp khả năng phản hồi của DEMA và khả năng lọc của TEMA để cải thiện độ chính xác.
/*backtest start: 2023-12-03 00:00:00 end: 2024-01-02 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("DEMA-TEMA Cross Strategy", shorttitle="DEMA-TEMA Cross", overlay=true) // Input options for Double EMA (DEMA) dema_length = input.int(10, title="DEMA Length", minval=1) dema_src = input(close, title="DEMA Source") // Calculate Double EMA (DEMA) dema_e1 = ta.ema(dema_src, dema_length) dema_e2 = ta.ema(dema_e1, dema_length) dema = 2 * dema_e1 - dema_e2 // Input options for Triple EMA (TEMA) tema_length = input.int(8, title="TEMA Length", minval=1) tema_src = input(close, title="TEMA Source") // Calculate Triple EMA (TEMA) tema_ema1 = ta.ema(tema_src, tema_length) tema_ema2 = ta.ema(tema_ema1, tema_length) tema_ema3 = ta.ema(tema_ema2, tema_length) tema = 3 * (tema_ema1 - tema_ema2) + tema_ema3 // Crossover signals for long (small green arrow below candle) crossover_long = ta.crossover(dema, tema) // Crossunder signals for short (small red arrow above candle) crossunder_short = ta.crossunder(dema, tema) plotshape(crossunder_short ? 1 : na, title="Short Entry", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small) plotshape(crossover_long ? -1 : na, title="Long Entry", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plot(dema, "DEMA", color=color.green) plot(tema, "TEMA", color=color.blue) if (crossover_long) strategy.entry("Long", strategy.long) if (crossunder_short) strategy.entry("Short", strategy.short)