Strategi Mengikuti Tren Rata-rata Pergerakan Saluran Dinamis


Tanggal Pembuatan: 2024-02-22 15:51:48 Akhirnya memodifikasi: 2024-02-22 15:51:48
menyalin: 0 Jumlah klik: 577
1
fokus pada
1617
Pengikut

Strategi Mengikuti Tren Rata-rata Pergerakan Saluran Dinamis

Ringkasan

Strategi ini dirancang berdasarkan prinsip pelacakan tren saluran dinamis dan garis rata. Ini menghitung saluran dinamis harga, menilai arah tren harga melalui jalur naik dan turun, digabungkan dengan dispersi harga filter garis rata, menghasilkan sinyal perdagangan. Strategi ini berlaku untuk perdagangan tren garis pendek tengah.

Prinsip

Strategi ini didasarkan pada prinsip-prinsip berikut:

  1. Perhitungan saluran harga dinamis. Garis tengah saluran dihitung melalui harga tertinggi dan terendah. Garis atas saluran adalah garis tengah + garis rata-rata dispersi harga, dan garis bawah saluran adalah garis tengah - garis rata-rata dispersi harga.

  2. Menentukan arah tren. Ini didefinisikan sebagai bullish ketika harga naik ke atas dan turun ketika harga turun ke bawah.

  3. Hujan gelombang. Hujan yang disebabkan oleh fluktuasi acak harga gelombang dengan menggunakan rata-rata tingkat dispersi harga untuk periode tertentu.

  4. menghasilkan sinyal perdagangan. Ketika bullish, menghasilkan sinyal beli ketika harga penutupan siklusnya lebih rendah dari harga pembukaan; ketika bearish, menghasilkan sinyal jual ketika harga penutupan siklusnya lebih tinggi dari harga pembukaan.

Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  1. Di sisi lain, saluran dinamis dapat menangkap tren harga secara real-time.
  2. Filter rata-rata mengurangi sinyal palsu;
  3. Menggabungkan arah tren dan arah entitas K-line untuk menghasilkan sinyal perdagangan, untuk menghindari kebocoran.

Risiko

Strategi ini juga memiliki risiko sebagai berikut:

  1. Pemilihan param yang salah dapat menyebabkan optimasi yang berlebihan;
  2. Ini adalah salah satu dari beberapa hal yang dapat menyebabkan gangguan pada sistem saraf pusat.
  3. Tidak bisa memprediksi perubahan harga yang drastis.

Solusi yang sesuai:

  1. Params memilih dan menguji secara ketat;
  2. Ini adalah salah satu dari beberapa hal yang dapat dilakukan untuk mengurangi dampak dari gempa bumi.
  3. Pengaturan Stop Loss Stop Stop, pengendalian risiko

Arah optimasi

Strategi ini dapat dioptimalkan dengan:

  1. pengujian stabilitas dari berbagai parameter siklus;
  2. Meningkatkan penilaian pada indikator volume atau volatilitas;
  3. Menggabungkan bandwidth, channel, dan lain-lain untuk menentukan masuk dan keluar.

Meringkaskan

Strategi ini mengintegrasikan ide-ide dari saluran dinamis dan penilaian tren linier, yang bekerja dengan baik dalam menangkap arah tren di garis tengah dan pendek. Namun, ada juga keterbatasan tertentu yang memerlukan pengujian lebih lanjut dan pengoptimalan untuk menyesuaikan lebih banyak situasi pasar.

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


//@version=2
strategy("Noro's Bands Strategy v1.0", shorttitle = "NoroBands str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
len = input(20, defval = 20, minval = 2, maxval = 200, title = "Period")
color = input(true, "Color")
needbb = input(false, defval = false, title = "Show Bands")
needbg = input(false, defval = false, title = "Show Background")
src = close

//PriceChannel 1
lasthigh = highest(src, len)
lastlow = lowest(src, len)
center = (lasthigh + lastlow) / 2

//dist
dist = abs(src - center)
distsma = sma(dist, len)
hd = center + distsma
ld = center - distsma

//Trend
trend = close < ld and high < hd ? -1 : close > hd and low > ld ? 1 : trend[1]

//Lines
colo = needbb == false ? na : black
plot(hd, color = colo, linewidth = 1, transp = 0, title = "High band")
plot(center, color = colo, linewidth = 1, transp = 0, title = "center")
plot(ld, color = colo, linewidth = 1, transp = 0, title = "Low band")

//Background
col = needbg == false ? na : trend == 1 ? lime : red
bgcolor(col, transp = 90)

//up =  and trend == 1 ? 1 : 0
//dn =  and trend == -1 ? 1 : 0 

up = close < hd and trend == 1 and (close < open or color == false) ? 1 : 0
dn = close > ld and trend == -1 and (close > open or color == false) ? 1 : 0 

longCondition = up == 1
if (longCondition)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

shortCondition = dn == 1
if (shortCondition)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)