Logaritma Moving Average Convergence Divergence Strategi

Penulis:ChaoZhang, Tarikh: 2023-09-21 15:38:05
Tag:

Ringkasan

Strategi ini menghasilkan isyarat perdagangan menggunakan penunjuk MACD Logaritma. Ia mengira perbezaan antara purata bergerak logaritma cepat dan perlahan untuk mengukur momentum dan peluang pasaran.

Logika Strategi

Logik utama ialah:

  • Mengira MA logaritma pantas (default 12) dan MA logaritma perlahan (default 26)

  • Logaritma MACD adalah perbezaan mereka, menyatakan momentum pasaran

  • Garis isyarat dihaluskan MA MACD (default 9)

  • Pergi panjang apabila MACD melintasi isyarat di atas dari bawah

  • Pergi pendek apabila MACD melintasi di bawah isyarat dari atas

  • Perbezaan isyarat MACD digambarkan sebagai histogram

Berbanding dengan MACD yang mudah, MACD logaritmik dapat lebih menonjolkan trend pertumbuhan eksponensial.

Kelebihan

  • Mengesan pergerakan harga eksponensial menggunakan transformasi logaritma

  • Log MACD menonjolkan maklumat turun naik harga

  • Garis isyarat meluruskan MACD ke dalam isyarat perdagangan

  • Histogram MACD secara intuitif menunjukkan arah trend

Risiko

  • Transformasi log boleh memperkuat bunyi harga

  • Isyarat kerap, risiko perdagangan berlebihan

  • Tiada pengurusan stop loss, kawalan risiko yang tidak lengkap

Pengurangan:

  • Sesuaikan parameter untuk mengurangkan kekerapan isyarat

  • Tambah penapis untuk mengelakkan isyarat dalam keadaan bergelombang

  • Melaksanakan stop loss untuk mengawal kerugian setiap perdagangan

Peluang Peningkatan

  • Mengoptimumkan parameter untuk kestabilan

  • Cuba transformasi lain seperti purata bergerak eksponensial

  • Tambah penapis trend kepada isyarat skrin

  • Menggabungkan strategi stop loss

  • Gunakan pembelajaran mesin untuk menilai kebolehpercayaan isyarat

Kesimpulan

Transformasi logaritma meningkatkan kepekaan MACD untuk pengesanan trend awal. Tetapi kekerapan perdagangan harus dikawal. Dengan pengoptimuman dalam parameter, pengurusan risiko dll, strategi ini boleh menjadi sistem kuantitatif yang stabil dan unik.


/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="Logarithmic Moving Average Convergence Divergence Strategy", shorttitle="LMACD Strategy")

// 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(title="Signal Smoothing",  minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Simple MA(Oscillator)",  defval=false)
sma_signal = input(title="Simple MA(Signal Line)", defval=false)

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
lmacd = log(fast_ma) - log(slow_ma)
signal = sma_signal ? sma(lmacd, signal_length) : ema(lmacd, signal_length)
hist = lmacd - signal

plot(hist, title="Histogram", style=columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(lmacd, title="LMACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)

if (crossover(hist, 0))
	strategy.entry("Long", strategy.long, comment="LMACD long")
if (crossunder(hist, 0))
	strategy.entry("Short", strategy.short, comment="LMACD short")

Lebih lanjut