Tren SMA Dual Mengikuti Strategi

Penulis:ChaoZhang, Tanggal: 2023-09-20 11:35:30
Tag:

Gambaran umum

Strategi ini hanya menggunakan dua garis SMA, dengan SMA lambat untuk arah tren dan SMA cepat untuk sinyal masuk. Dikombinasikan dengan penentuan warna candlestick, strategi ini menghasilkan sinyal panjang dan pendek. Strategi ini mengikuti tren jangka menengah, cocok untuk konsolidasi pada puncak atau terendah.

Logika Strategi

Dua garis SMA dihitung, satu cepat dan satu lambat, bersama dengan garis tengah saluran harga. Garis cepat memiliki periode 5, sedangkan garis lambat memiliki periode 20. Di atas garis tengah saluran harga dianggap sebagai tren naik, di mana peluang untuk pergi panjang pada garis cepat melintasi di atas garis lambat dicari. Di bawah garis tengah adalah tren menurun, di mana peluang untuk pergi pendek pada garis cepat melintasi di bawah garis lambat dicari.

Selain itu, warna tubuh lilin dimasukkan. Dalam tren naik, setidaknya 2 lilin merah berturut-turut diperlukan setelah melihat bagian bawah, sebelum pergi panjang ketika garis cepat melintasi di atas garis lambat. Dalam tren menurun, setidaknya 2 lilin hijau berturut-turut diperlukan setelah melihat bagian atas, sebelum pergi pendek ketika garis cepat melintasi di bawah garis lambat.

Analisis Keuntungan

Garis SMA ganda dan saluran harga membantu menentukan arah tren, menghindari pecah palsu. filter warna candlestick lebih lanjut menghilangkan sinyal palsu. sinyal panjang dan pendek keduanya ada untuk lindung nilai. strategi secara efektif melacak tren jangka menengah.

Parameter yang dapat disesuaikan memungkinkan untuk mengkonfigurasi kondisi panjang/pendek secara fleksibel.

Analisis Risiko

Kepercayaan berlebihan pada garis SMA dapat menghasilkan sinyal palsu yang berlebihan selama rentang. Faktor harga dipertimbangkan sementara volume diabaikan.

Pengaturan periode SMA atau menggabungkan indikator teknis lainnya dapat menyaring sinyal. indikator volume juga dapat memberikan wawasan tambahan. ukuran posisi juga dapat dioptimalkan berdasarkan kondisi pasar.

Arahan Optimasi

  1. Uji kombinasi SMA cepat dan lambat yang berbeda untuk menemukan parameter optimal.

  2. Tambahkan volume dan indikator lain untuk validasi sinyal.

  3. Masukkan indikator teknis lainnya untuk membentuk strategi keseluruhan.

  4. Atur ukuran posisi dinamis untuk mengoptimalkan manajemen modal.

  5. Menerapkan pembelajaran mesin untuk memprediksi tren harga dan titik perubahan.

  6. Mengoptimalkan strategi stop loss untuk membatasi kerugian.

Ringkasan

Sistem SMA ganda untuk penentuan tren secara logis jelas dan umum digunakan. Tetapi terlalu mengandalkan rata-rata bergerak saja cenderung menghasilkan sinyal palsu, yang membutuhkan indikator lain untuk peningkatan. Dengan validasi kualitatif dan kuantitatif yang lebih banyak, strategi akan menjadi lebih kuat. Secara keseluruhan, ini memberikan template tren berikut yang sederhana dan dapat diandalkan.


/*backtest
start: 2023-08-20 00:00:00
end: 2023-09-19 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Noro's Trend SMA Strategy v1.4", shorttitle = "Trend SMA str 1.4", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

needlong = input(true, "long")
needshort = input(true, "short")
usefastsma = input(true, "Use fast SMA")
fastlen = input(5, defval = 5, minval = 1, maxval = 50, title = "fast SMA Period")
slowlen = input(20, defval = 20, minval = 2, maxval = 200, title = "slow SMA Period")
bars = input(2, defval = 2, minval = 0, maxval = 3, title = "Bars Q")

fastsma = ema(close, fastlen)
slowsma = ema(close, slowlen)

//PriceChannel
src = ohlc4
lasthigh = highest(src, slowlen)
lastlow = lowest(src, slowlen)
center = (lasthigh + lastlow) / 2

trend = low > center ? 1 : high < center ? -1 : trend[1]

bar = close > open ? 1 : close < open ? -1 : 0
redbars = bars == 0 ? 1 : bars == 1 and bar == -1 ? 1 : bars == 2 and bar == -1 and bar[1] == -1 ? 1 : bars == 3 and bar == -1 and bar[1] == -1 and bar[2] == -1 ? 1 : 0
greenbars = bars == 0 ? 1 : bars == 1 and bar == 1 ? 1 : bars == 2 and bar == 1 and bar[1] == 1 ? 1 : bars == 3 and bar == 1 and bar[1] == 1 and bar[2] == 1 ? 1 : 0

up = trend == 1 and (low < fastsma or usefastsma == false) and redbars == 1 ? 1 : 0
dn = trend == -1 and (high > fastsma or usefastsma == false) and greenbars == 1 ? 1 : 0

colorfastsma = usefastsma == true ? red : na
plot(fastsma, color = colorfastsma, title = "Fast SMA")
plot(center, color = blue, title = "Price Channel")

longCondition = up == 1
if (longCondition)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)

Lebih banyak