Strategi Perdagangan Crossover Sinyal Rata-rata Pergerakan Harian MacD200


Tanggal Pembuatan: 2024-01-03 11:50:56 Akhirnya memodifikasi: 2024-01-03 11:50:56
menyalin: 0 Jumlah klik: 930
1
fokus pada
1621
Pengikut

Strategi Perdagangan Crossover Sinyal Rata-rata Pergerakan Harian MacD200

Ringkasan

Strategi perdagangan ini adalah strategi kuantitatif untuk melakukan operasi silang sinyal berdasarkan MACD 200-day moving average. Ini menggabungkan fungsi ganda MACD untuk menilai sinyal jual beli pasar dan 200-day moving average untuk menilai tren pasar, yang bertujuan untuk menemukan waktu masuk dan keluar pasar yang lebih akurat.

Prinsip Strategi

Strategi ini memiliki dua inti:

  1. MACD menghasilkan sinyal beli dan jual ketika garis cepat melewati garis lambat dari bawah; dan sinyal jual ketika garis cepat melewati garis lambat dari atas.

  2. 200 hari bergerak rata-rata garis menilai pergerakan pasar secara keseluruhan. Harga di atas 200 hari rata-rata garis adalah pasar multihead, di bawahnya adalah pasar kosong. Hanya ketika pasar multihead menghasilkan sinyal beli yang dibeli, ketika pasar kosong menghasilkan sinyal jual.

Berdasarkan dua poin ini, aturan transaksi spesifik dari strategi ini adalah:

Ketika MACD garis cepat dari arah bawah menembus MACD garis lambat, pilar adalah negatif dan harga di atas rata-rata bergerak 200 hari, melakukan operasi beli; Ketika MACD garis cepat dari arah atas jatuh di bawah MACD garis lambat, pilar adalah positif dan harga di bawah rata-rata bergerak 200 hari, melakukan operasi jual.

Keunggulan Strategis

  1. Pertimbangan ganda meningkatkan stabilitas dan tingkat keberhasilan strategi. MACD menilai sinyal jual beli. 200 hari rata-rata menilai tren pasar. Pertimbangan ganda dapat menyaring beberapa sinyal perdagangan yang lebih besar ketidakpastiannya.

  2. Strategi ini dapat menghasilkan keuntungan yang lebih tinggi di pasar yang sedang tren. Ini dapat menangkap peluang kenaikan harga dengan cepat, terutama di pasar banteng.

  3. Indikator MACD juga lebih sensitif untuk keluar dari fase pengumpulan getaran, strategi ini dapat dengan cepat menangkap arah tren baru ketika harga memasuki situasi tren setelah pengumpulan getaran yang lama berakhir.

Analisis risiko

  1. Kebijakan ini sangat sensitif terhadap pengaturan parameter. Jika parameter indikator MACD tidak diatur dengan benar, mungkin terjadi kesalahan input dan output.

  2. Di dekat titik perputaran tren, sinyal jual beli MACD akan lebih banyak kesalahan. Pada saat ini, keuntungan dari strategi ini mungkin akan mengalami penurunan yang lebih besar.

  3. Strategi ini tidak dapat menentukan arah tren yang jelas ketika harga berada dalam kondisi penyusunan horizontal dalam jangka panjang, yang akan menyebabkan volatilitas keuntungan dan kerugian meningkat dan waktu penarikan diri diperpanjang.

Arah optimasi strategi

  1. Kombinasi parameter yang berbeda dapat diuji untuk menemukan parameter MACD yang menghasilkan sinyal yang lebih akurat.

  2. Anda dapat mempertimbangkan untuk menambahkan indikator teknis lainnya untuk konfirmasi, seperti RSI, KD, dan lain-lain, membentuk resonansi berbagai indikator untuk meningkatkan keandalan strategi.

  3. Anda dapat mengatur titik stop loss untuk mengontrol penarikan maksimum. Anda dapat menghentikan stop loss Anda dengan cepat ketika harga mengalami penembusan yang lebih besar.

Meringkaskan

Strategi crossover MACD 200 per hari menggabungkan fungsi ganda penilaian tren dan penilaian sinyal perdagangan, yang dapat secara efektif meningkatkan probabilitas keuntungan, adalah strategi perdagangan kuantitatif yang lebih stabil dan andal. Namun, strategi ini juga memiliki ketergantungan pada parameter dan keadaan pasar, dengan terus mengoptimalkan pengujian dapat meningkatkan profitabilitas strategi yang stabil lebih lanjut.[/

Kode Sumber Strategi
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-02 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © x11joe

//@version=4
//This strategy is based on a youtube strategy that suggested I do this...so I did!

strategy(title="MacD 200 Day Moving Average Signal Crossover Strategy", overlay=false, precision=2,commission_value=0.26, initial_capital=10000, currency=currency.USD, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Getting inputs
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
src = input(title="Source", type=input.source, defval=close)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false)

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal

moving_avg_length = input(title="Moving Average Length", type=input.integer, defval=200)
moving_avg = sma(close,moving_avg_length)

moving_avg_normalized = close - moving_avg
plot(moving_avg_normalized, title="Moving Average Normalized", style=plot.style_line, color=color.orange,linewidth=3)

plot(hist, title="Histogram", style=plot.style_columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)

if(macd>signal and macd<0 and close>moving_avg)
    strategy.entry("buy",strategy.long)

if(close<moving_avg and macd<signal and macd>0)
    strategy.entry("sell",strategy.short)