Sumber daya yang dimuat... Pemuatan...

Strategi Crossover Rata-rata Bergerak Ganda dengan Target Keuntungan Harian

Penulis:ChaoZhang, Tanggal: 2024-09-26 14:50:35
Tag:MASMAKrossover

img

Gambaran umum

Strategi ini adalah sistem perdagangan intraday berdasarkan crossover rata-rata bergerak ganda, menggabungkan stop-loss tetap dan trailing stop, dengan target keuntungan harian.

Prinsip Strategi

  1. Perhitungan Rata-rata Bergerak: Strategi ini menggunakan dua Rata-rata Bergerak Sederhana (SMA), SMA cepat dan lambat berdasarkan periode yang ditentukan pengguna.

  2. Generasi sinyal perdagangan:

    • Sinyal Beli: Diaktifkan ketika SMA cepat melintasi SMA lambat.
    • Sinyal Jual: Diaktifkan ketika SMA cepat melintasi SMA lambat.
  3. Manajemen Risiko:

    • Stop-Loss tetap: Menetapkan jumlah moneter tetap untuk stop-loss pada setiap perdagangan.
    • Trailing Stop: Menggunakan trailing stop yang dapat disesuaikan untuk melindungi keuntungan.
  4. Target Keuntungan Harian:

    • Menetapkan target keuntungan harian, secara otomatis menutup posisi dan menghentikan perdagangan ketika tercapai.
    • Dapat dinonaktifkan dengan mengatur target menjadi 0.
  5. Visualisasi:

    • Grafik rata-rata bergerak cepat dan lambat pada grafik.
    • Menggunakan penanda untuk menampilkan sinyal beli dan jual.

Keuntungan Strategi

  1. Trend Following: Menggunakan crossover rata-rata bergerak untuk menangkap tren pasar, membantu masuk di awal tren.

  2. Pengendalian risiko: Mengontrol risiko secara efektif untuk setiap perdagangan dan secara keseluruhan melalui stop-loss tetap dan trailing stop.

  3. Manajemen Keuntungan: Target keuntungan harian membantu mengendalikan eksposur risiko dan melindungi keuntungan yang direalisasikan.

  4. Fleksibilitas: Memungkinkan pengguna untuk menyesuaikan parameter utama seperti periode rata-rata bergerak, jumlah stop-loss, dan target keuntungan untuk beradaptasi dengan kondisi pasar yang berbeda.

  5. Bantuan Visual: Secara intuitif menampilkan moving average dan sinyal perdagangan pada grafik, memfasilitasi analisis dan backtesting.

Risiko Strategi

  1. Perdagangan Sering: Dapat menghasilkan sinyal palsu yang berlebihan di pasar yang bergolak, menyebabkan perdagangan sering dan kenaikan biaya.

  2. Sifat keterlambatan: Rata-rata bergerak secara inheren merupakan indikator keterlambatan, berpotensi bereaksi terlalu lambat di pasar yang sangat fluktuatif.

  3. Risiko Stop Loss Fisik: Stop loss moneter tetap mungkin tidak cukup fleksibel di pasar dengan volatilitas yang bervariasi.

  4. Batas target harian: Target harian wajib dapat menyebabkan kehilangan peluang pasar yang signifikan.

  5. Sensitivitas Parameter: Kinerja strategi mungkin sangat sensitif terhadap pengaturan parameter, yang membutuhkan pengoptimalan yang sering.

Arahan Optimasi

  1. Penyesuaian Parameter Dinamis: Pertimbangkan untuk menyesuaikan periode rata-rata bergerak dan tingkat stop-loss secara otomatis berdasarkan volatilitas pasar.

  2. Filter tambahan: Memperkenalkan indikator teknis atau sentimen pasar tambahan untuk mengurangi sinyal palsu.

  3. Penyaringan waktu: Terapkan penyaringan waktu untuk menghindari periode yang sangat volatile seperti pembukaan dan penutupan pasar.

  4. Manajemen Posisi: Melaksanakan ukuran posisi dinamis, menyesuaikan ukuran perdagangan berdasarkan kondisi pasar dan kinerja akun.

  5. Multi-Timeframe Analysis: Menggabungkan analisis tren jangka panjang untuk meningkatkan akurasi waktu masuk.

  6. Optimasi Pembelajaran Mesin: Menggunakan algoritma pembelajaran mesin untuk mengoptimalkan proses pemilihan parameter dan generasi sinyal.

Ringkasan

Dual Moving Average Crossover Strategy with Daily Profit Target adalah sistem perdagangan yang menggabungkan analisis teknis klasik dengan teknik manajemen risiko modern. Strategi ini menangkap tren pasar melalui crossover rata-rata bergerak yang sederhana namun efektif, dilengkapi dengan target stop-loss dan keuntungan untuk manajemen risiko. Kekuatan strategi ini terletak pada kesederhanaan dan fleksibilitasnya, tetapi juga menghadapi tantangan yang melekat pada sistem rata-rata bergerak, seperti sifat tertinggal dan sensitivitas parameter.


/*backtest
start: 2024-08-26 00:00:00
end: 2024-09-24 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("NQ Futures $200/day Strategy", overlay=true)

// Input Parameters
fastLength = input.int(9, title="Fast MA Length")
slowLength = input.int(21, title="Slow MA Length")
dailyTarget = input.float(200, title="Daily Profit Target (Set to 0 to disable)", step=0.01)  
stopLossAmount = input.float(100, title="Stop Loss Amount", step=0.01)
trailOffset = input.float(20, title="Trailing Stop Offset", step=0.01)

// Moving Averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)

// Crossover Conditions for Buy and Sell
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)

// Entry conditions
if (longCondition)
    strategy.entry("Buy", strategy.long)

if (shortCondition)
    strategy.entry("Sell", strategy.short)

// Set Stop Loss and Trailing Stop
if (strategy.opentrades > 0)
    strategy.exit("Exit Long", from_entry="Buy", stop=strategy.position_avg_price - stopLossAmount, trail_offset=trailOffset)
    strategy.exit("Exit Short", from_entry="Sell", stop=strategy.position_avg_price + stopLossAmount, trail_offset=trailOffset)

// Conditional Daily Profit Target (disabled if dailyTarget is 0)
if (dailyTarget > 0 and strategy.netprofit >= dailyTarget)
    strategy.close_all(comment="Daily Target Reached")

// Plotting the moving averages on the main chart
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")

// Plot "Long" and "Short" signals on the main chart
plotshape(series=longCondition, title="Long Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Long")
plotshape(series=shortCondition, title="Short Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Short")

// Markers for entry on the price chart
plotshape(series=longCondition, title="Buy Marker", location=location.belowbar, color=color.green, style=shape.triangledown, size=size.small)
plotshape(series=shortCondition, title="Sell Marker", location=location.abovebar, color=color.red, style=shape.triangleup, size=size.small)


Berkaitan

Lebih banyak