Strategi perdagangan pembalikan rata-rata pergerakan yang dibantu indikator momentum


Tanggal Pembuatan: 2024-01-22 17:34:05 Akhirnya memodifikasi: 2024-01-22 17:34:05
menyalin: 0 Jumlah klik: 689
1
fokus pada
1617
Pengikut

Strategi perdagangan pembalikan rata-rata pergerakan yang dibantu indikator momentum

Ringkasan

Strategi ini menggunakan kombinasi indikator momentum dan garis rata, mengidentifikasi tren pasar dan titik balik, dan melakukan perdagangan ketika tren terjadi, termasuk dalam strategi pelacakan tren dan perdagangan berlawanan. Ini terutama terdiri dari modul seperti zona penawaran dan permintaan, garis rata EMA, berbagai tanda HH, LL, LH, dan HL, dan ATR stop loss.

Prinsip Strategi

1. Identifikasi area penawaran dan permintaan

Berdasarkan garis K, batas tinggi dan rendah membedakan hubungan antara penawaran dan permintaan. Wilayah merah adalah wilayah pasokan yang berlebihan, dan wilayah hijau adalah wilayah permintaan yang lebih besar dari pasokan.

2. Pengadilan tren EMA

Sebuah rata-rata EMA dengan panjang 200 yang dihitung dan dipetakan, menilai tren bullish dengan hubungan ukuran harga dengan EMA, harga di atas EMA dianggap sebagai tren naik, harga di bawah EMA dianggap sebagai tren turun.

3. Tanda Daerah Multi Ruang

