
Strategi ini menggunakan garpu mati garpu emas dengan dua garis EMA untuk menentukan masa masuk dan keluar. Khususnya, apabila garpu emas menghasilkan isyarat garpu emas apabila garpu EMA cepat menembusi garpu EMA perlahan dari arah bawah, lakukan lebih banyak; apabila garpu EMA cepat jatuh dari arah atas dan menghasilkan isyarat garpu mati apabila garpu EMA perlahan dari arah atas, lakukan kosong.
Kod teras strategi ini ialah:
fast = input(25, title="Fast")
slow = input(75, title="Slow")
matype1=ema(source, fast)
matype2=ema(source, slow)
longCondition = crossover(matype1, matype2)
shortCondition = crossunder(matype1, matype2)
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
Strategi ini mula-mula menetapkan dua garis rata-rata EMA secara perlahan-lahan, di mana tempoh garis EMA cepat adalah 25, tempoh garis EMA perlahan adalah 75. Kemudian menghitung nilai kedua garis EMA. Apabila garis EMA cepat menembusi garis EMA perlahan dari arah bawah, keadaan longCondition berlaku; apabila EMA cepat jatuh dari arah atas ke EMA perlahan, keadaan shortCondition berlaku. Apabila syarat yang sesuai dipenuhi, lakukan lebih atau kosong.
Strategi ini memanfaatkan ciri-ciri rata EMA yang dapat menyaring bunyi pasaran dengan berkesan, dan dapat menangkap perubahan trend dengan cepat. Persaingan antara dua garis EMA adalah isyarat perdagangan yang kuat yang dapat mengawal risiko perdagangan dengan berkesan.
Strategi ini mempunyai beberapa kelebihan:
Idea operasi mudah, intuitif dan mudah difahami.
Menggunakan EMA untuk melonggarkan turun naik pasaran untuk menapis isyarat palsu.
Di samping itu, jika anda mempunyai mata wang yang terhad, anda boleh menggunakan mata wang yang terhad untuk membuat keputusan.
Fleksibiliti dalam menyesuaikan kitaran EMA untuk persekitaran pasaran yang berbeza.
Mudah digunakan dalam kombinasi dengan petunjuk teknikal lain.
Anda boleh mendapatkan kesan strategi yang lebih baik dengan mengoptimumkan parameter EMA.
Strategi ini mempunyai beberapa risiko:
Dalam keadaan yang bergolak, EMA sering bersilang dan menghasilkan banyak isyarat perdagangan yang tidak sah.
EMA terbelakang dan mungkin terlepas peluang untuk menyingkat talian.
Tidak boleh menentukan titik perubahan trend hanya dengan EMA crossover, dan terdapat had keuntungan tertentu.
Tempoh EMA tetap tidak dapat menyesuaikan diri dengan perubahan pasaran.
Ia memerlukan sokongan kewangan yang lebih kuat, jika tidak, ia berisiko tinggi.
Ia memerlukan sekatan kerugian yang ketat, jika tidak, kerugian boleh menjadi besar.
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Mengoptimumkan parameter kitaran EMA untuk menyesuaikan diri dengan keadaan pasaran yang berbeza.
Menambah penapis untuk penunjuk lain, seperti MACD, Brinband, dan lain-lain untuk meningkatkan kualiti isyarat.
Tambah indikator trend seperti ATR stop loss, ADX dan lain-lain untuk mengurangkan perdagangan yang tidak sah.
Ia juga boleh digunakan untuk menilai arah trend, dengan menggunakan lebih banyak analisis kitaran masa.
Menggunakan kaedah pembelajaran mesin untuk mengoptimumkan kitaran EMA secara dinamik
Mengoptimumkan pengurusan kedudukan untuk mengawal risiko.
Mengoptimumkan strategi hentikan kerugian dan mengurangkan kerugian tunggal.
Strategi ini menggunakan persilangan emas dan mati dalam dua garis rata EMA sebagai isyarat perdagangan, membentuk strategi mengikuti trend yang lebih klasik. Strategi ini mudah digunakan, mudah digabungkan dengan indikator teknikal lain, dan sesuai untuk pelabur yang tidak memerlukan penghakiman trend. Tetapi ada juga margin dan risiko tertentu, yang perlu dioptimumkan dengan betul untuk menyesuaikan diri dengan keadaan pasaran yang berbeza.
/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 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/
// Double EMA CROSS By © EmreE (Emre Ertürk) Also thx for KivancOzbilgic color based bars
//@version=4
strategy(title="Double EMA CROSS", shorttitle="DEC", overlay=true)
matype = input("ema")
hidema = input(false)
sourcetype = input(close, title="Source Type")
source=close
// STEP 1:
// Configure backtest start date with inputs
startDate = input(title="Start Date", type=input.integer,
defval=1, minval=1, maxval=231)
startMonth = input(title="Start Month", type=input.integer,
defval=1, minval=1, maxval=12)
startYear = input(title="Start Year", type=input.integer,
defval=2020, minval=1800, maxval=2100)
// STEP 2:
// See if this bar's time happened on/after start date
afterStartDate = (time >= timestamp(syminfo.timezone,
startYear, startMonth, startDate, 0, 0))
fast = input(25, title="Fast")
slow = input(75, title="Slow")
matype1=ema(source, fast)
matype2=ema(source, slow)
signalcolor = source > matype2 ? color.blue : color.red
signal = cross(fast, slow)
hizliema=plot(hidema ? na : matype1, color=color.green, linewidth=2,transp=0, title="Fast EMA")
yavasema=plot(hidema ? na : matype2, color=color.red, linewidth=2,transp=0, title="Slow EMA")
//kesisme=plot(signal, style=cross, color=signalcolor, linewidth=5, title="Kesişme")
longCondition = crossover(matype1, matype2)
if (afterStartDate and longCondition)
strategy.entry("Long", strategy.long)
shortCondition = crossunder(matype1, matype2)
if (afterStartDate and shortCondition)
strategy.entry("Short", strategy.short)
//--------------------------------------------------------
//volume based color bars
length=input(21, "length", minval=1)
avrg=sma(volume,length)
vold1 = volume > avrg*1.5 and close<open
vold2 = volume >= avrg*0.5 and volume<=avrg*1.5 and close<open
vold3 = volume < avrg *0.5 and close<open
volu1 = volume > avrg*1.5 and close>open
volu2 = volume >= avrg*0.5 and volume<=avrg*1.5 and close>open
volu3 = volume< avrg*0.5 and close>open
cold1=#800000
cold2=#FF0000
cold3=color.orange
colu1=#006400
colu2=color.lime
colu3=#7FFFD4
ac = vold1 ? cold1 : vold2 ? cold2 : vold3 ? cold3 : volu1 ? colu1 : volu2 ? colu2 : volu3 ? colu3 : na
barcolor(ac)