Strategi persilangan rata-rata bergerak


Tanggal Pembuatan: 2023-11-23 13:38:02 Akhirnya memodifikasi: 2023-11-23 13:38:02
menyalin: 0 Jumlah klik: 631
1
fokus pada
1617
Pengikut

Strategi persilangan rata-rata bergerak

Ringkasan

Strategi persilangan rata-rata adalah strategi perdagangan yang didasarkan pada rata-rata bergerak. Ini menggunakan persilangan rata-rata bergerak cepat dan rata-rata bergerak lambat sebagai sinyal beli dan jual. Ini menghasilkan sinyal beli ketika rata-rata bergerak cepat menerobos rata-rata bergerak lambat dari bawah; ini menghasilkan sinyal jual ketika rata-rata bergerak cepat jatuh dari atas dan melanggar rata-rata bergerak lambat.

Prinsip Strategi

Strategi ini menggunakan fungsi sma untuk menghitung rata-rata bergerak sederhana untuk periode yang ditentukan, sebagai rata-rata cepat dan rata-rata lambat. Strategi ini memiliki periode rata-rata cepat default 18 hari, yang dapat disesuaikan dengan parameter.

Ketika garis rata-rata cepat menembus garis rata-rata lambat dari arah bawah, menggunakan fungsi crossunder untuk mendeteksi sinyal silang, menghasilkan sinyal beli. Ketika garis rata-rata cepat turun dari arah atas dan menembus garis rata-rata lambat, menggunakan fungsi crossover untuk mendeteksi sinyal silang, menghasilkan sinyal jual.

Strategi ini memungkinkan perdagangan otomatis melalui sinyal trek dan sinyal keluar. Masuk multihead dipicu ketika garis rata-rata cepat dari bawah menembus garis rata-rata lambat; Masuk kosong dipicu ketika garis rata-rata cepat dari atas jatuh dari garis rata-rata lambat.

Analisis Keunggulan

  • Menggunakan crossover moving averages memiliki kemampuan pelacakan tren yang kuat, yang dapat secara efektif menangkap tren harga
  • Strategi garis rata lebih sederhana, langsung, logis, dan mudah dipahami
  • Strategi dapat dioptimalkan untuk menyesuaikan dengan kondisi pasar yang berbeda dengan menyesuaikan parameter rata-rata
  • Strategi untuk mengotomatisasi transaksi tanpa intervensi manusia dan mengurangi biaya operasional

Risiko dan Solusi

  • Ketika harga berada di dalam zona getaran, akan terjadi beberapa kali sinyal silang yang tidak efektif, membawa risiko perdagangan yang sering. Hal ini dapat dihindari dengan menambahkan kondisi filter.
  • Perhatian harus diberikan pada optimasi parameter, karena parameter yang berbeda memiliki pengaruh yang lebih besar terhadap kinerja strategi. Anda dapat mengoptimalkan parameter dengan mengevaluasi kembali, atau memperkenalkan garis rata-rata adaptif.
  • Ada beberapa risiko kesalahan sinyal, yang dapat dikombinasikan dengan indikator lain untuk memfilter sinyal atau sebagai kondisi tambahan.
  • Anda dapat memperkenalkan strategi stop loss untuk mengendalikan kerugian tunggal.

Arah optimasi

  • Adaptasi rata-rata atau parameter rata-rata yang dioptimalkan secara dinamis dapat diperkenalkan, sehingga parameter rata-rata dapat disesuaikan secara dinamis dan lebih baik untuk melacak pasar.
  • Anda dapat menambahkan kondisi penyaringan untuk menghindari sinyal yang salah ketika harga bergeser atau tren tidak jelas. Sebagai contoh, Anda dapat memasukkan filter volume transaksi.
  • Ini dapat dikombinasikan dengan indikator lain, seperti Brin Belt sebagai filter atau sebagai kondisi tambahan untuk masuk, untuk meningkatkan kinerja strategi.
  • Strategi stop loss dapat diperkenalkan untuk mengendalikan kerugian tunggal dalam kisaran yang dapat ditanggung.

Meringkaskan

Strategi persimpangan linier secara keseluruhan adalah strategi pelacakan tren yang lebih klasik dan sederhana. Strategi ini terutama menggunakan persimpangan linier sebagai sinyal perdagangan, prinsipnya sederhana dan mudah dipahami, dapat disesuaikan dengan pasar melalui penyesuaian parameter. Tetapi ada juga beberapa kelemahan, seperti rentan terhadap efek getaran dan pergeseran tren, seringnya sinyal, dll.

Kode Sumber Strategi
/*backtest
start: 2023-11-15 00:00:00
end: 2023-11-17 04:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title = "MA Close Strategy", shorttitle = "MA Close",calc_on_order_fills=true,calc_on_every_tick =true, initial_capital=21000,commission_value=.25,overlay = true,default_qty_type = strategy.percent_of_equity, default_qty_value = 100)

MASource   = input(defval = open, title = "MA Source")
MaLength   = input(defval = 18, title = "MA Period", minval = 1)

StartYear = input(2018, "Backtest Start Year")
StartMonth = input(1, "Backtest Start Month")
StartDay = input(1, "Backtest Start Day")
UseStopLoss = input(true,"UseStopLoss")
stopLoss = input(50, title = "Stop loss percentage(0.1%)") 

window() => time >=  timestamp(StartYear, StartMonth, StartDay,00,00) ? true : false

MA = sma(MASource,MaLength)

plot(MA, title = "Fast MA", color = green, linewidth = 2, style = line, transp = 50)

long = crossunder(MA, close)
short = crossover(MA, close)

if (long)
    strategy.entry("LongId", strategy.long, when = long)
    strategy.exit("ExitLong", from_entry = "LongId", when = short)

if (short)
    strategy.entry("ShortId", strategy.short, when = short)
    strategy.exit("ExitShort", from_entry = "ShortId", when = long)

if (UseStopLoss)
    strategy.exit("StopLoss", "LongId", loss = close * stopLoss / 1000 / syminfo.mintick)
    strategy.exit("StopLoss", "ShortId", loss = close * stopLoss / 1000 / syminfo.mintick)