Strategi Pullback Rata-rata Bergerak

Penulis:ChaoZhang, Tanggal: 2023-12-19 11:55:25
Tag:

img

Gambaran umum

Strategi pullback rata-rata bergerak melacak persimpangan rata-rata bergerak harga, dan mengidentifikasi peluang pullback untuk melakukan perdagangan kontra-tren saat persimpangan emas terjadi.

Logika Strategi

Inti dari strategi ini melibatkan dua rata-rata bergerak - EMA 14 hari dan SMA 56 hari. Ini memicu sinyal beli ketika EMA 14 hari melintasi di atas SMA 56 hari dari bawah. Setelah itu, strategi melihat ke belakang 20 hari untuk menemukan swing low sebagai dukungan. Dikombinasikan dengan harga penutupan pada titik crossover, garis pullback Fibonacci digambarkan, dengan 1.272 garis pullback sebagai entri dan 0.618 sebagai keluar. Dengan demikian strategi menetapkan titik masuk untuk pergi pendek setelah melintasi emas, dan mengambil keuntungan jika harga benar-benar menarik kembali ke garis 0.618.

Langkah-langkah utama dari strategi ini adalah:

  1. Menghitung EMA 14 hari dan SMA 56 hari;
  2. Periksa apakah EMA melintasi di atas sinyal silang emas SMA;
  3. Lihat kembali untuk menemukan ayunan rendah untuk dukungan;
  4. Menggambar garis mundur Fibonacci dengan titik terendah dan titik persilangan;
  5. Set entry untuk short di garis pullback 1.272;
  6. Set take profit stop di garis pullback 0,618.

Hal di atas menjelaskan alur kerja utama dan logika di balik strategi penarikan ini.

Keuntungan

Keuntungan utama dari strategi pulback rata-rata bergerak ini adalah:

  1. Ide strategi sederhana dan mudah dipahami;
  2. Menggunakan teori Fibonacci untuk mengatur kontrol risiko yang lebih baik;
  3. Dapat menangkap peluang pembalikan jangka pendek untuk keuntungan yang baik;
  4. Hanya membutuhkan rata-rata bergerak salib emas untuk memicu entri.

Singkatnya, ini sangat cocok untuk perdagangan gaya pembalikan rata-rata jangka pendek. Ini menangkap peluang mundur untuk mendapatkan keuntungan. Strategi ini juga sederhana dan mudah diterapkan.

Risiko

Terlepas dari pro, ada juga risiko tertentu untuk dicatat untuk strategi ini:

  1. Holding panjang dapat menyebabkan kerugian besar, karena kita kontra-trend shorting;
  2. Ukuran mundur terlalu kecil untuk mencapai mengambil keuntungan;
  3. Pengaturan garis mundur yang terlalu agresif.

Untuk mengurangi risiko, kita dapat menetapkan jangka waktu stop loss yang pendek untuk mengendalikan kerugian; juga mengoptimalkan rentang garis pullback untuk menargetkan target keuntungan yang wajar.

Peluang Peningkatan

Masih banyak ruang untuk mengoptimalkan strategi pulback rata-rata bergerak ini:

  1. Uji pengaturan parameter yang berbeda pada item seperti periode rata-rata bergerak, hari lookback, kelipatan Fibonacci dll untuk menemukan yang optimal;

  2. Menambahkan mekanisme stop loss seperti stop multiple atau trailing stop untuk mengendalikan risiko dengan lebih baik;

  3. Memperkenalkan indikator lain sebagai FILTER untuk menghindari kondisi pasar yang tidak cocok;

  4. Mengoptimalkan ukuran posisi dan aturan manajemen risiko.

Melalui pengujian dan optimasi yang ketat, peningkatan yang signifikan dapat dicapai untuk strategi perdagangan ini.

Kesimpulan

Strategi pullback rata-rata bergerak adalah strategi perdagangan jangka pendek yang sangat praktis. Strategi ini menangkap peluang-peluang yang membalikkan rata-rata ketika harga menarik kembali dalam jangka pendek. Ide strategi sederhana dan mudah dipahami. Masih ada risiko yang perlu ditangani melalui optimasi dan pengendalian risiko. Secara keseluruhan ini adalah strategi kuantitatif yang menjanjikan yang layak untuk penelitian dan aplikasi lebih lanjut.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("MAC Pullback", overlay=true)

// Setting up timeperiod for testing
startPeriodYear = input(2014, "Backtest Start Year")
startPeriodMonth = input(1, "Backtest Start Month")
startPeriodDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(startPeriodYear, startPeriodMonth, startPeriodDay, 0, 0)

stopPeriodYear = input(2035, "Backtest Stop Year")
stopPeriodMonth = input(12, "Backtest Stop Month")
stopPeriodDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(stopPeriodYear, stopPeriodMonth, stopPeriodDay, 0, 0)

// Moving Averages
ema14 = ema(close, 14)
ema28 = ema(close, 28)
sma56 = sma(close, 56)

// Plot
plot(ema14, title="ema14", linewidth=2, color=green)
plot(ema28, title="ema28", linewidth=2, color=red)
plot(sma56, title="sma56", linewidth=3, color=blue)


// Strategy
goLong = cross(ema14, sma56) and ema14 > ema28
goShort = cross(ema14, sma56) and ema14 < ema28


// Locate Swing Lows
leftBars = input(20)
rightBars=input(20)
swinglow = pivotlow(close, leftBars, rightBars)
plot(swinglow, style=cross, linewidth=8, color=#00FF00, offset=-rightBars)

if goLong == true and time >= testPeriodStart and time <= testPeriodStop
    // We try to make sure that we're catching the first Pullback after the crossover
    if ema14[12] < sma56[12] 
        pivotpoint = lowest(40)[0] //lowest value of the month as our swing low
        
        // We calculate a Fib 1.272 extension (from the previous swing low to 
        // the crossover long entry's open) and use this as our entry target to short the Pullback
        extensiontarget = ((close[1] - pivotpoint) * 1.27) + pivotpoint
        shorttarget = ((close[1] - pivotpoint) * 0.618) + pivotpoint        
        
        strategy.order("Pullback", strategy.short, 5.0, limit=extensiontarget)
        // I would like to use a trailing stop but for know we just hope to get 
        // filled if the pullback reaches all the way down to the 0.618.
        // We also place a tight stop loss since we trying to short an uptrend
        strategy.exit("Pullback Exit", "Pullback", limit=shorttarget, loss=400)

Lebih banyak