Momentum Breakout ATR Strategi Volatiliti


Tarikh penciptaan: 2024-01-12 13:50:44 Akhirnya diubah suai: 2024-01-12 13:50:44
Salin: 0 Bilangan klik: 456
1
fokus pada
1214
Pengikut

Momentum Breakout ATR Strategi Volatiliti

Gambaran keseluruhan

Strategi ini menggunakan strategi garis rata-rata bergerak sederhana yang menggabungkan dua garis rata-rata, ditambah dengan indikator kadar turun naik ATR untuk menentukan kadar turun naik pasaran. Dianggap sebagai pasaran bertopeng apabila melintasi garis rata-rata jangka panjang di atas garis rata-rata jangka pendek, banyak masuk. Dianggap sebagai pasaran kosong apabila melintasi garis rata-rata jangka panjang di bawah garis rata-rata jangka pendek, masuk.

Prinsip Strategi

Bahagian teras adalah strategi dua rata-rata. Strategi dua rata-rata biasanya memilih rata-rata jangka pendek dan rata-rata jangka panjang, seperti rata-rata 50 hari dan rata-rata 200 hari. Ia menghasilkan isyarat beli apabila rata-rata jangka pendek melintasi rata-rata jangka panjang.

Strategi ini memilih garis purata 50 hari sebagai garis purata jangka pendek, dan garis purata 200 hari sebagai garis purata jangka panjang. Pengertian kebolehpercayaan isyarat garis purata berdasarkan gabungan purata berat VWAP. Iaitu, isyarat garis purata dan isyarat VWAP hanya masuk apabila ia selaras.

Tambahan pula, penambahan RSI mengelakkan membeli dan menjual terlalu banyak. Elakkan membeli apabila RSI lebih tinggi daripada 70, dan elakkan menjual apabila RSI lebih rendah daripada 30.

Akhirnya, turun naik dan tahap risiko pasaran ditentukan oleh penunjuk amplitudo turun naik rata-rata ATR. Nilai ATR lebih besar daripada 1.18 ditakrifkan sebagai turun naik yang tinggi, ketika ini dengan mengubah warna latar belakang menunjukkan risiko yang lebih tinggi, anda boleh sementara mengelakkan perdagangan dan menunggu masa selepas turun naik turun naik.

Analisis kelebihan

Terdapat tiga kelebihan utama dalam strategi ini:

  1. Binary Equity menangkap titik perubahan trend jangka panjang di pasaran dan memanfaatkan perdagangan trend untuk mendapatkan keuntungan yang lebih besar.

  2. Bersama-sama dengan penapisan VWAP, ia meningkatkan kebolehpercayaan isyarat.

  3. Memperkenalkan RSI mengelakkan dagangan berbalik dan mengurangkan kerugian.

  4. Menggunakan indikator kadar turun naik ATR untuk menilai keadaan risiko pasaran, mengelakkan masa turun naik yang tinggi, dan mengurangkan kerugian.

  5. Penggunaan pelbagai kombinasi penunjuk adalah ringkas, mudah difahami, sesuai untuk perdagangan kuantitatif.

Analisis risiko

Strategi ini juga mempunyai risiko:

  1. Apabila tanda ini dihasilkan, harga mungkin telah berubah dengan ketara, dan terdapat risiko untuk diboikot. Penyelesaian adalah untuk mengurangkan kitaran garis rata-rata dan mempercepatkan tindak balas penunjuk.

  2. VWAP mungkin mempunyai kesilapan yang menyebabkan penapisan isyarat perdagangan yang betul. Penyelesaian adalah dengan bantuan pengesahan indikator lain.

  3. Pada penghujung trend, RSI mungkin berada di kawasan overbought dan oversold untuk jangka masa yang lama, yang menyebabkan kehilangan titik pembalikan trend. Penyelesaian adalah digabungkan dengan pengesahan indikator lain, seperti MACD.

  4. ATR mungkin ada kelewatan dalam menilai turun naik pasaran. Penyelesaian adalah menggabungkan harga tertinggi, harga rendah dan lain-lain untuk menilai turun naik pasaran.

  5. Penghasilan mungkin tidak sesuai dengan jangkaan, perlu menyesuaikan parameter dengan sewajarnya.

Arah pengoptimuman

Terdapat banyak ruang untuk pengoptimuman:

  1. Uji lebih banyak kombinasi garis rata untuk mencari parameter terbaik.

  2. Tambah lebih banyak penapis petunjuk tambahan seperti MACD, KDJ dan sebagainya.

  3. Mengoptimumkan parameter stop loss, mengurangkan kerugian, meningkatkan keuntungan.

  4. Menilai perbezaan strategi perdagangan saham kuat dan saham lemah, melakukan pemodelan klasifikasi.

  5. Menggabungkan algoritma pembelajaran mesin seperti RNN dan lain-lain untuk mencapai optimasi parameter dan penilaian strategi secara automatik.

  6. Membangunkan sistem perdagangan automatik dan menyambungkan cakera keras untuk ujian balasan.

ringkaskan

Strategi ini secara keseluruhannya adalah strategi pengesanan trend yang lebih mudah. Inti menggunakan garis dua yang sama untuk menilai trend jangka pendek dan panjang. Digabungkan dengan VWAP dan RSI untuk memproses isyarat, gunakan ATR untuk menilai risiko.

Kod sumber strategi
/*backtest
start: 2024-01-04 00:00:00
end: 2024-01-11 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Simple Moving Averages", overlay=true)

sma50 = ta.sma(close, 50)
sma200 = ta.sma(close, 200)
vwap = ta.vwap(close)
rsi = ta.rsi(close, 14)
[diPlus, diMinus, adx_val] = ta.dmi(14, 14)
atr_val = ta.atr(14)

plot(sma50, color=color.new(color.green, 0))
plot(sma200, color=color.new(color.red, 0))
plot(vwap)

longCondition = ta.crossover(sma50, sma200) and vwap > close
shortCondition = ta.crossunder(sma50, sma200) and vwap < close

if (longCondition)
    strategy.entry("Long", strategy.long)
    
if (shortCondition)
    strategy.entry("Short", strategy.short)

barcolor = sma50 > sma200 ? (vwap < close ? (rsi < 70 ? color.green : color.blue) : color.yellow) : (sma50 < sma200 ? (vwap > close ? (rsi > 30 ? color.red : color.orange) : color.yellow) : na)
barcolor(barcolor)
bgcolor(adx_val > 25 and atr_val > 1.18 ? color.new(color.gray, 50) : color.new(color.black, 50), transp=90)

// ADX and ATR Label Box
// label.new(bar_index, high, "ADX: " + str.tostring(adx_val, "#.##") + "\nATR: " + str.tostring(atr_val, "#.##"), color=color.new(color.white, 0), textcolor=color.new(color.black, 0), style=label.style_labeldown, yloc=yloc.price, xloc=xloc.bar_index, size=size.small, textalign=text.align_left)

// Exit conditions (optional)
strategy.close("Long", when = ta.crossunder(sma50, sma200))
strategy.close("Short", when = ta.crossover(sma50, sma200))

// Take Profit and Stop Loss
takeProfitPercentage = 5
stopLossPercentage = 3

strategy.exit("Take Profit / Stop Loss", "Long", profit = takeProfitPercentage, loss = stopLossPercentage)
strategy.exit("Take Profit / Stop Loss", "Short", profit = takeProfitPercentage, loss = stopLossPercentage)