Tren Mengikuti Strategi Beli Drop Jual Puncak

Penulis:ChaoZhang, Tanggal: 2023-10-24 13:54:18
Tag:

img

Gambaran umum

Strategi ini menerapkan tren otomatis setelah perdagangan dengan menghitung Bollinger Bands untuk mengidentifikasi penurunan dan puncak dan menggunakan rata-rata bergerak jangka panjang dan jangka pendek untuk menentukan arah tren keseluruhan.

Logika Strategi

Komponen utama dari strategi ini adalah:

  1. Menghitung Bollinger Bands dengan band atas dan bawah berdasarkan harga dekat dan standar deviasi.

  2. Tentukan tren jangka panjang dan jangka pendek menggunakan SMA 300 periode dan 20 periode.

  3. Menghasilkan sinyal beli ketika close break di bawah band bawah sementara SMA panjang berada di atas dan SMA pendek muncul.

  4. Menghasilkan sinyal jual ketika close break di atas band atas sementara SMA panjang berada di bawah dan SMA pendek berubah ke bawah.

  5. Gunakan perintah OCO untuk mengatur stop loss dan mengambil keuntungan.

Dengan desain ini, strategi dapat secara otomatis mengidentifikasi peluang pembelian dan penjualan puncak di sepanjang arah tren utama.

Analisis Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Deteksi tren otomatis tanpa penilaian manual.

  2. Secara sistematis menangkap penurunan untuk peluang pembelian.

  3. Secara sistematis mengidentifikasi peluang penjualan puncak untuk mengambil keuntungan.

  4. Pengendalian risiko yang efektif menggunakan stop loss dan take profit.

  5. Menyaring sinyal yang tidak valid untuk meningkatkan tingkat kemenangan.

  6. Tren fleksibel diikuti oleh penyesuaian posisi.

  7. Logika yang jelas dan mudah dipahami dan dioptimalkan.

Analisis Risiko

Risiko utama yang harus dipertimbangkan:

  1. Pilihan keamanan yang tidak tepat bisa gagal melacak tren.

  2. Penyesuaian parameter yang tidak benar dapat menyebabkan overtrading atau perdagangan yang terlewatkan.

  3. Pembalikan tren dari peristiwa tiba-tiba dapat menyebabkan kerugian yang lebih besar.

  4. Stop loss yang terlalu ketat dapat menyebabkan stop yang berlebihan.

  5. Likuiditas yang tidak cukup dapat mencegah eksekusi penuh.

  6. Overfitting dengan periode backtesting yang tidak cukup.

Solusinya meliputi: memilih saham cair dengan tren yang jelas; mengoptimalkan parameter; waspada terhadap berita; santai stop loss; mengevaluasi volume perdagangan nyata; memperluas periode backtest.

Arahan Optimasi

Beberapa cara untuk mengoptimalkan strategi:

  1. Mengoptimalkan parameter seperti periode Bollinger, standar deviasi multiplier dan periode rata-rata bergerak.

  2. Tambahkan metode stop loss seperti trailing stop atau moving average stop untuk mengontrol risiko dengan lebih baik.

  3. Menggabungkan ukuran posisi berdasarkan tingkat kunci untuk meningkatkan efisiensi pemanfaatan modal.

  4. Tambahkan filter volume untuk menghindari penyumbatan yang tidak valid dengan volume rendah.

  5. Tambahkan indikator kekuatan relatif untuk menentukan bias beli/jual.

  6. Memperkenalkan pembelajaran mesin untuk pengaturan parameter otomatis dan evaluasi strategi.

  7. Gabungkan dengan strategi lain untuk menciptakan portofolio multi-strategi untuk ketahanan yang lebih besar.

Optimalisasi ini dapat lebih meningkatkan kinerja dan stabilitas strategi.

Ringkasan

Strategi ini menawarkan pendekatan yang jelas dan mudah dimengerti untuk secara sistematis membeli penurunan dan menjual puncak di sepanjang tren. Dengan kontrol risiko yang tepat, ia memiliki potensi keuntungan yang baik. Perbaikan lebih lanjut dapat dilakukan melalui penyesuaian parameter, modifikasi stop loss, ukuran posisi, dll. Strategi ini berfungsi sebagai dasar yang kuat untuk tren otomatis setelah perdagangan.


/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Buy Dip Sell Rip Strategy", overlay=true)
source = close
length = input(15, minval=1)
mult = input(1.25, minval=0.001, maxval=50)
longMAPeriod = input(300, minval=5)
shortMAPeriod = input(20, minval=5)

basis = sma(source, length)
longMA = sma(source, longMAPeriod)
prevLongMA = sma(close[1],longMAPeriod)
shortMA = sma(source, shortMAPeriod)
dev = mult * stdev(source, length)

upper = basis + dev
lower = basis - dev

buyEntry = crossover(source, lower)
sellEntry = crossunder(source, upper)

if (source > lower and source[1] < lower)
    if (longMA < source  and shortMA>source)
        strategy.entry("BBandLE", strategy.long, stop=lower, oca_name="BollingerBands",  comment="BBandLE")
    else
        strategy.close("BBandSE")
else
    strategy.cancel(id="BBandLE")

if (source > upper and source[1] < upper)
    if (longMA > source  and shortMA < source)
        strategy.entry("BBandSE", strategy.short, stop=upper, oca_name="BollingerBands",  comment="BBandSE")
    else 
        strategy.close("BBandLE")
else
    strategy.cancel(id="BBandSE")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)


Lebih banyak