Strategi perdagangan kuantitatif berdasarkan persilangan rata-rata pergerakan


Tanggal Pembuatan: 2024-01-23 11:05:50 Akhirnya memodifikasi: 2024-01-23 11:05:50
menyalin: 0 Jumlah klik: 505
1
fokus pada
1617
Pengikut

Strategi perdagangan kuantitatif berdasarkan persilangan rata-rata pergerakan

Ringkasan

Strategi ini menggunakan prinsip garpu mati garpu dari rata-rata bergerak sederhana (SMA). Strategi ini menggunakan garpu emas dari garis 3 dan garis 5 sebagai sinyal masuk, untuk menghentikan atau menghentikan sebagai sinyal keluar.

Prinsip Strategi

Strategi ini didasarkan pada dua SMA, yaitu 3 dan 5. Dalam hal ini, 3 mewakili tren jangka pendek, dan 5 mewakili tren jangka menengah yang lebih panjang. Ketika jangka pendek naik dengan cepat, yaitu ketika 3 melintasi garis 5, berarti saat ini berada di posisi naik, saat ini masuk lebih banyak; Sebaliknya, ketika jangka pendek turun dengan cepat, yaitu ketika 3 melintasi garis 5, berarti saat ini berada di posisi turun, saat ini masuk kosong. Dengan demikian, penilaian silang dari dua siklus harga jangka pendek dan menengah dapat meningkatkan tingkat keberhasilan masuk.

Analisis Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  1. Strategi logisnya sederhana dan jelas, mudah dipahami dan diterapkan.
  2. Strategi crossover rata-rata lebih akurat dalam menilai tren besar di pasar, dan memiliki probabilitas masuk yang tinggi.
  3. Pilih rata-rata dari dua periode yang berbeda untuk lebih memahami perubahan pasar.
  4. Mekanisme Stop Loss telah diimplementasikan untuk mengontrol kerugian secara efektif.

Analisis risiko

Strategi ini juga memiliki beberapa risiko:

  1. Karena menggunakan siklus rata-rata yang lebih pendek, mudah dipengaruhi oleh fluktuasi jangka pendek di pasar, yang dapat meningkatkan probabilitas stop loss.
  2. Strategi ini lebih mekanis dan tidak dapat disesuaikan dengan situasi pasar tertentu.
  3. Tidak mempertimbangkan tren dalam siklus besar, strategi ini dapat menyebabkan kerugian besar dalam penurunan pasar jangka panjang.

Untuk mengurangi risiko, Anda dapat mempertimbangkan untuk mengoptimalkan pilihan rata-rata entry, atau menambahkan penilaian tambahan untuk rata-rata periode panjang. Anda juga dapat menyesuaikan titik stop loss agar lebih sesuai dengan situasi pasar yang sebenarnya.

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Menambahkan garis rata-rata untuk lebih banyak periode yang berbeda, membentuk multi-tingkat penyaringan, meningkatkan stabilitas strategi.
  2. Menambahkan penilaian indikator teknis lainnya, seperti MACD, indikator kekuatan, dll, untuk membantu masuk.
  3. Selain itu, ada juga beberapa hal yang perlu diperhatikan, yaitu:
  4. Mengoptimalkan titik stop loss agar lebih sesuai dengan fluktuasi pasar yang sebenarnya.
  5. Uji ulang siklus yang lebih lama untuk menilai stabilitas parameter.

Meringkaskan

Strategi ini dibangun berdasarkan prinsip persilangan linier, menggunakan logika strategi masuk ke dalam, menghentikan dan menghentikan kerugian, mudah diterapkan, dan kinerja pengukuran juga relatif stabil. Dengan menambahkan lebih banyak indikator teknis tambahan, parameter optimasi, dan memperluas jangkauan pengukuran, langkah-langkah dapat meningkatkan stabilitas strategi dan tingkat keuntungan. Secara keseluruhan, strategi linier memiliki adaptasi pasar yang baik, layak untuk penelitian dan aplikasi lebih lanjut.

Kode Sumber Strategi
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 5h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Revolut v1.0", overlay=true)

// === GENERAL INPUTS ===
ATR = atr(3)
ema3 = ema(close, 3)
ema5 = ema(close, 5)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2017)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true// create function "within window of time"


// === PLOTTING ===
plot(ema3, title="Ema 3", color = white, linewidth = 2, transp=0)
plot(ema5, title="Ema 5", color = aqua, linewidth = 2, transp=0)



// === ENTRY POSITION LOGIC ===
entryCondition = crossover(ema(close, 3), ema(close, 5))
if (entryCondition)
    strategy.entry("ENTRY", strategy.long, when=window())
    

// === EXIT POSTION LOGIC ===
//strategy.exit("Take Profit", "ENTRY", profit=6, loss=5, when=window())
strategy.exit("Take Profi Or STOP", "ENTRY", profit = 6, loss = 5, when=window())
  

// #####################################
// We can start to incorperate this into the script later
// We can program a emergency exit price
//strategy.close_all()

// You can use this if you want another exit
//strategy.exit("2nd Exit", "ENTRY", profit=1500, stop=500, when=window())