Aliran Yang Diperbaiki Mengikuti Strategi Aliran Pecah Momentum


Tarikh penciptaan: 2024-01-17 15:55:15 Akhirnya diubah suai: 2024-01-17 15:55:15
Salin: 1 Bilangan klik: 1014
1
fokus pada
1617
Pengikut

Aliran Yang Diperbaiki Mengikuti Strategi Aliran Pecah Momentum

Gambaran keseluruhan

Artikel ini mengkaji secara terperinci strategi trend-tracking yang lebih baik yang menggabungkan penunjuk SuperTrend dan penapis Stochastic RSI. Strategi ini bertujuan untuk menghasilkan isyarat beli dan jual, sambil mengambil kira trend pasaran dan mengurangkan isyarat palsu.

Prinsip Strategi

Pengiraan SuperTrend

Pertama, mengira julat turun naik sebenar (TR) dan julat turun naik sebenar purata (ATR). Kemudian menggunakan ATR untuk mengira atas dan bawah landasan:

Rel atas = SMA ((harga penutupan, kitaran ATR) + ATR kali × ATR Laluan bawah = SMA ((harga penutupan, kitaran ATR) - ATR kali × ATR

Jika harga penutupan lebih tinggi daripada downtrend, maka ia adalah uptrend; jika harga penutupan lebih rendah daripada uptrend, maka ia adalah downtrend. Dalam uptrend, SuperTrend adalah downtrend; dalam downtrend, SuperTrend adalah uptrend.

Mekanisme penapis

Untuk mengurangkan isyarat palsu, SuperTrend dibuat sebagai purata bergerak untuk mendapatkan SuperTrend yang disaring.

Stochastic RSI

Hitung nilai RSI, kemudian gunakan penunjuk Stochastic untuk menghasilkan RSI Stochastic. Ia mencerminkan sama ada RSI berada di kawasan yang terlalu beli atau terlalu dijual.

Syarat kemasukan dan keluar

Syarat Beli: Harga penutupan berada dalam SuperTrend selepas runcit dan dalam trend menaik, dan Stochastic RSI < 80 Syarat jual: harga penutupan di bawah SuperTrend yang telah melintasi rantaian dan dalam trend menurun, dan Stochastic RSI > 20

Keluar dari pembelian: harga penutupan di bawah SuperTrend yang telah melalui kejatuhan dan dalam trend naik Keluar dan Jual: Harga penutupan berada dalam aliran menurun selepas melalui SuperTrend

Kelebihan Strategik

Ini adalah strategi trend-tracking yang lebih baik dan mempunyai kelebihan berikut berbanding dengan purata bergerak sederhana:

  1. SuperTrend sendiri mempunyai kebolehan untuk mengenali trend yang kuat dan memantau isyarat palsu.
  2. Penggunaan mekanisme penapisan mengurangkan lagi isyarat palsu dan menjadikan isyarat lebih dipercayai.
  3. Stochastic RSI mengelakkan isyarat palsu yang dihasilkan dalam keadaan overbought dan oversold, membiarkan strategi memberi isyarat di sekitar kawasan rintangan sokongan penting.
  4. Strategi ini mengambil kira arah trend dan keadaan overbought dan oversold Stochastic RSI untuk menyeimbangkan hubungan antara trend dan mengelakkan isyarat palsu.
  5. Parameter strategi boleh disesuaikan secara fleksibel untuk persekitaran pasaran yang berbeza.

Risiko dan pengoptimuman strategi

Kemungkinan risiko

  1. Dalam pasaran yang bergolak, stop loss boleh ditembusi.
  2. SuperTrend dan mekanisme penapisan berada di belakang dan mungkin terlepas perubahan harga terkini.
  3. Penetapan parameter Stochastic RSI yang tidak betul juga boleh mempengaruhi prestasi strategi.

Pengurusan risiko

  1. Penetapan kerugian yang disesuaikan dengan betul, atau menggunakan penutupan pelanggaran.
  2. Sesuaikan parameter ATR kitaran, kitaran penapisan untuk mengimbangi keterbelakangan.
  3. Uji dan mengoptimumkan parameter RSI Stochastic.

Arah pengoptimuman

  1. Uji kombinasi parameter yang berbeza untuk mencari parameter terbaik.
  2. Cuba mekanisme penapisan yang berbeza, seperti EMA smoothing dan sebagainya.
  3. Menggunakan algoritma pembelajaran mesin untuk mengoptimumkan parameter secara automatik.
  4. Gabungan dengan penunjuk lain untuk melengkapi kemasukan berdasarkan:

ringkaskan

Strategi ini menggabungkan kelebihan kedua-dua indikator SuperTrend dan Stochastic RSI, yang dapat mengenal pasti trend dengan berkesan dan menghantar isyarat perdagangan berkualiti tinggi. Selain itu, mekanisme penapisan juga menjadikannya lebih kasar terhadap bunyi pasaran. Strategi ini dapat memperoleh kesan strategi yang lebih baik melalui pengoptimuman parameter, dan juga boleh dipertimbangkan untuk digabungkan dengan indikator atau model lain.

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

//@version=5
strategy("Improved SuperTrend Strategy with Stochastic RSI", shorttitle="IST+StochRSI", overlay=true)

// Input parameters
atr_length = input(14, title="ATR Length")
atr_multiplier = input(1.5, title="ATR Multiplier")
filter_length = input(5, title="Filter Length")
stoch_length = input(14, title="Stochastic RSI Length")
smooth_k = input(3, title="Stochastic RSI %K Smoothing")

// Calculate True Range (TR) and Average True Range (ATR)
tr = ta.rma(ta.tr, atr_length)
atr = ta.rma(tr, atr_length)

// Calculate SuperTrend
upper_band = ta.sma(close, atr_length) + atr_multiplier * atr
lower_band = ta.sma(close, atr_length) - atr_multiplier * atr

is_uptrend = close > lower_band
is_downtrend = close < upper_band

super_trend = is_uptrend ? lower_band : na
super_trend := is_downtrend ? upper_band : super_trend

// Filter for reducing false signals
filtered_super_trend = ta.sma(super_trend, filter_length)

// Calculate Stochastic RSI
rsi_value = ta.rsi(close, stoch_length)
stoch_rsi = ta.sma(ta.stoch(rsi_value, rsi_value, rsi_value, stoch_length), smooth_k)

// Entry conditions
long_condition = ta.crossover(close, filtered_super_trend) and is_uptrend and stoch_rsi < 80
short_condition = ta.crossunder(close, filtered_super_trend) and is_downtrend and stoch_rsi > 20

// Exit conditions
exit_long_condition = ta.crossunder(close, filtered_super_trend) and is_uptrend
exit_short_condition = ta.crossover(close, filtered_super_trend) and is_downtrend

// Plot SuperTrend and filtered SuperTrend
plot(super_trend, color=color.orange, title="SuperTrend", linewidth=2)
plot(filtered_super_trend, color=color.blue, title="Filtered SuperTrend", linewidth=2)

// Plot Buy and Sell signals
plotshape(series=long_condition, title="Buy Signal", color=color.green, style=shape.triangleup, location=location.belowbar)
plotshape(series=short_condition, title="Sell Signal", color=color.red, style=shape.triangledown, location=location.abovebar)

// Output signals to the console for analysis
plotchar(long_condition, "Long Signal", "▲", location.belowbar, color=color.green, size=size.small)
plotchar(short_condition, "Short Signal", "▼", location.abovebar, color=color.red, size=size.small)

// Strategy entry and exit
strategy.entry("Long", strategy.long, when=long_condition)
strategy.entry("Short", strategy.short, when=short_condition)
strategy.close("Long", when=exit_long_condition)
strategy.close("Short", when=exit_short_condition)