Strategi menangkap arah aliran dagangan berdasarkan sejarah tinggi dan rendah Delta SMA

SMA DELTA MA
Tarikh penciptaan: 2025-02-19 10:47:50 Akhirnya diubah suai: 2025-02-19 10:47:50
Salin: 3 Bilangan klik: 350
1
fokus pada
1617
Pengikut

Strategi menangkap arah aliran dagangan berdasarkan sejarah tinggi dan rendah Delta SMA

Gambaran keseluruhan

Ini adalah strategi perdagangan berdasarkan SMA (rata-rata bergerak sederhana) yang menganalisis kenaikan dan penurunan dalam tempoh setahun. Strategi ini mengenal pasti isyarat perdagangan yang berpotensi dengan mengira purata bergerak perbezaan jumlah pembelian dan membandingkannya dengan penurunan dan penurunan sejarah. Strategi ini menggunakan tempoh pengulangan yang panjang dan sesuai untuk perdagangan trend jangka panjang.

Prinsip Strategi

Logik teras strategi adalah berdasarkan langkah utama berikut:

  1. Pengiraan Delta: Mengira perbezaan jumlah beli dan jual dengan menganalisis pergerakan harga. Apabila harga penutupan lebih tinggi daripada harga bukaan, ia direkodkan sebagai jumlah beli, sebaliknya sebagai jumlah jual.
  2. Pemprosesan lancar SMA: Pemprosesan purata bergerak 14 kitaran untuk nilai Delta untuk mengurangkan kebisingan.
  3. Menentukan paras tertinggi dan terendah dalam tempoh setahun: Mengira paras tertinggi dan terendah Delta SMA pada tahun lalu.
  4. Syarat isyarat:
    • Sinyal beli: Dilakukan apabila Delta SMA mencecah 0 selepas 70% di bawah paras rendah setahun
    • Sinyal Jual: Dilakukan apabila Delta SMA mencecah 60% selepas mencecah 90% dari paras tertinggi setahun

Kelebihan Strategik

  1. Keupayaan untuk menangkap trend jangka panjang: Dengan analisis data sejarah sepanjang satu tahun, ia dapat menangkap trend utama dengan berkesan.
  2. Kesan penapisan bunyi yang baik: Menggunakan pemprosesan yang lancar SMA dan keadaan nilai tiup ganda, berkesan mengurangkan isyarat palsu.
  3. Kawalan risiko yang munasabah: Syarat kemasukan dan keluar yang jelas ditetapkan untuk mengelakkan perdagangan berlebihan.
  4. Kebolehsuaian: parameter strategi boleh disesuaikan dengan keadaan pasaran yang berbeza.

Risiko Strategik

  1. Risiko kelewatan: Kemungkinan kelewatan isyarat disebabkan oleh penggunaan SMA dan tempoh pengulangan yang panjang.
  2. Risiko penembusan palsu: Ia mungkin memberi isyarat yang salah dalam pasaran yang bergolak.
  3. Bergantung kepada keadaan pasaran: mungkin kurang baik dalam pasaran yang tidak menunjukkan trend.
  4. Sensitiviti parameter: Tetapan nilai terhad mempunyai kesan besar terhadap prestasi strategi.

Arah pengoptimuman strategi

  1. Penyesuaian nilai terhad dinamik: Nilai terhad rendah dan tinggi boleh disesuaikan mengikut dinamik turun naik pasaran.
  2. Meningkatkan penunjuk tambahan: Meningkatkan kebolehpercayaan isyarat dengan penunjuk teknikal lain.
  3. Memperkenalkan mekanisme hentian kerugian: Tetapkan hentian kerugian dinamik untuk mengawal risiko.
  4. Penyaringan keadaan pasaran: Tambah logik penilaian keadaan pasaran, strategi operasi dalam keadaan yang sesuai.

ringkaskan

Ini adalah strategi pengesanan trend jangka menengah dan jangka panjang berdasarkan analisis kuantiti transaksi, untuk menangkap trend pasaran dengan menganalisis perbezaan nilai pembelian dan penjualan. Reka bentuk strategi adalah masuk akal, risiko terkawal, tetapi perlu memperhatikan kesesuaian dan pengoptimuman parameter persekitaran pasaran. Dengan arah pengoptimuman yang dikemukakan, strategi masih mempunyai ruang untuk meningkatkan lagi.

Kod sumber strategi
/*backtest
start: 2024-02-20 00:00:00
end: 2025-02-17 08:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Delta SMA 1-Year High/Low Strategy", overlay = false, margin_long = 100, margin_short = 100)

// Inputs
delta_sma_length = input.int(14, title="Delta SMA Length", minval=1)  // SMA length for Delta
lookback_days = 365  // Lookback period fixed to 1 year

// Function to calculate buy and sell volume
buy_volume = close > open ? volume : na
sell_volume = close < open ? volume : na

// Calculate the Delta
delta = nz(buy_volume, 0) - nz(sell_volume, 0)

// Calculate Delta SMA
delta_sma = ta.sma(delta, delta_sma_length)

// Lookback period in bars (1 bar = 1 day)
desired_lookback_bars = lookback_days

// Ensure lookback doesn't exceed available historical data
max_lookback_bars = math.min(desired_lookback_bars, 365)  // Cap at 365 bars (1 year)

// Calculate Delta SMA low and high within the valid lookback period
delta_sma_low_1yr = ta.lowest(delta_sma, max_lookback_bars)
delta_sma_high_1yr = ta.highest(delta_sma, max_lookback_bars)

// Define thresholds for buy and sell conditions
very_low_threshold = delta_sma_low_1yr * 0.7
above_70_threshold = delta_sma_high_1yr * 0.9
below_60_threshold = delta_sma_high_1yr * 0.5

// Track if `delta_sma` was very low and persist the state
var bool was_very_low = false
if delta_sma < very_low_threshold
    was_very_low := true
if ta.crossover(delta_sma, 10000)
    was_very_low := false  // Reset after crossing 0

// Track if `delta_sma` crossed above 70% of the high
var bool crossed_above_70 = false
if ta.crossover(delta_sma, above_70_threshold)
    crossed_above_70 := true
if delta_sma < below_60_threshold*0.5 and crossed_above_70
    crossed_above_70 := false  // Reset after triggering sell

// Buy condition: `delta_sma` was very low and now crosses 0
buy_condition = was_very_low and ta.crossover(delta_sma, 0)

// Sell condition: `delta_sma` crossed above 70% of the high and now drops below 60%
sell_condition = crossed_above_70 and delta_sma < below_60_threshold

// Place a long order when buy condition is met
if buy_condition
    strategy.entry("Buy", strategy.long)

// Place a short order when sell condition is met
if sell_condition
    strategy.close("Buy")

// Plot Delta SMA and thresholds for visualization
plot(delta_sma, color=color.blue, title="Delta SMA")
plot(very_low_threshold, color=color.green, title="70% of 1-Year Delta SMA Low", linewidth=2)
plot(above_70_threshold, color=color.purple, title="70% of 1-Year Delta SMA High", linewidth=2)
plot(below_60_threshold, color=color.red, title="60% of 1-Year Delta SMA High", linewidth=2)

// Optional: Plot Buy and Sell signals on the chart
//plotshape(series=buy_condition, title="Buy Signal", location=location.belowbar, color=color.new(color.green, 0), style=shape.labelup, text="BUY")
//plotshape(series=sell_condition, title="Sell Signal", location=location.abovebar, color=color.new(color.red, 0), style=shape.labeldown, text="SELL")