Dilihat dari dua titik tertinggi dan terendah di garis K:

  • Daerah HH (Daerah Tinggi) 2 garis K berturut-turut
  • LL area ((Lower Low area) 2 garis K berturut-turut titik rendah rendah inovasi rendah
  • Daerah LH ((Daerah Tinggi Rendah) 1 titik tinggi K-baris terakhir adalah titik tinggi inovasi, titik tinggi K-baris sekunder adalah titik balik, dan merupakan titik tinggi penurunan
  • HL area ((Higher Low area) 1 garis K terendah baru-baru ini low inovasi, sub-garis K terendah reversal, rebound low

4. ATR Stop Tracking

Hitung nilai ATR untuk 14 siklus, kalikan dengan faktor 2 menjadi stop loss untuk strategi ini.

5. Masuk dan Keluar

Mengamati hubungan harga dengan tinggi dan rendahnya Kline hari sebelumnya. Bila harga lebih tinggi dari tinggi hari sebelumnya, maka akan ada sinyal multihead; Bila harga lebih rendah dari rendah hari sebelumnya, maka akan ada sinyal kosong.

Analisis Keunggulan

  1. Menggunakan berbagai indikator untuk mengidentifikasi tren dan area reversal utama untuk meningkatkan probabilitas keuntungan.
  2. ATR Stop Loss adalah metode yang efektif untuk mengontrol risiko kerugian tunggal.
  3. Keterlambatan masuk menentukan sinyal yang efektif dan mengurangi kemungkinan transaksi yang salah.

Analisis risiko

  1. Bergantung pada indikator teknis saja, tanpa menggabungkan informasi mendasar, mungkin melewatkan informasi penting yang menyebabkan kegagalan perdagangan.
  2. ATR stop loss mungkin terganggu dalam situasi yang sangat besar sehingga menyebabkan kerugian.
  3. Dalam tren yang bergoyang, sinyal EMA untuk membalikkan perdagangan sering terjadi, yang dapat menyebabkan overtrading.

Solusi untuk Mengatasi Risiko:

  1. Ini adalah data ekonomi besar yang digabungkan dengan penilaian kebijakan untuk menentukan operasi.
  2. Faktor kerusakan ATR dapat diperluas sesuai dengan kebutuhan untuk memastikan ruang yang cukup.
  3. Sesuaikan parameter periodik dari ATR yang rusak untuk menghindari terlalu sensitif pada getaran.

Arah optimasi

  1. Dalam kombinasi dengan indikator teknis lainnya seperti MACD, RSI, dan lain-lain untuk menentukan waktu masuk.
  2. Uji kombinasi dari parameter siklus dan parameter koefisien yang berbeda untuk mencari parameter optimal.
  3. Untuk menghindari sinyal yang tersumbat, pertimbangkan untuk menambahkan filter penembusan ulang.
  4. Parameter pengoptimalan dinamis menggunakan metode seperti pembelajaran mesin.

Meringkaskan

Strategi ini mengintegrasikan analisis permintaan dan penawaran, penilaian tren, identifikasi reversal, dan modul manajemen kerugian untuk mengidentifikasi peluang pasar yang berbalik di wilayah kunci. Strategi ini merupakan strategi yang efektif untuk melacak tren dan berdagang dengan kontra.

Kode Sumber Strategi
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-20 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Supply and Demand Zones with EMA and Trailing Stop", shorttitle="SD Zones", overlay=true)

showBuySignals = input(true, title="Show Buy Signals", group="Signals")
showSellSignals = input(true, title="Show Sell Signals", group="Signals")
showHLZone = input(true, title="Show HL Zone", group="Zones")
showLHZone = input(true, title="Show LH Zone", group="Zones")
showHHZone = input(true, title="Show HH Zone", group="Zones")
showLLZone = input(true, title="Show LL Zone", group="Zones")

emaLength = input(200, title="EMA Length", group="EMA Settings")
atrLength = input(14, title="ATR Length", group="Trailing Stop")
atrMultiplier = input(2, title="ATR Multiplier", group="Trailing Stop")

// Function to identify supply and demand zones
getZones(src, len, mult) =>
    base = request.security(syminfo.tickerid, "D", close)
    upper = request.security(syminfo.tickerid, "D", high)
    lower = request.security(syminfo.tickerid, "D", low)
    multiplier = request.security(syminfo.tickerid, "D", mult)
    zonetype = base + multiplier * len
    zone = src >= zonetype
    [zone, upper, lower]

// Identify supply and demand zones
[supplyZone, _, _] = getZones(close, high[1] - low[1], 1)
[demandZone, _, _] = getZones(close, high[1] - low[1], -1)

// Plot supply and demand zones
bgcolor(supplyZone ? color.new(color.red, 80) : na)
bgcolor(demandZone ? color.new(color.green, 80) : na)

// EMA with Linear Weighted method
ema = ta.ema(close, emaLength)

// Color code EMA based on its relation to candles
emaColor = close > ema ? color.new(color.green, 0) : close < ema ? color.new(color.red, 0) : color.new(color.yellow, 0)

// Plot EMA
plot(ema, color=emaColor, title="EMA")

// Entry Signal Conditions after the third candle
longCondition = ta.crossover(close, high[1]) and (bar_index >= 2)
shortCondition = ta.crossunder(close, low[1]) and (bar_index >= 2)

// Trailing Stop using ATR
atrValue = ta.atr(atrLength)
trailStop = close - atrMultiplier * atrValue

// Strategy Entry and Exit
if (longCondition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("TrailStop", from_entry="Buy", loss=trailStop)

if (shortCondition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("TrailStop", from_entry="Sell", loss=trailStop)

// Plot Entry Signals
plotshape(series=showBuySignals ? longCondition : na, title="Buy Signal", color=color.new(color.green, 0), style=shape.triangleup, location=location.belowbar)
plotshape(series=showSellSignals ? shortCondition : na, title="Sell Signal", color=color.new(color.red, 0), style=shape.triangledown, location=location.abovebar)

// Plot Trailing Stop
plot(trailStop, color=color.new(color.red, 0), title="Trailing Stop")

// Plot HH, LL, LH, and HL zones
plotshape(series=showHHZone and ta.highest(high, 2)[1] and ta.highest(high, 2)[2] ? 1 : na, title="HH Zone", color=color.new(color.blue, 80), style=shape.triangleup, location=location.abovebar)
plotshape(series=showLLZone and ta.lowest(low, 2)[1] and ta.lowest(low, 2)[2] ? 1 : na, title="LL Zone", color=color.new(color.blue, 80), style=shape.triangledown, location=location.belowbar)
plotshape(series=showLHZone and ta.highest(high, 2)[1] and ta.lowest(low, 2)[2] ? 1 : na, title="LH Zone", color=color.new(color.orange, 80), style=shape.triangleup, location=location.abovebar)
plotshape(series=showHLZone and ta.lowest(low, 2)[1] and ta.highest(high, 2)[2] ? 1 : na, title="HL Zone", color=color.new(color.orange, 80), style=shape.triangledown, location=location.belowbar)