
Strategi ini direka berdasarkan indikator EMA ganda dan indikator getaran percepatan AC. Di antaranya, indikator EMA ganda digunakan untuk menentukan arah trend harga, manakala indikator AC digunakan untuk mengesahkan isyarat trend dan mencapai kesan penapisan. Strategi ini menggabungkan dua fungsi pengesanan trend dan penapisan isyarat, yang bertujuan untuk meningkatkan kualiti isyarat dan mendapat keuntungan dalam trend.
Strategi ini terdiri daripada dua modul:
Modul dua EMA
Menggunakan 2 hari EMA dan 20 hari EMA untuk membina indikator EMA ganda. Apabila harga melebihi 2 hari EMA, ia dianggap sebagai isyarat beli; apabila harga melebihi 20 hari EMA, ia dianggap sebagai isyarat jual.
Modul ini menilai arah trend harga dalam jangka pendek dan jangka menengah, untuk melakukan pengesanan trend asas.
Modul AC
Gunakan nilai positif-negatif penunjuk AC untuk mengesahkan isyarat trend. Isyarat perdagangan dihasilkan hanya apabila kedua-dua EMA dan penunjuk AC berada di arah yang sama.
Modul ini meningkatkan kebolehpercayaan isyarat dengan menyaring isyarat palsu.
Secara keseluruhannya, strategi ini mengintegrasikan penilaian EMA dua arah, dan penapisan penembusan palsu dalam penunjuk AC, membentuk sistem pengesanan trend yang sistematik.
Strategi ini mempunyai kelebihan berikut:
Dua EMA menjejaki trend garis panjang, AC menghapuskan kebisingan jangka pendek, dan gabungan berkesan.
Isyarat penapisan adalah berkesan, dapat mengelakkan kerja kosong buta selepas keuntungan berganda, atau kerja berlebihan buta selepas keuntungan kosong.
Parameter penyesuaian fleksibel, boleh disesuaikan dengan parameter penyesuaian pelbagai jenis dan keadaan pasaran, dan boleh digunakan secara meluas.
Strategi yang jelas dan mudah difahami, memudahkan peniaga untuk mengukur, mengoptimumkan dan memperbaiki.
Ia boleh didapati dalam pelbagai varieti yang sedang trend.
Strategi ini juga mempunyai risiko:
Tetapan parameter EMA ganda yang tidak betul boleh terlepas trend yang lebih pendek atau menghasilkan lebih banyak perdagangan.
Tetapan parameter AC yang tidak betul boleh menyaring isyarat berkesan yang lebih lemah atau tidak dapat menyaring bunyi yang mencukupi.
Tidak dapat menangani pasaran yang berubah dengan cepat, seperti kejatuhan pesat.
Ia boleh digunakan sebagai strategi untuk menjejaki trend.
Strategi ini boleh dioptimumkan dari dimensi berikut:
Uji lebih banyak kombinasi parameter untuk mencari parameter optimum yang lebih sesuai dengan ciri-ciri pelbagai jenis.
Tambah modul Stop Loss dan keluar dari Stop Loss apabila kerugian terlalu besar.
Menambah penapis isyarat dengan lebih banyak petunjuk.
Kembangkan strategi gabungan untuk garis pendek panjang, ikuti garis panjang dalam trend, dan gunakan perdagangan yang disasarkan untuk garis pendek untuk menaikkan atau menurunkan kedudukan untuk garis panjang.
Strategi ini menggabungkan pemikiran trend penghakiman EMA ganda dan kebisingan AC yang patut dipelajari. Kelebihan strategi ini adalah kualiti isyarat yang baik, kebolehpercayaan yang tinggi, sesuai untuk mengikuti jenis trend. Jika parameter disesuaikan dengan betul, keuntungan yang besar dapat diperoleh dalam keadaan trend.
/*backtest
start: 2023-01-08 00:00:00
end: 2024-01-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 19/01/2022
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This indicator plots 2/20 exponential moving average. For the Mov
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
//
// Second strategy
// The Accelerator Oscillator has been developed by Bill Williams
// as the development of the Awesome Oscillator. It represents the
// difference between the Awesome Oscillator and the 5-period moving
// average, and as such it shows the speed of change of the Awesome
// Oscillator, which can be useful to find trend reversals before the
// Awesome Oscillator does.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
EMA20(Length) =>
pos = 0.0
xPrice = close
xXA = ta.ema(xPrice, Length)
nHH = math.max(high, high[1])
nLL = math.min(low, low[1])
nXS = nLL > xXA or nHH < xXA ? nLL : nHH
iff_1 = nXS < close[1] ? 1 : nz(pos[1], 0)
pos := nXS > close[1] ? -1 : iff_1
pos
AC(nLengthSlow,nLengthFast) =>
pos = 0.0
xSMA1_hl2 = ta.sma(hl2, nLengthFast)
xSMA2_hl2 = ta.sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
xSMA_hl2 = ta.sma(xSMA1_SMA2, nLengthFast)
nRes = xSMA1_SMA2 - xSMA_hl2
cClr = nRes > nRes[1] ? color.blue : color.red
iff_1 = nRes > 0 ? 1 : nz(pos[1], 0)
pos := nRes < 0 ? -1 : iff_1
pos
strategy(title='Combo 2/20 EMA & Accelerator Oscillator (AC)', shorttitle='Combo', overlay=true)
var I1 = '●═════ 2/20 EMA ═════●'
Length = input.int(14, minval=1, group=I1)
var I2 = '●═════ Accelerator Oscillator ═════●'
nLengthSlow = input(33, title="Length Slow", group=I2)
nLengthFast = input(6, title="Length Fast", group=I2)
var misc = '●═════ MISC ═════●'
reverse = input.bool(false, title='Trade reverse', group=misc)
var timePeriodHeader = '●═════ Time Start ═════●'
d = input.int(1, title='From Day', minval=1, maxval=31, group=timePeriodHeader)
m = input.int(1, title='From Month', minval=1, maxval=12, group=timePeriodHeader)
y = input.int(2005, title='From Year', minval=0, group=timePeriodHeader)
StartTrade = time > timestamp(y, m, d, 00, 00) ? true : false
posEMA20 = EMA20(Length)
prePosAC = AC(nLengthSlow,nLengthFast)
iff_1 = posEMA20 == -1 and prePosAC == -1 and StartTrade ? -1 : 0
pos = posEMA20 == 1 and prePosAC == 1 and StartTrade ? 1 : iff_1
iff_2 = reverse and pos == -1 ? 1 : pos
possig = reverse and pos == 1 ? -1 : iff_2
if possig == 1
strategy.entry('Long', strategy.long)
if possig == -1
strategy.entry('Short', strategy.short)
if possig == 0
strategy.close_all()
barcolor(possig == -1 ? #b50404 : possig == 1 ? #079605 : #0536b3)