Strategi ini menggunakan 50 siklus saluran rata-rata dan ADX Moving Index serta kombinasi indikator energi EFI untuk perdagangan tren. Ketika indikator energi EFI menunjukkan tren dimulai, masuk ke dalam lapangan dengan pengembalian di area saluran rata-rata 50. Strategi ini berlaku untuk periode waktu 1 menit.
Perhitungan saluran rata-rata 50 siklus, saluran di atas adalah sepanjang garis rata-rata titik tinggi, di bawah adalah sepanjang garis rata-rata titik rendah.
Perhitungan indeks pergerakan ADX untuk menilai kekuatan tren, hanya ketika tren kuat ((ADX> 20) untuk mempertimbangkan perdagangan.
Hitung indikator energi EFI untuk periode panjang (<120 siklus) dan periode pendek (<15 siklus). Indikator periode panjang lebih besar dari 0 menunjukkan peningkatan energi tren naik secara keseluruhan, dan indikator periode pendek kurang dari 0 menunjukkan penurunan impuls kenaikan jangka pendek.
Operasi pembelian dilakukan ketika indikator EFI periode panjang dan pendek mengirimkan sinyal beli, dan harga kembali ke saluran 50 rata-rata.
Operasi jual dilakukan ketika indikator EFI periode panjang dan pendek mengirimkan sinyal jual, dan harga kembali ke 50 saluran linier rata-rata.
Strategi ini menggabungkan tren, momentum, dan sinyal pengembalian yang efektif untuk menyaring sebagian besar terobosan palsu. Keuntungan spesifiknya adalah sebagai berikut:
50 saluran rata-rata dengan jelas menentukan arah tren utama.
Indikator ADX memastikan bahwa hanya diperdagangkan ketika tren jelas dan menghindari arbitrage di pasar yang bergoyang.
Indikator EFI menilai bahwa saat energi tren meningkat, pembelian dilakukan, mengurangi risiko pembelian.
Menunggu panggilan balik untuk masuk ke dalam arena, bisa mendapatkan RRR yang lebih baik.
Kombinasi dari berbagai indikator dapat secara efektif menyaring risiko dari penembusan palsu.
Strategi ini memiliki risiko utama sebagai berikut:
Dalam tren yang kuat juga akan ada penyesuaian yang lebih besar, yang membutuhkan pengaturan jangkauan stop loss yang lebih luas.
Dalam situasi yang bergolak, indikator EFI dapat mengirimkan sinyal yang salah, yang perlu dipasangkan dengan indikator penghakiman tren seperti ADX.
Jika Anda memutar balik terlalu jauh, Anda akan kehilangan waktu masuk, sehingga Anda dapat menyesuaikan parameter garis rata-rata dengan tepat.
Varietas perdagangan tunggal tidak dapat secara efektif mendistribusikan risiko sistematis pasar.
Strategi ini dapat dioptimalkan dalam beberapa hal:
Uji lebih banyak varietas untuk mencari ruang lingkup umum dari parameter strategi.
Menambahkan strategi stop loss untuk mengunci keuntungan dengan melacak stop loss.
Optimalkan parameter, optimalkan parameter indikator seperti ADX, EFI.
Menambahkan algoritma pembelajaran mesin, menggunakan pelatihan data besar untuk menentukan apakah ada atau tidak ada terobosan tren.
Meningkatkan perdagangan dalam periode waktu yang berbeda dengan menggunakan teknologi Spacing untuk mengontrol posisi.
Evaluasi dan memperkenalkan lebih banyak indikator penyaringan tren untuk meningkatkan kualitas sinyal.
Strategi ini secara keseluruhan merupakan strategi pengembalian tren yang sangat cocok untuk pemula. Strategi ini menggabungkan beberapa sinyal seperti tren, momentum, dan pengembalian, yang dapat secara efektif menyaring terobosan palsu. Dengan mengoptimalkan strategi stop loss, pengaturan parameter, siklus waktu, dan lain-lain, strategi ini dapat menjadi sistem pelacakan tren yang kuat.
/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © trent777brown
//@version=5
// strategy("adx efi 50 ema channel, trend pullback", overlay=true, margin_long=100, margin_short=100, currency=currency.USD, initial_capital= 100000, close_entries_rule="ANY")
//bollingerbands
[basis, upperband, lowerband]= ta.bb(ohlc4, 50, 3)
[basis2, upperband2, lowerband2]= ta.bb(ohlc4, 50, 2)
psar= ta.sar(.1, .1, .09)
ema50= ta.ema(hlc3, 50)
ema50hi= ta.ema(high, 50)
ema50lo= ta.ema(low, 50)
ema18= ta.wma(hlc3, 15)
wma9= ta.wma(open, 9)
wma5= ta.wma(ohlc4, 5)
ema34= ta.rma(hlc3, 10)
[macdline, signalline, histline]= ta.macd(hlc3, 5, 34, 5)
[macdline2, signalline2, histline2]= ta.macd(hlc3, 15,70, 24)
[diplus, diminus, adx]= ta.dmi(20, 20)
[diplus2, diminus2, adx2]= ta.dmi(12, 12)
rsi= ta.rsi(hlc3, 14)
rsisma= ta.sma(rsi, 10)
stoch= ta.stoch(close, high, low, 21)
k= ta.wma(stoch, 3)
d= ta.wma(k, 3)
trendline5= ta.wma(hlc3, 300)
trendline9= ta.wma(open, 540)
trendline18= ta.wma(open, 1080)
atr=ta.atr(14)
plot(psar, color=color.red, style=plot.style_circles)
plot(ema50, color=color.white, linewidth=4)
plot(ema50hi, color=color.yellow, linewidth=4)
plot(ema50lo, color=color.yellow, linewidth=4)
plot(ema34, color=color.aqua, linewidth=4)
plot(wma9, color=color.gray, linewidth=4)
plot(wma5, color=color.lime, linewidth=4)
plot(trendline18, color=color.orange, linewidth=4)
plot(upperband, color=color.navy, linewidth=4)
plot(lowerband, color=color.navy, linewidth=4)
plot(upperband2, color=color.navy, linewidth=4)
plot(lowerband2, color=color.navy, linewidth=4)
plot(trendline9, color=color.maroon, linewidth=4)
plot(trendline5, color=color.yellow, linewidth=4)
efi = ta.rma(ta.change(close) * volume, 15)
efi2= ta.rma(ta.change(close) * volume, 120)
buy= efi2 > 0 and efi < 0 and efi[1] < efi and adx >= 20 and open < ema50hi
sell= efi2 < 0 and efi > 0 and efi[1] > efi and adx >= 20 and open > ema50lo
//ell= rsi > 50 and ta.crossunder(wma5, wma9) and psar > high and ema18 <= ema50hi and macdline > 0 and macdline < signalline
//buy= ta.crossunder(close, ema50) and rsi < 50 and adx2 < adx2[1] and k < 25 and psar > high
//uy= rsi < 60 and ta.crossover(wma5, wma9) and psar < low and ema18 >= ema50 and macdline2 > 0 and diplus2 < 30 // and histline2 < 0
//buy= ema18 > ema50 and ta.crossunder(rsi, 45) and open < ema50hi and adx2[3] < adx2 and diplus2 < 25 and macdline < 0 and adx < 10
//sell= ta.crossover(close, ema50) and rsi > 50 and adx2 < adx2[1] and k > 75 and psar < low
//ell= ema18 < ema50 and ta.crossover(rsi, 60) and open > ema50lo and diminus2 < 30 and macdline2 < 0 and adx2[2] < adx2
//buy sell conditions 1
//buy= ta.crossover(wma5, ema18) and ema18 > ema50lo and diplus > 22 and diminus < 22 and adx > 15
//ell= ta.crossover(psar, high) and macdline2 < signalline2 and rsi < rsisma
//when conditions
buytrig= ema34 >= ema50lo
selltrig= ema34 <= ema50hi
//strategy
sl= low - atr * 8
tp= high + atr * 4
sellsl= high + atr * 8
selltp= low - atr * 4
if(buy)
strategy.entry("buy", strategy.long, when= buytrig)
strategy.exit("exit buy", "buy", limit= tp, stop= sl)
strategy.close("close", when= ta.crossunder(ema34, ema50lo))
if(sell)
strategy.entry("sell", strategy.short, when= selltrig)
strategy.exit("exit sell", "sell", limit= selltp, stop= sellsl)