Strategi Momentum Berdasarkan Squeeze LazyBear

Penulis:ChaoZhang, Tarikh: 2023-12-21 14:22:49
Tag:

img

Ringkasan

Idea utama strategi ini adalah berdasarkan pada penunjuk Squeeze Momentum LazyBear untuk menganalisis masa membeli dan menjual. Ia menganalisis titik-titik perubahan dalam trend momentum, mencari puncak dan terendah sebagai isyarat jual dan beli masing-masing. Oleh kerana ia adalah strategi panjang, ia juga mengambil kira purata bergerak eksponen 50 tempoh untuk mengenal pasti trend menaik. Jika harga penutupan lilin di atas 50EMA, dan cerun 50EMA sedang bertrend menaik, maka isyarat beli dilaksanakan.

Prinsip Strategi

Strategi ini menggabungkan Bollinger Bands dan Saluran Keltner untuk mengenal pasti trend dan zon memerah. Khususnya, ia mengira Bollinger Bands 20 tempoh dan Saluran Keltner 20 tempoh. Apabila Bollinger Bands jatuh sepenuhnya dalam Saluran Keltner, ia dilihat sebagai isyarat memerah. Zon memerah dikenal pasti apabila Bollinger Bands bawah pergi di atas jalur bawah Saluran Keltner dan Bollinger Bands atas pergi di bawah jalur atas Saluran Keltner. Sebaliknya, apabila Bollinger Bands bawah jatuh di bawah jalur bawah Saluran Keltner dan Bollinger Bands atas naik di atas saluran Keltner atas, ia adalah zon tidak memerah.

Di samping itu, strategi ini menggunakan regresi linear untuk menganalisis perubahan kemiringan momentum. Ia mengira nilai regresi linear harga selama 20 tempoh terakhir dikurangkan daripada harga biasa. Apabila kemiringan nilai regresi linear positif, ia dilihat sebagai trend menaik. Apabila kemiringan negatif, ia adalah trend ke bawah. Di dalam zon memerah, jika terdapat pembalikan dalam kemiringan momentum, ia menandakan membeli atau menjual. Khususnya, apabila di dalam zon memerah, lipatan momentum dari positif ke negatif mengeluarkan isyarat jual. Dan apabila di dalam zon memerah, lipatan momentum dari negatif ke positif mengeluarkan isyarat beli.

Untuk menapis isyarat palsu, strategi ini juga menilai jika harga penutupan berada di atas Purata Bergerak Eksponensial 50 hari dan jika Purata Bergerak Eksponensial 50 hari berada dalam cerun ke atas. Hanya apabila kedua-dua syarat dipenuhi isyarat beli akan dilaksanakan.

Analisis Kelebihan

Ini adalah strategi yang sangat pintar, menggunakan dua jenis penunjuk yang berbeza untuk membuat penilaian pelbagai dimensi pasaran, yang dapat dengan berkesan mengelakkan isyarat palsu.

  1. Penggunaan Band Bollinger, Saluran Keltner dan penunjuk momentum yang komprehensif untuk analisis pelbagai dimensi dan ketepatan yang lebih baik.

  2. Zon memerah dapat dengan berkesan mengenal pasti puncak dan lereng pembalikan momentum dan menangkap belokan dengan tepat.

  3. Penapisan trend berdasarkan harga penutupan dan EMA 50 hari mengelakkan pembukaan kedudukan berulang semasa penyatuan.

  4. Isyarat yang hanya dikeluarkan semasa zon tekanan mengurangkan isyarat palsu dan meningkatkan kadar keuntungan.

  5. Ruang pengoptimuman parameter yang besar membolehkan pengoptimuman yang disasarkan melalui tempoh penyesuaian dll.

  6. Long dan pendek digabungkan, mengambil kira trend kitaran besar dan mengintegrasikan penunjuk jangka sederhana, arah panjang adalah jelas.

Analisis Risiko

