20 Level Breakout Strategi

Penulis:ChaoZhang, Tarikh: 2024-02-26 17:27:50
Tag:

img

Ringkasan

Strategi pecah 20 tahap adalah strategi trend berikut. Idea utamanya adalah bahawa apabila harga memecahkan tahap utama tertentu, ia menunjukkan pembalikan trend. Pada ketika ini, kedudukan panjang atau pendek boleh ditubuhkan mengikut arah pecah.

Strategi ini memilih purata bergerak 20 hari sebagai tahap utama. Apabila harga penutupan menembusi purata bergerak 20 hari dari atas, pergi panjang; apabila harga penutupan menembusi purata bergerak 20 hari dari bawah, pergi pendek.

Prinsip-prinsip

Strategi penembusan 20 peringkat menggunakan purata bergerak 20 hari untuk menilai penembusan trend. Apabila harga menembusi purata bergerak 20 hari dari atas ke bawah, ia menunjukkan trend menurun di pasaran, maka kita harus pergi pendek. Apabila harga menembusi purata bergerak 20 hari dari bawah ke atas, ia menunjukkan trend menaik di pasaran, maka kita harus pergi panjang.

Strategi ini juga menggabungkan penunjuk MACD untuk menentukan keadaan pasaran. Isyarat pendek hanya dikeluarkan apabila MACD adalah bar merah; Isyarat panjang hanya dikeluarkan apabila MACD adalah bar hijau. Ini mengelakkan menghasilkan isyarat yang salah semasa penyatuan pasaran.

Secara khusus, logik strategi adalah:

  1. Menentukan purata bergerak 20 hari sebagai garis asas;
  2. Apabila harga penutupan lebih tinggi daripada garis asas +0.2% dan syarat MACD dipenuhi, pergi panjang berhampiran harga pembukaan pada hari selepas pecah;
  3. Apabila harga penutupan lebih rendah daripada garis asas -0.2% dan syarat MACD dipenuhi, pergi pendek berhampiran harga pembukaan pada hari selepas pecah;
  4. Tetapkan stop loss pada 0.5% di bawah garis asas dan mengambil keuntungan pada 1% di atas garis asas untuk kedudukan panjang;
  5. Tetapkan stop loss pada 0.5% di atas garis asas dan mengambil keuntungan pada 1% di bawah garis asas untuk kedudukan pendek.

Dengan persediaan ini, strategi ini boleh menangkap peluang pada masa apabila peralihan trend berlaku, mencapai matlamat mengesan trend pasaran.

Analisis Kelebihan

Strategi pecah 20 peringkat mempunyai kelebihan berikut:

  1. Peraturan pengiraan dan penghakiman purata bergerak 20 hari sangat mudah.

  2. Penggunaan harga pecah sebagai isyarat dagangan dapat dengan berkesan mengelakkan operasi terbalik yang tidak perlu.

  3. Kemampuan pengesanan trend yang kuat. purata bergerak 20 hari dapat mencerminkan perubahan dalam trend jangka sederhana dengan sangat baik. Menggabungkan penapis MACD mengelakkan kedudukan yang salah semasa penyatuan trend.

Analisis Risiko

Strategi pecah 20 peringkat juga mempunyai risiko berikut:

  1. Apabila harga turun naik dengan ganas, kaedah purata bergerak 20 hari akan tertinggal, mungkin kehilangan peluang masuk terbaik.

  2. Dalam pasaran yang terikat julat, harga boleh pecah ke atas dan ke bawah dengan kerap.

  3. Strategi ini tidak mengambil kira amplitudo turun naik harga.

  4. Tahap stop loss dan mengambil keuntungan tetap juga akan mempengaruhi operasi strategi yang lancar. Ini memerlukan penyesuaian parameter mengikut aset asas yang berbeza.

Arahan pengoptimuman

Strategi pecah 20 peringkat boleh dioptimumkan dalam aspek berikut:

  1. Cuba rata-rata bergerak dengan tempoh yang berbeza, seperti 10 hari, 30 hari, dan lain-lain, untuk melihat tempoh mana yang lebih dapat memahami trend.

  2. Tambah penunjuk turun naik untuk menyesuaikan kedudukan secara dinamik berdasarkan besarnya turun naik harga.

  3. Mengoptimumkan kedudukan stop loss dan mengambil keuntungan. Parameter optimum boleh dikira dari data backtest sejarah.

  4. Cuba menggabungkan penunjuk lain seperti KDJ, Bollinger Bands, dan lain-lain untuk penapisan isyarat.

  5. Membangunkan versi yang lebih baik dengan mencari trend yang lebih besar pada bingkai masa yang lebih tinggi terlebih dahulu, dan kemudian memasuki bingkai masa yang lebih rendah.

Kesimpulan

Strategi penembusan 20 peringkat mengenal pasti titik perubahan trend melalui penembusan harga. Ia mempunyai kelebihan operasi yang mudah dan keupayaan penjejakan trend yang kuat. Tetapi masih ada beberapa risiko yang memerlukan pengoptimuman lanjut untuk menyesuaikan diri dengan kerumitan pasaran. Secara keseluruhan, strategi penembusan 20 peringkat, sebagai strategi trend yang agak asas, masih mempunyai ruang yang cukup untuk peningkatan. Pelabur boleh terus mengoptimumkannya supaya dapat mencapai pulangan yang stabil dalam pelbagai persekitaran pasaran.


/*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)

Lebih lanjut