Strategi Penapis Aliran EMA

EMA stdev Trend
Tarikh penciptaan: 2024-06-14 15:51:05 Akhirnya diubah suai: 2024-06-14 15:51:05
Salin: 0 Bilangan klik: 715
1
fokus pada
1617
Pengikut

Strategi Penapis Aliran EMA

Gambaran keseluruhan

Strategi ini menggunakan tiga purata bergerak indeks ((EMA) dari tiga kitaran yang berbeza untuk menilai trend pasaran dan isyarat membeli dan menjual. Persilangan EMA pesat, EMA perlahan dan EMA penapis trend, dan kedudukan harga berbanding EMA penapis trend, bersama-sama membentuk logik teras strategi ini.

Prinsip Strategi

  1. Hitung tiga EMA yang berbeza: EMA pantas (default 9), EMA perlahan (default 21) dan EMA penapis trend (default 200).
  2. Perbezaan piawaian harga 20 kitaran dikira untuk mengukur kadar turun naik pasaran.
  3. Memperkenalkan Fukuiz trend indicator ((default 14 cycle EMA) dan menentukan warna berdasarkan hubungan saiznya dengan kitaran sebelumnya ((naik menjadi hijau, turun menjadi merah) )
  4. Sinyal beli dihasilkan apabila EMA pantas melepasi EMA perlahan, dan EMA pantas lebih tinggi daripada EMA perlahan, dan harga lebih tinggi daripada EMA penapis trend.
  5. Apabila EMA pantas melintasi EMA perlahan, dan EMA pantas lebih rendah daripada EMA perlahan, dan harga lebih rendah daripada EMA penapis trend, menghasilkan isyarat menjual.
  6. Apabila memegang kedudukan berbilang kepala, jika Fukuiz Trend Indicator bertukar menjadi merah, tutup kedudukan berbilang kepala.
  7. Apabila memegang kedudukan kosong, jika Fukuiz Trend Indicator bertukar menjadi hijau, kosongkan kedudukan kosong.

Analisis kelebihan

  1. Dengan menggunakan gabungan EMA dari pelbagai kitaran, trend pasaran dapat ditangkap dengan lebih baik.
  2. Pengenalan Fukuiz Trend Indicator, yang menyediakan asas tambahan untuk menilai trend dan dalam beberapa kes berfungsi sebagai penghalang kerugian.
  3. Parameter boleh laras, mudah disesuaikan, dan boleh dioptimumkan mengikut pasaran dan kitaran yang berbeza.

Analisis risiko

  1. EMA pada dasarnya adalah penunjuk ketinggalan, apabila pasaran berubah dengan cepat, isyarat mungkin tertangguh.
  2. EMA yang lebih panjang boleh menyebabkan strategi terlepas beberapa trend jangka pendek.
  3. Logik kedudukan rendah dalam Fukuiz Trend Indicator boleh menyebabkan strategi berhenti terlalu awal dan kehilangan trend seterusnya.

Arah pengoptimuman

  1. Optimumkan parameter kitaran setiap EMA untuk mencari kombinasi parameter yang paling sesuai untuk pasaran semasa.
  2. Memperkenalkan penunjuk tambahan seperti RSI, MACD dan lain-lain untuk memberikan lebih banyak dasar masuk dan keluar.
  3. Mengoptimumkan logik stop loss untuk Fukuiz Trend Indicator, seperti memasukkan zon pelindung tertentu untuk mengelakkan stop loss terlalu awal.
  4. Pertimbangkan untuk menambah modul pengurusan kedudukan dan kawalan risiko untuk meningkatkan kestabilan strategi dan ketahanan terhadap risiko.

ringkaskan

Strategi ini melalui kombinasi beberapa EMA kitaran, dan dengan bantuan indikator trend Fukuiz, membina kerangka penilaian dan perdagangan yang agak lengkap. Logik strategi jelas, parameter boleh disesuaikan, dan adaptasi yang kuat. Tetapi terdapat juga beberapa risiko yang berpotensi, seperti ketinggalan isyarat, bias penilaian trend, dan sebagainya.

Kod sumber strategi
/*backtest
start: 2023-06-08 00:00:00
end: 2024-06-13 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EvilRed Trading Indicator Trend Filter", overlay=true)

// Parameters Definition
fastLength = input(9, title="Fast EMA Length")
slowLength = input(21, title="Slow EMA Length")
trendFilterLength = input(200, title="Trend Filter EMA Length")

// Moving Averages Calculation
fastEMA = ta.ema(close, fastLength)
slowEMA = ta.ema(close, slowLength)
trendEMA = ta.ema(close, trendFilterLength)

// Volatility Calculation
volatility = ta.stdev(close, 20)

// Add Fukuiz Trend Indicator
fukuizTrend = ta.ema(close, 14)
fukuizColor = fukuizTrend > fukuizTrend[1] ? color.green : color.red
plot(fukuizTrend, color=fukuizColor, title="Fukuiz Trend")

// Plotting Moving Averages
plot(fastEMA, color=color.blue, title="Fast EMA")
plot(slowEMA, color=color.red, title="Slow EMA")
plot(trendEMA, color=color.orange, title="Trend Filter")

// Plotting Buy and Sell Signals
buySignal = ta.crossover(fastEMA, slowEMA) and fastEMA > slowEMA and close > trendEMA
sellSignal = ta.crossunder(fastEMA, slowEMA) and fastEMA < slowEMA and close < trendEMA

// Entry and Exit Conditions
if (strategy.position_size > 0 and fukuizColor == color.red)
    strategy.close("Long", comment="Fukuiz Trend is Red")

if (strategy.position_size < 0 and fukuizColor == color.green)
    strategy.close("Short", comment="Fukuiz Trend is Green")

if (buySignal)
    strategy.entry("Long", strategy.long)
    
if (sellSignal)
    strategy.entry("Short", strategy.short)




plotshape(buySignal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(sellSignal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")