Walaupun strategi ini mempunyai pelbagai penunjuk teknikal, masih ada beberapa risiko:

  1. Melewatkan peluang beli/jual apabila Bollinger Bands dan Keltner Channel divergen.

  2. Kerugian besar boleh berlaku semasa kenaikan atau kejatuhan pasaran yang ganas.

  3. Dalam pasaran yang sangat turun naik, situasi tekanan mungkin tidak jelas, mengakibatkan lebih sedikit isyarat.

  4. Kecenderungan kepada kerugian penyesuaian semasa peralihan bull-bear.

Untuk mengelakkan risiko ini, kita boleh mengambil langkah-langkah berikut:

  1. Mengoptimumkan parameter untuk menyegerakkan Bollinger Bands dan Saluran Keltner sebanyak mungkin.

  2. Tetapkan stop loss untuk mengawal kehilangan tunggal.

  3. Gunakan strategi ini sebagai sebahagian daripada strategi portfolio, digabungkan dengan strategi lain.

  4. Mengurangkan kedudukan dengan sewajarnya semasa pasaran volatiliti tinggi.

Arahan pengoptimuman

Masih ada ruang yang besar untuk mengoptimumkan strategi ini, terutamanya dalam arah berikut:

  1. Mengoptimumkan tempoh Bollinger Bands dan Saluran Keltner untuk menyegerakkan mereka sebanyak mungkin.

  2. Uji faktor pengganda yang berbeza untuk mencari kombinasi parameter yang optimum.

  3. Cuba memperkenalkan penunjuk lain untuk pengesahan, seperti RSI dll.

  4. Berdasarkan model Lima Garis Warna Wen Hua, gunakan strategi ini secara selektif bergantung pada peringkat pasaran.

  5. Mengambil pembelajaran mesin dan lain-lain untuk mengoptimumkan parameter secara dinamik.

  6. Ujian semula pada syiling yang berbeza untuk mencari produk perdagangan yang paling sesuai.

  7. Mengkaji keberkesanan strategi ini pada jangka masa yang lebih lama (tiap hari, mingguan dan lain-lain).

Kesimpulan

LazyBear Squeeze Momentum Strategy menggunakan pelbagai penunjuk teknikal secara komprehensif, dengan tepat mengenal pasti pembalikan momentum untuk perdagangan semasa zon memerah, mengelakkan pembukaan kedudukan berulang semasa pasaran yang tidak bertrend. Ia telah menentukan peraturan beli dan jual yang dapat diukur secara sistematik, berprestasi sangat baik dalam backtest. Melalui pengoptimuman tetapan parameter, pengenalan penunjuk penilaian baru, dan lain-lain, strategi ini mempunyai ruang yang besar untuk penambahbaikan dan bernilai penyelidikan dan penerapan mendalam oleh peniaga kuant.


/*backtest
start: 2023-11-20 00:00:00
end: 2023-12-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

//
// @author LazyBear 
// List of all my indicators: https://www.tradingview.com/v/4IneGo8h/
//
initialBalance = 8000

strategy("Crypto momentum strategy", overlay=false)


length = input(20, title="BB Length")
mult = input(2.0, title="BB MultFactor")
lengthKC = input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")

useTrueRange = input(true, title="Use TrueRange (KC)", type=input.bool)

// Calculate BB
source = close
basis = sma(source, length)
ema = ema(source, 50)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : high - low
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn = lowerBB > lowerKC and upperBB < upperKC
sqzOff = lowerBB < lowerKC and upperBB > upperKC
noSqz = sqzOn == false and sqzOff == false

val = linreg(source - avg(avg(highest(high, lengthKC), lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC, 0)

slope = (val - val[2])
emaSlope = (ema - ema[1])


bcolor = iff(slope > 0, color.lime, color.red)
scolor = noSqz ? color.green : sqzOn ? color.black : color.green
squeeze = (noSqz ? 0 : sqzOn ? 1 : 0)

plot(val, color=color.gray, style=plot.style_line, linewidth=1, title="momentum")
plot(slope, color=bcolor, style=plot.style_circles, linewidth=2, title="slope")
plot(0, color=scolor, style=plot.style_line, linewidth=2, title="squeeze-zero")

co = crossover(slope / abs(slope), 0)
cu = crossunder(slope / abs(slope), 0)

if co and source > ema and emaSlope > 0
    strategy.entry("long", strategy.long, comment="long")
if cu
    strategy.close("long")


Lebih lanjut