
Strategi 20 level breakout adalah strategi pelacakan tren. Gagasan utamanya adalah bahwa ketika harga melewati tingkat kunci, menunjukkan bahwa tren telah berbalik, yang dapat membuat posisi over atau under tergantung pada arah penembusan.
Strategi ini memilih 20 hari rata-rata sebagai tingkat kunci. Ketika harga closeout dari atas melanggar 20 hari rata-rata, melakukan lebih; Ketika harga closeout dari bawah melanggar 20 hari rata-rata, melakukan kosong.
Strategi 20 level breakout menggunakan garis rata-rata 20 hari sebagai standar untuk menilai trend breakout. Ketika harga dari arah atas melewati garis rata-rata 20 hari, menunjukkan bahwa pasar berada dalam tren turun, maka melakukan shorting; Ketika harga dari arah bawah melewati garis rata-rata 20 hari, menunjukkan bahwa pasar berada dalam tren naik, maka melakukan over.
Strategi ini juga menggabungkan indikator MACD untuk menentukan situasi. Hanya sinyal kosong akan dikirim ketika MACD adalah kolom merah; hanya sinyal ganda akan dikirim ketika MACD adalah kolom hijau. Ini dapat menghindari kesalahan sinyal saat menyusun.
Secara khusus, logikanya adalah:
Dengan pengaturan seperti itu, strategi ini dapat menangkap peluang tepat waktu ketika tren berubah, untuk tujuan melacak tren pasar.
Strategi level 20 memiliki keuntungan sebagai berikut:
Operasi sederhana dan mudah diterapkan. Perhitungan dan penilaian garis rata-rata 20 hari sangat sederhana dan langsung.
Pengembalian relatif kecil. Menggunakan terobosan harga sebagai sinyal untuk membangun saham, dapat secara efektif menghindari operasi reversal yang tidak perlu.
Mengikuti tren lebih kuat. 20 hari rata-rata garis dapat mencerminkan dengan baik perubahan tren jangka pendek dan menengah. Filter digabungkan dengan indikator MACD, menghindari kesalahan posisi ketika tren bergoyang.
Strategi untuk menembus level 20 juga memiliki risiko sebagai berikut:
Ketika harga mengalami fluktuasi yang sangat besar, metode 20 hari rata-rata akan mengalami lag, dan mungkin kehilangan waktu terbaik untuk masuk.
Dalam kondisi konsolidasi, harga mungkin akan sering mengalami lonjakan ke atas atau ke bawah. Jika tidak ada filter indikator yang baik, akan terjadi terlalu banyak transaksi yang tidak valid.
Strategi ini tidak mempertimbangkan faktor besarnya fluktuasi harga saham. Jika tidak digabungkan dengan indikator fluktuasi, akan menghadapi risiko kerugian yang terlalu besar.
Posisi stop loss yang tetap juga mempengaruhi kelancaran strategi. Hal ini perlu disesuaikan dengan parameter yang berbeda.
Strategi terobosan level 20 dapat dioptimalkan dengan:
Cobalah berbagai siklus rata-rata, seperti 10 hari, 30 hari, dan lain-lain, untuk melihat siklus mana yang lebih baik untuk menangkap tren.
Menambahkan indikator volatilitas, menyesuaikan posisi secara dinamis sesuai dengan fluktuasi harga saham.
Optimalkan posisi stop loss. Parameter optimal dapat dihitung berdasarkan data retrospeksi sejarah.
Cobalah untuk melakukan ormapSignal dengan menggunakan indikator lain, seperti KDJ, Brinline, dan lain-lain. Hal ini dapat mengurangi transaksi yang tidak valid.
Mengembangkan versi yang lebih baik, mencari tren yang lebih besar pada kerangka waktu yang lebih tinggi, dan kemudian memulai pada kerangka waktu yang lebih rendah.
Strategi pemecahan level 20 menilai titik balik tren melalui pemecahan harga, memiliki keunggulan karena mudah dioperasikan, kemampuan untuk melacak tren yang kuat. Namun, ada juga beberapa risiko yang perlu dioptimalkan lebih lanjut untuk menyesuaikan dengan kompleksitas pasar. Secara keseluruhan, strategi pemecahan level 20 sebagai strategi pelacakan tren yang lebih mendasar, masih ada ruang untuk perbaikan yang lebih besar.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//@version=4
strategy("20 Level Breakout", overlay=true)
baseLevel = math.floor(close * 100) /100
eigthylevel = baseLevel - 0.002
twentyLevel = baseLevel + 0.002
takeprofitL = baseLevel - 0.01
stoplossL = baseLevel + 0.02
takeprofitS = baseLevel + 0.015
stoplossS = baseLevel - 0.02
isPriceAboveLevel(price, level) =>
price > level
breakout = close > twentyLevel and close > baseLevel
breakoutl = close < eigthylevel and close < baseLevel
// Entry condition: Only enter if there are no open trades and the close is between baseLevel and baseLevel + 0.01
isLong = breakout and close > baseLevel and close <= (baseLevel + 0.01) and ta.rsi(close, 14) > 40 and ta.ema(close,50)<close
isShort = breakoutl and close < baseLevel and close >= (baseLevel - 0.01)
// Debugging
plot(isLong ? 1 : 0, color=color.blue, style=plot.style_histogram)
plotshape(isLong, style=shape.triangledown, color=color.green, size=size.small)
plotshape(isShort, style = shape.triangleup, color = color.red, size = size.small)
// Plotting the stop loss line
plot(stoplossL, color=color.red, linewidth=2, title="Take Profit")
plot(stoplossS, color=color.green, linewidth = 2, title = " Take Profit")
strategy.entry("Short", strategy.short, when=isLong, stop =twentyLevel)
strategy.exit("Stop Loss/Profit", "Short", stop = stoplossL , limit = takeprofitL)
strategy.entry("Long",strategy.long, when=isShort , stop = eigthylevel )
strategy.exit("Stop loss/Profit", "Long", stop = stoplossS , limit = takeprofitS)