
Strategi ini diberi nama Strategi Crossover Rata-rata Bergerak Dua Eksponensial dan Rata-rata Bergerak Tiga Eksponensial. Strategi ini menggabungkan sinyal silang rata-rata bergerak dua eksponensial (DEMA) dan rata-rata bergerak tiga eksponensial (TEMA) untuk menentukan masuk ke pertandingan dengan menggunakan DEMA dan TEMA.
Strategi ini terutama didasarkan pada persilangan rata-rata bergerak dua indeks (DEMA) dan rata-rata bergerak tiga indeks (TEMA) untuk menghasilkan sinyal perdagangan.
Rumus untuk menghitung DEMA adalah sebagai berikut:
DEMA = 2*EMA1 - EMA2
Di antaranya, EMA1 dan EMA2 adalah Exponential Moving Average dengan periode panjang N. DEMA menggabungkan kesederhanaan EMA dan kecepatan responsnya.
Rumus perhitungan TEMA adalah:
TEMA = 3*(EMA1 - EMA2) + EMA3
Di antaranya, EMA1, EMA2 dan EMA3 adalah Exponential Moving Average dengan periode panjang N. TEMA meluruskan melalui tiga kali indeks, mampu menyaring penipuan.
Ketika DEMA di atas melewati TEMA, menghasilkan sinyal beli; ketika DEMA di bawah melewati TEMA, menghasilkan sinyal jual. Berdasarkan prinsip persilangan dua kurva, Anda dapat menangkap konversi siklus, masuk dan keluar tepat waktu.
Strategi ini dapat meningkatkan keakuratan perdagangan dengan membentuk sinyal perdagangan dengan crossover dari moving averages ganda dan tiga, yang dikombinasikan dengan kecepatan respons DEMA dan efek riak TEMA. Namun, kombinasi indikator tunggal rentan terhadap pengaruh ilusi dan masih membutuhkan bantuan dari berbagai alat verifikasi untuk membentuk sistem perdagangan yang sistematis, sehingga menghasilkan keuntungan yang stabil dalam jangka panjang.
/*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)