
Ringkasan
Strategi ini menggunakan indikator teknis seperti indeks moving average (EMA), harga tertinggi, harga terendah, dan rata-rata true range (ATR) untuk mengidentifikasi arah tren saat ini dengan menilai hubungan harga dengan EMA, harga tertinggi, dan harga terendah, membeli saat harga naik melewati harga terendah, dan menjual saat harga turun melewati harga tertinggi atau mencapai titik resistensi dinamis, untuk menangkap tren, dan mendapatkan keuntungan tambahan.
Prinsip-prinsip Strategi
- Perhitungan ATR digunakan untuk mengukur volatilitas pasar dan memberikan dasar untuk membangun saluran dinamis.
- Perhitungan harga tertinggi dan terendah sebagai dasar untuk menilai arah tren.
- EMA_HL, yaitu harga tertinggi dan harga terendah EMA, dihitung sebagai sumbu tengah dari saluran dinamis.
- Hitung EMA_HIGHEST dan EMA_LOWEST, yaitu pada dasar EMA_HL ditambah dikurangi ATR dikalikan dengan rasio tertentu yang diperoleh.
- Hitung SELL_LINE, yaitu, berdasarkan harga tertinggi ditambah ATR dikalikan dengan tingkat resistensi dinamis yang diperoleh.
- Pertimbangan sinyal multihead: menghasilkan sinyal beli ketika EMA_LOWEST menembus harga terendah ke atas dan harga penutupan berada di bawah EMA_MID
- Tentukan sinyal kosong: menghasilkan sinyal jual ketika EMA_HIGHEST menembus harga tertinggi ke bawah dan harga penutupan lebih tinggi dari EMA_MID, atau ketika harga tertinggi menyentuh SELL_LINE
Keunggulan strategi
- Dengan menggunakan indikator EMA, harga tertinggi, harga terendah, dan lain-lain untuk menilai tren, sinyal memiliki keandalan yang tinggi.
- Memperkenalkan ATR sebagai standar untuk mengukur volatilitas, membangun saluran dinamis, dan beradaptasi dengan kondisi pasar yang berbeda.
- Setel resistance level dinamis SELL_LINE untuk mengunci keuntungan dan mengendalikan risiko penarikan.
- Parameter dapat disesuaikan, beradaptasi dengan berbagai varietas dan periode, memiliki fleksibilitas dan fleksibilitas tertentu.
Risiko strategis
- Pengidentifikasian tren mungkin terlambat, sehingga waktu masuk tidak ideal.
- Setting parameter yang tidak tepat dapat menyebabkan sinyal sering, meningkatkan biaya transaksi.
- Untuk pasar yang bergoyang, strategi mungkin tidak bekerja dengan baik dan perlu digabungkan dengan metode lain.
- Dalam situasi ekstrim, seperti pergeseran disk yang cepat, strategi ini mungkin tidak akan berhasil, dan Anda harus mengatur stop loss.
Strategi untuk mengoptimalkan arah
- Dengan memperkenalkan lebih banyak indikator, seperti volume transaksi, tingkat fluktuasi, dan lain-lain, dimensional penilaian tren diperkaya, meningkatkan keandalan sinyal.
- Optimalkan parameter, seperti ATR, siklus EMA, dan lain-lain, untuk menemukan kombinasi parameter yang optimal dan meningkatkan stabilitas strategi.
- Bergabung dengan manajemen posisi, seperti menyesuaikan posisi sesuai dengan dinamika ATR, untuk mengontrol risiko tunggal.
- Tetapkan stop loss dan stop loss, kendalikan kerugian maksimum dan keuntungan maksimum per unit, tingkatkan rasio risiko / keuntungan.
- Kombinasi dengan strategi lain, seperti strategi penembusan, strategi regresi rata-rata, dan lain-lain, membentuk portofolio strategi, meningkatkan stabilitas keseluruhan.
Kesimpulannya
Strategi ini menggunakan indikator teknis seperti EMA, harga tertinggi, harga terendah, digabungkan dengan ATR untuk membangun saluran dinamis untuk menghasilkan sinyal perdagangan dengan menerobos harga tertinggi dan harga terendah untuk menangkap tren. Strategi ini merupakan strategi pelacakan tren yang sederhana dan praktis.
Kode Sumber Strategi
/*backtest
start: 2023-05-05 00:00:00
end: 2024-05-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Maboi_q
//@version=5
strategy("buy sell Trend", overlay=true)
atr_length = input.int(defval=14, title='atr length')
highest_length = input.int(defval=60, title='highest length')
highest_s_length = input.int(defval=60, title='sell highest length')
lowest_length = input.int(defval=30, title='lowest length')
sell_l_length = input.int(defval=55, title='sell line length')
f = 2.382
f2 = 5.618
atr = ta.atr(atr_length)
highest = ta.highest(highest_length)
lowest = ta.lowest(lowest_length)
f_atr = atr * f
ema_hl = ta.ema((highest[1] + lowest[1]) / 2, 14)
ema_highest = ema_hl + f_atr
ema_lowest = ema_hl - f_atr
ema_mid = (ema_highest + ema_lowest) / 2
bs_hi = ta.highest(highest_s_length)
f_atr2 = atr * f2
sell_line = ta.ema(bs_hi[1] + f_atr2, sell_l_length)
buy_cond = ta.crossover(ema_lowest, lowest) and close < ema_mid
sell_cond = (ta.crossunder(ema_highest, highest) and close > ema_mid) or high >= sell_line
if buy_cond
strategy.entry('BUY', strategy.long)
if sell_cond
strategy.entry('SELL', strategy.short)
plot(sell_line, color=color.new(color.maroon, 50))
plot(highest, color=color.new(color.red, 50))
plot(lowest, color=color.new(color.green, 50))
plot(ema_highest, color=color.new(color.blue, 50))
// plot(ema_mid, color=color.new(color.gray, 50))
plot(ema_lowest, color=color.new(color.blue, 50))
plotshape(buy_cond, title='buy', style=shape.triangleup, location=location.belowbar,
color=color.green, textcolor=color.green, size=size.tiny)
plotshape(sell_cond, title='sell', style=shape.triangledown, location=location.abovebar,
color=color.red, textcolor=color.red, size=size.tiny)