Strategi henti rugi anjakan dinamik RSI

RSI MA
Tarikh penciptaan: 2024-06-07 15:47:51 Akhirnya diubah suai: 2024-06-07 15:47:51
Salin: 5 Bilangan klik: 627
1
fokus pada
1617
Pengikut

Strategi henti rugi anjakan dinamik RSI

Gambaran keseluruhan

Strategi ini berdasarkan kepada kaedah Wyckoff, menggabungkan indeks relatif lemah (RSI) dan purata bergerak volume (Volume MA) untuk mengenal pasti tahap pengumpulan dan pengagihan pasaran, yang menghasilkan isyarat membeli dan menjual. Strategi ini juga menggunakan mekanisme hentian dan penarikan balik yang dinamik untuk mengawal risiko dengan menetapkan nilai penarikan balik maksimum.

Prinsip Strategi

  1. Hitung RSI dan purata bergerak jumlah transaksi.
  2. Apabila RSI melintasi ke atas dari kawasan oversold, dan jumlah transaksi lebih besar daripada purata bergerak jumlah transaksi, ia dikenali sebagai tahap akumulasi pasaran, yang menghasilkan isyarat beli.
  3. Apabila RSI melintasi ke bawah dari kawasan overbought, dan jumlah dagangan lebih besar daripada purata bergerak jumlah dagangan, ia dikenali sebagai fasa pengedaran pasaran, yang menghasilkan isyarat jual.
  4. Strategi ini menjejaki nilai bersih maksimum dan penarikan balik semasa akaun secara serentak. Jika penarikan balik semasa melebihi had penarikan balik maksimum yang ditetapkan, strategi akan melanggarkan semua kedudukan.
  5. Membeli kedudukan pada tahap pengedaran atau penarikan balik melebihi penarikan balik maksimum dan menjual kedudukan pada tahap pengumpulan atau penarikan balik melebihi penarikan balik maksimum.

Kelebihan Strategik

  1. Gabungan RSI dan metrik volumes dapat menangkap tahap pengumpulan dan pengedaran pasaran dengan lebih tepat.
  2. Menggunakan mekanisme henti rugi tarik balik yang dinamik, anda dapat mengawal pengeluaran maksimum strategi dengan berkesan dan mengurangkan risiko keseluruhan strategi.
  3. Untuk data frekuensi tinggi selama 5 minit, anda boleh bertindak balas dengan cepat terhadap perubahan pasaran dan menyesuaikan kedudukan tepat pada masanya.

Risiko Strategik

  1. RSI dan indikator kuantiti dagangan mungkin menghasilkan isyarat yang salah dalam keadaan pasaran tertentu, yang menyebabkan strategi membuat keputusan perdagangan yang salah.
  2. Tetapan untuk nilai setar maksimum perlu diselaraskan mengikut ciri-ciri pasaran dan keutamaan risiko peribadi, dan tetapan yang tidak sesuai boleh menyebabkan strategi untuk menebus terlalu awal atau mengambil risiko yang terlalu besar.
  3. Strategi ini mungkin sering menghasilkan isyarat perdagangan dalam pasaran yang bergolak, meningkatkan kos perdagangan.

Arah pengoptimuman strategi

  1. Ia boleh dipertimbangkan untuk memperkenalkan petunjuk teknikal lain, seperti MACD, Brinband dan lain-lain, untuk meningkatkan ketepatan isyarat strategi.
  2. Optimumkan parameter RSI dan indikator volumes, seperti menyesuaikan panjang RSI, overbought dan oversold, untuk menyesuaikan diri dengan keadaan pasaran yang berbeza.
  3. Selain daripada penarikan balik, penarikan balik boleh ditambah dengan penarikan bergerak atau pelindung keuntungan untuk mengawal risiko dan mengunci keuntungan.

ringkaskan

Strategi RSI berganda untuk menghentikan kerugian dengan menggabungkan RSI dan penunjuk kuantiti transaksi, mengenal pasti tahap pengumpulan dan pengagihan pasaran, dan menggunakan mekanisme kawalan risiko berganda untuk menghentikan kerugian. Strategi ini mempunyai kepraktisan tertentu, dengan mengambil alih pengurusan risiko sambil memahami trend pasaran. Walau bagaimanapun, prestasi strategi bergantung pada pilihan parameter penunjuk dan ciri-ciri pasaran, yang perlu meningkatkan kestabilan dan keuntungan dengan pengoptimuman dan penyesuaian yang berterusan.

Kod sumber strategi
/*backtest
start: 2024-05-07 00:00:00
end: 2024-06-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Wyckoff Methodology Strategy with Max Drawdown", overlay=true)

// Define input parameters
length = input(14, title="RSI Length")
overbought = input(70, title="RSI Overbought Level")
oversold = input(30, title="RSI Oversold Level")
volume_length = input(20, title="Volume MA Length")
initial_capital = input(10000, title="Initial Capital")
max_drawdown = input(500, title="Max Drawdown")

// Calculate RSI
rsi = ta.rsi(close, length)

// Calculate Volume Moving Average
vol_ma = ta.sma(volume, volume_length)

// Identify Accumulation Phase
accumulation = ta.crossover(rsi, oversold) and volume > vol_ma

// Identify Distribution Phase
distribution = ta.crossunder(rsi, overbought) and volume > vol_ma

// Plot RSI
hline(overbought, "Overbought", color=color.red)
hline(oversold, "Oversold", color=color.green)
plot(rsi, title="RSI", color=color.blue)

// Plot Volume and Volume Moving Average
plot(volume, title="Volume", color=color.orange, style=plot.style_histogram)
plot(vol_ma, title="Volume MA", color=color.purple)

// Variables to track drawdown
var float max_equity = initial_capital
var float drawdown = 0.0

// Update max equity and drawdown
current_equity = strategy.equity
if (current_equity > max_equity)
    max_equity := current_equity
drawdown := max_equity - current_equity

// Generate Buy and Sell Signals
if (accumulation and drawdown < max_drawdown)
    strategy.entry("Buy", strategy.long)
if (distribution and drawdown < max_drawdown)
    strategy.entry("Sell", strategy.short)

// Plot Buy and Sell signals on chart
plotshape(series=accumulation, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="BUY")
plotshape(series=distribution, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="SELL")

// Close positions if drawdown exceeds max drawdown
if (drawdown >= max_drawdown)
    strategy.close_all("Max Drawdown Exceeded")

// Set strategy exit conditions
strategy.close("Buy", when=distribution or drawdown >= max_drawdown)
strategy.close("Sell", when=accumulation or drawdown >= max_drawdown)

// Display drawdown on chart
plot(drawdown, title="Drawdown", color=color.red, linewidth=2, style=plot.style_stepline)