Strategi pengesanan trend garis rata-rata bergerak dua kali dengan mengira purata bergerak indeks ganda harga, membentuk garis cepat dan lambat, menilai trend harga berdasarkan bentuk silang dua garis, untuk mencapai perdagangan trend. Strategi ini adalah strategi perdagangan kuantitatif berdasarkan trend.
Strategi ini mula-mula mengira purata bergerak indeks ganda harga, termasuk garis pantas dan garis perlahan. Parameter garis pantas adalah 4 kitaran, parameter garis perlahan adalah 8 kitaran. Apabila dua garis melintasi, ia menghasilkan isyarat beli dan jual. Apabila garis pantas melintasi garis perlahan dari bawah, ia menghasilkan isyarat beli; apabila garis pantas melintasi garis perlahan dari atas, ia menghasilkan isyarat jual.
Strategi ini pertama-tama boleh berdagang mengikut trend harga, mengelakkan Kos Transaksi. Kedua, dua garis rata-rata bergerak menapis sebahagian daripada bunyi harga, dapat memahami trend harga dengan lancar. Kedua, parameter strategi ini dioptimumkan dengan fleksibel, kitaran garis rata-rata bergerak dan parameter MACD dapat disesuaikan, sesuai dengan pelbagai jenis dan parameter.
Strategi ini bergantung pada pengoptimuman parameter, jika parameter tidak ditetapkan dengan betul, akan menghasilkan banyak isyarat yang salah. Selain itu, garis purata bergerak berganda mempunyai keterlambatan, mungkin terlepas titik peralihan harga. Selain itu, perdagangan trend mudah membentuk corak mengejar kenaikan dan membunuh penurunan, terdapat risiko tertentu.
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Mengoptimumkan parameter kitaran untuk garis purata bergerak berganda untuk mencari kombinasi parameter yang optimum
Menambah isyarat penapis indikator lain, seperti RSI, KD dan sebagainya, untuk meningkatkan kualiti isyarat
Meningkatkan strategi hentian kerugian, hentikan kerugian tepat pada masanya apabila trend berbalik
Menyesuaikan saiz kedudukan mengikut keadaan pasaran yang dinamik, mengawal risiko
Pengoptimuman untuk parameter varieti dagangan yang berbeza
Menggabungkan strategi canggih seperti pembelajaran mesin untuk meningkatkan kesan strategi
Strategi ini secara keseluruhannya adalah strategi pengesanan trend mudah berdasarkan garis purata bergerak ganda. Strategi ini jelas, mudah dilaksanakan, parameternya disesuaikan dengan fleksibiliti, dan sesuai sebagai strategi permulaan untuk perdagangan kuantitatif. Tetapi strategi ini mempunyai masalah seperti mengejar dan jatuh, lag isyarat, dan lain-lain, dan perlu dioptimumkan lebih lanjut untuk mengawal risiko dan meningkatkan kestabilan. Secara keseluruhannya, strategi ini memberikan peluang yang baik untuk pemula untuk belajar perdagangan algoritma, dan juga asas untuk strategi lanjutan.
/*backtest
start: 2023-10-14 00:00:00
end: 2023-11-13 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 12/11/2017
// The SMI Ergodic Indicator is the same as the True Strength Index (TSI) developed by
// William Blau, except the SMI includes a signal line. The SMI uses double moving averages
// of price minus previous price over 2 time frames. The signal line, which is an EMA of the
// SMI, is plotted to help trigger trading signals. Adjustable guides are also given to fine
// tune these signals. The user may change the input (close), method (EMA), period lengths
// and guide values.
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
//
// WARNING:
// - For purpose educate only
////////////////////////////////////////////////////////////
strategy(title="SMI Ergodic Oscillator")
fastPeriod = input(4, minval=1)
slowPeriod = input(8, minval=1)
SmthLen = input(3, minval=1)
TopBand = input(0.5, step=0.1)
LowBand = input(-0.5, step=0.1)
reverse = input(false, title="Trade reverse")
// hline(0, color=gray, linestyle=dashed)
// hline(TopBand, color=red, linestyle=line)
// hline(LowBand, color=green, linestyle=line)
xPrice = close
xPrice1 = xPrice - xPrice[1]
xPrice2 = abs(xPrice - xPrice[1])
xSMA_R = ema(ema(xPrice1,fastPeriod),slowPeriod)
xSMA_aR = ema(ema(xPrice2, fastPeriod),slowPeriod)
xSMI = xSMA_R / xSMA_aR
xEMA_SMI = ema(xSMI, SmthLen)
pos = iff(xEMA_SMI < xSMI, -1,
iff(xEMA_SMI > xSMI, 1, nz(pos[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)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(xSMI, color=green, title="Ergotic SMI")
plot(xEMA_SMI, color=red, title="SigLin")