Sumber dimuat naik... memuat...

Strategi Ramalan Rintisan Osilasi Dinamik MACD

Penulis:ChaoZhang, Tarikh: 2024-11-27 14:54:02
Tag:MACDEMASMAROC

img

Ringkasan

Strategi ini berasaskan keputusan dagangan pada ciri-ciri dinamik penunjuk MACD (Moving Average Convergence Divergence). Pendekatan teras memberi tumpuan kepada pemerhatian perubahan dalam histogram MACD untuk meramalkan potensi persilangan emas dan kematian, yang membolehkan penubuhan kedudukan awal. Strategi ini melampaui isyarat persilangan MACD tradisional dengan menekankan ciri-ciri dinamik histogram untuk mendapatkan masa kemasukan yang lebih baik.

Prinsip Strategi

Strategi ini menggunakan sistem penunjuk MACD yang diubah suai, menggabungkan perbezaan antara purata bergerak cepat (EMA12) dan perlahan (EMA26), bersama dengan garis isyarat 2 tempoh. Logik perdagangan teras berdasarkan beberapa titik utama:

  1. Mengira kadar perubahan histogram (hist_change) untuk menilai dinamik trend
  2. Menjangkakan isyarat salib emas dengan memasuki kedudukan panjang apabila histogram adalah negatif dan menunjukkan trend menaik selama tiga tempoh berturut-turut
  3. Menjangkakan isyarat silang kematian dengan menutup kedudukan apabila histogram positif dan menunjukkan trend menurun selama tiga tempoh berturut-turut
  4. Melaksanakan mekanisme penapisan masa untuk berdagang hanya dalam julat masa tertentu

Kelebihan Strategi

  1. Ramalan Isyarat Kuat: Menjangkakan isyarat silang yang berpotensi dengan memerhatikan dinamik histogram, meningkatkan masa kemasukan
  2. Kawalan Risiko yang Munasabah: Menggabungkan komisen 0.1% dan pergeseran 3 mata, mencerminkan keadaan perdagangan yang realistik
  3. Pengurusan Modal Fleksibel: Menggunakan saiz kedudukan berasaskan peratusan berbanding ekuiti akaun untuk kawalan risiko yang berkesan
  4. Visualisasi yang sangat baik: Menggunakan histogram berkod warna dan penanda anak panah untuk isyarat perdagangan, memudahkan analisis

Risiko Strategi

  1. Risiko pecah palsu: Isyarat palsu yang kerap boleh berlaku di pasaran yang berbeza
  2. Risiko Lag: Walaupun mekanisme ramalan, MACD mengekalkan beberapa lag semulajadi
  3. Kebergantungan persekitaran pasaran: Strategi berprestasi lebih baik dalam pasaran yang sedang berkembang, berpotensi berprestasi rendah dalam keadaan yang berbeza
  4. Sensitiviti Parameter: Prestasi strategi sangat bergantung kepada tetapan tempoh baris pantas dan perlahan

Arahan pengoptimuman

  1. Penapisan persekitaran pasaran: Tambah penunjuk pengenalan trend untuk menyesuaikan parameter dagangan berdasarkan keadaan pasaran
  2. Peningkatan Pengurusan Kedudukan: Melaksanakan ukuran kedudukan dinamik berdasarkan kekuatan isyarat
  3. Pelaksanaan Stop Loss: Tambah kerugian trailing atau stop tetap untuk mengawal drawdown
  4. Peningkatan Pengesahan Isyarat: Memasukkan penunjuk teknikal tambahan untuk pengesahan silang
  5. Pengoptimuman Parameter: Melaksanakan parameter penyesuaian yang menyesuaikan berdasarkan keadaan pasaran

Ringkasan

Strategi ini secara inovatif menggunakan ciri dinamik histogram MACD untuk meningkatkan sistem perdagangan MACD tradisional. Mekanisme ramalan memberikan isyarat kemasukan lebih awal, sementara keadaan perdagangan yang ketat dan langkah-langkah kawalan risiko memastikan kestabilan strategi. Dengan pengoptimuman dan penyempurnaan lanjut, strategi ini menunjukkan janji untuk peningkatan prestasi dalam keadaan perdagangan sebenar.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title="Demo GPT - Moving Average Convergence Divergence", shorttitle="MACD", commission_type=strategy.commission.percent, commission_value=0.1, slippage=3, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Getting inputs
fast_length = input(title="Fast Length", defval=12)
slow_length = input(title="Slow Length", defval=26)
src = input(title="Source", defval=close)
signal_length = input.int(title="Signal Smoothing", minval=1, maxval=50, defval=2)  // Set smoothing line to 2
sma_source = input.string(title="Oscillator MA Type", defval="EMA", options=["SMA", "EMA"])
sma_signal = input.string(title="Signal Line MA Type", defval="EMA", options=["SMA", "EMA"])

// Date inputs
start_date = input(title="Start Date", defval=timestamp("2018-01-01T00:00:00"))
end_date = input(title="End Date", defval=timestamp("2069-12-31T23:59:59"))

// Calculating
fast_ma = sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length)
slow_ma = sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length)
hist = macd - signal

// Strategy logic
isInDateRange = true

// Calculate the rate of change of the histogram
hist_change = hist - hist[1]

// Anticipate a bullish crossover: histogram is negative, increasing, and approaching zero
anticipate_long = isInDateRange and hist < 0 and hist_change > 0 and hist > hist[1] and hist > hist[2]

// Anticipate an exit (bearish crossover): histogram is positive, decreasing, and approaching zero
anticipate_exit = isInDateRange and hist > 0 and hist_change < 0 and hist < hist[1] and hist < hist[2]

if anticipate_long
    strategy.entry("Long", strategy.long)

if anticipate_exit
    strategy.close("Long")

// Plotting
hline(0, "Zero Line", color=color.new(#787B86, 50))
plot(hist, title="Histogram", style=plot.style_columns, color=(hist >= 0 ? (hist > hist[1] ? #26A69A : #B2DFDB) : (hist < hist[1] ? #FF5252 : #FFCDD2)))
plot(macd, title="MACD", color=#2962FF)
plot(signal, title="Signal", color=#FF6D00)

// Plotting arrows when anticipating the crossover
plotshape(anticipate_long, title="Long +1", location=location.belowbar, color=color.green, style=shape.arrowup, size=size.tiny, text="Long +1")
plotshape(anticipate_exit, title="Short -1", location=location.abovebar, color=color.red, style=shape.arrowdown, size=size.tiny, text="Short -1")


Berkaitan

Lebih lanjut