Strategi Poligon Rata-rata Bergerak


Tanggal Pembuatan: 2023-10-31 14:53:50 Akhirnya memodifikasi: 2023-10-31 14:53:50
menyalin: 1 Jumlah klik: 674
1
fokus pada
1617
Pengikut

Strategi Poligon Rata-rata Bergerak

Ringkasan

Strategi moving average multilateral adalah strategi untuk membangun multilateral melalui pergerakan rata-rata dari beberapa periode yang berbeda, dan untuk menembus multilateral sebagai sinyal perdagangan. Strategi ini secara komprehensif mempertimbangkan beberapa faktor siklus waktu, dapat secara efektif menyaring kebisingan pasar dan menangkap tren utama.

Prinsip Strategi

Strategi ini menggunakan input EMA rata-rata dari periode yang berbeda, seperti EMA 3-periode, 7-periode, dan 13-periode, dan menggambarnya pada grafik harga untuk membentuk saluran berbentuk polygon. Ini menghasilkan banyak sinyal ketika harga melewati beberapa EMA rata-rata di atas; menghasilkan sinyal kosong ketika harga melewati beberapa EMA rata-rata di bawah. Ini dapat menghilangkan banyak false breakout.

Dalam kode dengan close>ema1 and ema1>ema2 and ema2>ema3 menentukan sinyal naik, close

Keunggulan Strategis

Keuntungan terbesar dari strategi ini adalah kemampuan untuk secara efektif menangkap arah tren utama, menggunakan beberapa garis rata-rata bergerak untuk membangun mekanisme penyaringan, menghindari dampak dari kebisingan pasar jangka pendek, mengurangi sinyal palsu. Stop loss bergerak memungkinkan stop loss tepat waktu untuk melindungi keuntungan.

Risiko dan Solusi

Risiko utama dari strategi ini adalah tidak dapat menentukan titik balik dari tren, dan jika tren berbalik, mungkin terjadi kerugian karena berlawanan dengan posisi. Selain itu, pengaturan kombinasi rata-rata yang tidak tepat dapat menyebabkan frekuensi perdagangan yang terlalu tinggi atau penundaan sinyal.

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Optimalkan parameter periodik dari moving averages untuk menemukan kombinasi optimal

  2. Tambahkan indikator sinyal reversal seperti RSI, MACD, dan lain-lain di titik-titik perubahan tren untuk menghentikan kerugian tepat waktu

  3. Optimalkan amplitudo dan nilai bias dari stop loss bergerak, mengurangi probabilitas stop loss yang dipicu

  4. Optimalisasi untuk parameter varietas yang berbeda, meningkatkan adaptasi strategi

Meringkaskan

Secara keseluruhan, strategi multi sisi bergerak adalah strategi pelacakan tren yang andal dan efektif. Kelebihannya adalah bahwa strategi ini dapat menangkap arah tren utama dan dapat menyaring kebisingan secara signifikan. Namun, ada juga masalah dengan kurangnya identifikasi pembalikan.

Kode Sumber Strategi
/*backtest
start: 2023-09-30 00:00:00
end: 2023-10-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Crypto-Oli

//@version=4
strategy("BLANK Strategy + TSL", initial_capital=5000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, pyramiding=1, commission_value=0.075, overlay=true)

////////////////////////////////////////////////////////////////////////////////
// BACKTESTING RANGE
 
// From Date Inputs
fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear = input(defval = 2019, title = "From Year", minval = 1970)
 
// To Date Inputs
toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
toYear = input(defval = 2020, title = "To Year", minval = 1970)
 
// Calculate start/end date and time condition
startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00)
finishDate = timestamp(toYear, toMonth, toDay, 00, 00)
time_cond = true
 
////////////////////////////////////////////////////////////////////////////////


/// YOUR INPUTS BELOW - DELET EXAPLES ///


ema1=ema(close,input(3))
ema2=ema(close,input(7))
ema3=ema(close,input(13))


/// PLOTS IF YOU NEED BELOW - DELET EXAPLES ///


plot(ema1, "EMA1", color.yellow)
plot(ema2, "EMA2", color.white)
plot(ema3, "EMA3", color.blue)


/// YOUR CONDITIONS BELOW - DELET EXAPLES ///


longCondition = close>ema1 and ema1>ema2 and ema2>ema3 and time_cond
shortCondition = close<ema1 and ema1<ema2 and ema2<ema3 and time_cond

/// EXECUTION ///


if (longCondition)
    strategy.entry("Long", strategy.long)
strategy.exit("Long Exit", "Long", trail_points = close * 0.05 / syminfo.mintick, trail_offset = close * 0.02 / syminfo.mintick)

if (shortCondition)
    strategy.entry("Short", strategy.short)
strategy.exit("Short Exit", "Short", trail_points = close * 0.05 / syminfo.mintick, trail_offset = close * 0.02 / syminfo.mintick)