
Strategi perdagangan ini memanfaatkan keunggulan reversal rata-rata dan tiga hari minimum flashing dua indikator teknis, melakukan penggunaan kombinasi, sementara melacak tren tepat waktu menangkap kesempatan reversal, memfilter beberapa sinyal palsu terobosan, dapat secara efektif meningkatkan kemenangan sistem perdagangan.
Strategi ini terdiri dari dua bagian:
Kombinasi dari garis rata-rata 2 hari dan garis rata-rata 20 hari. Ketika garis rata-rata 2 hari dan garis rata-rata 20 hari terjadi perpindahan, sinyal jual beli muncul.
Tiga hari terendah bentuk flashing. Munculnya bentuk ini adalah sinyal pembalikan jangka pendek. Kondisi yang terbentuk adalah: hari tengah terendah, lebih rendah dari hari sebelumnya dan hari berikutnya, dan hari berikutnya harga penutupan lebih tinggi dari hari sebelumnya tertinggi.
Bila garis rata-rata 2 hari dan garis rata-rata 20 hari menunjukkan sinyal berbalik pada saat yang sama, dan arah sinyal yang sama dengan bentuk flash minimum tiga hari, maka dilakukan operasi beli atau jual.
Dalam kode, pertama-tama menghitung 2 hari rata-rata garis dan 20 hari rata-rata garis. Ketika 2 hari rata-rata garis di atas atau di bawah melewati 20 hari rata-rata garis, menghasilkan sinyal beli / jual.
Kemudian, saat terdeteksi tiga hari minimal flashing morphs, set morph directional signal menjadi 1 atau -1. Membaca sinyal morphs hari sebelumnya, dengan kombinasi dengan sinyal garis rata saat ini, menghasilkan sinyal masuk akhir.
Dengan cara ini, dengan memfilter kombinasi garis rata dan bentuk, beberapa sinyal palsu dapat disaring dan membuat strategi perdagangan lebih andal.
Kombinasi dari beberapa indikator teknis dapat berperan sebagai komplemen dan verifikasi, meningkatkan keandalan sinyal.
Garis rata berbalik dapat menangkap titik perputaran tren tepat waktu, memanfaatkan peluang untuk berbalik. Tiga hari minimum flash dapat lebih mengkonfirmasi pembentukan perputaran.
Garis rata-rata 20 hari melacak tren jangka menengah dan panjang, dan garis rata-rata 2 hari digunakan untuk menangkap titik masuk setelah penyesuaian jangka pendek. Kombinasi dari berbagai rentang waktu dapat menangkap tren secara menyeluruh.
Strategi ini tidak sensitif terhadap parameter dan mudah diterapkan dan dioptimalkan.
Bentuk terbalik mudah terbentuk kesalahan penilaian, perlu akumulasi pengalaman untuk menilai kehandalannya.
Sinyal pembalikan mungkin terjadi lag, perlu untuk mengamati karakteristik bentuk, penyesuaian yang tepat memegang.
Optimasi tes diperlukan untuk varietas perdagangan, dan pengaturan parameter varietas tertentu mungkin perlu disesuaikan.
Pengendalian penarikan membutuhkan mekanisme stop loss untuk menghindari kehilangan titik balik yang penting.
Uji kombinasi garis rata yang berbeda untuk memilih parameter garis rata yang terbaik untuk varietas.
Masukkan indikator tambahan lainnya, seperti volume transaksi, pita Brin, dan sebagainya, untuk melakukan verifikasi multi-indikator.
Modul Stop Loss ditambahkan untuk mengontrol penarikan dan risiko.
Untuk mengoptimalkan waktu masuk, hindari masalah terlambat atau terlambat.
Optimalisasi parameter untuk varietas tertentu, meningkatkan adaptasi.
Strategi ini memanfaatkan sepenuhnya keuntungan dari reversal garis rata dan bentuk jangka pendek, untuk mencapai kombinasi yang efektif dari keduanya, yang dapat meningkatkan stabilitas dan tingkat kemenangan sistem perdagangan. Namun, perlu memperhatikan kontrol risiko, dan melakukan pengujian dan pengoptimalan parameter untuk menyesuaikan dengan karakteristik varietas yang berbeda. Secara keseluruhan, struktur strategi ini sederhana dan jelas, mudah diterapkan, dan merupakan strategi perdagangan reversal tren yang sangat praktis.
/*backtest
start: 2022-10-19 00:00:00
end: 2023-10-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 25/12/2021
// 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
// This startegy based on 3-day pattern reversal described in "Are Three-Bar
// Patterns Reliable For Stocks" article by Thomas Bulkowski, presented in
// January,2000 issue of Stocks&Commodities magazine.
// That pattern conforms to the following rules:
// - It uses daily prices, not intraday or weekly prices;
// - The middle day of the three-day pattern has the lowest low of the three days, with no ties allowed;
// - The last day must have a close above the prior day's high, with no ties allowed;
// - Each day must have a nonzero trading range.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
EMA20(Length ) =>
pos = 0.0
xPrice = close
xXA = ema(xPrice, Length)
nHH = max(high, high[1])
nLL = min(low, low[1])
nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH)
pos := iff(nXS > close[1] , -1, iff(nXS < close[1] , 1, nz(pos[1], 0)))
pos
BarR()=>
pos = 0.0
pos := iff(open[2] > close[2] and high[1] < high[2] and low[1] < low[2] and low[0] > low[1] and high[0] > high[1], 1,
iff(open[2] < close[2] and high[1] > high[2] and low[1] > low[2] and high[0] < high[1] and low[0] < low[1], -1, nz(pos[1], 0)))
pos
strategy(title="Combo 2/20 EMA & 3 Day Pattern", shorttitle="Combo", overlay = true)
var I1 = "●═════ 2/20 EMA ═════●"
Length = input(14, minval=1, group = I1)
//var I2 = "●═════ 3-Bar-Reversal-Pattern ═════●"
var misc = "●═════ MISC ═════●"
reverse = input(false, title="Trade reverse", group = misc)
var timePeriodHeader = "●═════ Time Start ═════●"
d = input(1, title="From Day", minval=1, maxval=31, group=timePeriodHeader)
m = input(1, title="From Month", minval=1, maxval=12, group=timePeriodHeader)
y = input(2005, title="From Year", minval=0, group=timePeriodHeader)
StartTrade = true
prePos3Bar = BarR()
posEMA20 = EMA20(Length)
pos3BarR = security(syminfo.tickerid, "D", prePos3Bar[1], barmerge.gaps_off, barmerge.lookahead_on)
pos = iff(posEMA20 == 1 and pos3BarR == 1 and StartTrade , 1,
iff(posEMA20 == -1 and pos3BarR == -1 and StartTrade, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
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 )