Strategi ini menggunakan kombinasi dari tiga jenis rata-rata bergerak, yaitu TEMA, DEMA, dan HMA, untuk masuk saat TEMA dan DEMA dalam jangka menengah mengeluarkan sinyal Gold/Dead Fork, dan menggunakan HMA dalam jangka panjang untuk menentukan arah tren dan menyaring sinyal perdagangan berlawanan.
Secara khusus, strategi ini secara bersamaan menggunakan DEMA bergerak indeks ganda untuk menentukan tren jangka menengah, TEMA bergerak indeks tiga untuk menentukan tren jangka pendek, dan HMA bergerak rata-rata padat untuk menentukan tren jangka panjang. Sinyal perdagangan dihasilkan hanya jika jangka menengah pendek dimulai pada arah yang sama (TEMA dan DEMA berlawanan arah) dan tren utama jangka panjang juga berlawanan arah (HMA berlawanan arah).
Mengelola risiko dapat dilakukan dengan menemukan kombinasi parameter yang optimal melalui pengujian multi-parameter, memperkenalkan strategi stop loss, dan meredakan persyaratan masuk dengan tepat.
Strategi ini menggunakan kombinasi berbagai indikator garis rata untuk menilai tren. Kelebihannya adalah bahwa sinyal dihasilkan dengan jelas dan dapat dikonfigurasi dengan ruang yang luas. Kelemahannya adalah adanya risiko keterlambatan dan ketergantungan pada beberapa parameter.
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tuned-com
//@version=4
strategy("TEMA/DEMA/HMA", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=1000000, commission_type=strategy.commission.percent, commission_value=0.1)
Tlength = input(8, title="TEMA Length", minval=1)
Dlength = input(43, title="DEMA Length", minval=1)
Hlength = input(52, title="Hull Length", minval=1)
Rlength = input(2, title="Hull Trend Test Length", minval=1)
//TEMA//
ema1 = ema(close, Tlength)
ema2 = ema(ema1, Tlength)
ema3 = ema(ema2, Tlength)
tema = 3 * (ema1 - ema2) + ema3
//DEMA//
e1 = ema(close, Dlength)
e2 = ema(e1, Dlength)
dema = 2 * e1 - e2
//HMA//
hma = wma(2 * wma(close, Hlength / 2) - wma(close, Hlength), round(sqrt(Hlength)))
up = crossunder(dema, tema) and rising(hma, Rlength)
down = crossover(dema, tema) and falling(hma, Rlength)
downc = crossunder(dema, tema)
upc = crossover(dema, tema)
plot(dema, color=color.green, linewidth=2)
plot(tema, color=color.aqua, linewidth=2)
plot(hma, color=rising(hma, Rlength) ? color.green : na, linewidth=2, transp=0)
plot(hma, color=falling(hma, Rlength) ? color.red : na, linewidth=2, transp=0)
bgcolor(rising(hma, Rlength) ? color.green : na, transp=70)
bgcolor(falling(hma, Rlength) ? color.red : na, transp=70)
plotarrow(tema - dema, colorup=color.green, colordown=color.red, transp=70)
if up
strategy.entry("Long Entry", strategy.long)
if down
strategy.entry("Short Entry", strategy.short)