Strategi Saluran Rata-rata Bergerak Tiga untuk Bersabar Menambang Informasi Berharga dari Garis Lilin

Penulis:ChaoZhang, Tanggal: 2024-02-01 11:12:47
Tag:

img

Gambaran umum

Strategi saluran rata-rata bergerak tiga kali menggunakan beberapa indikator rata-rata bergerak untuk menganalisis grafik candlestick secara mendalam dan mengungkap aturan tersembunyi di balik fluktuasi harga, sehingga mencapai perdagangan arbitrage berisiko rendah.

Prinsip-prinsip

Strategi ini menumpuk beberapa metrik EMA di atas Bollinger Bands untuk membangun saluran harga dan menemukan pola dalam volatilitas harga.

  1. Indikator BodyResistanceChannel digunakan untuk memetakan tingkat resistensi tubuh lilin.
  2. Indikator Support/Resistance dimanfaatkan untuk menarik level support dan resistance multi-day.
  3. Sistem EMA ganda membantu menentukan arah tren.
  4. Indikator Hull MA meratakan kurva harga.

Atas dasar ini, peluang pembalikan diidentifikasi melalui pengenalan pola untuk merumuskan strategi arbitrase.

Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Membangun saluran harga dengan beberapa EMAS membantu menentukan tren harga dengan jelas.
  2. Indikator Hull MA secara efektif merata keluar price breakouts.
  3. Kombinasi pola pembalikan dan indikator saluran memungkinkan perdagangan dengan probabilitas tinggi dan risiko rendah.
  4. Membangun sistem indikator multi-lapisan memastikan sinyal perdagangan yang stabil dan dapat diandalkan.

Analisis Risiko

Risiko potensial dari strategi ini juga ada:

  1. Risiko kerugian besar ketika saluran harga dilanggar. Solusinya adalah mengadopsi stop loss bergerak untuk mengurangi kerugian per perdagangan.
  2. Risiko sinyal yang salah ketika pengakuan pola pembalikan salah. Solusinya adalah optimasi parameter untuk meningkatkan akurasi pola.
  3. Risiko kualitas sinyal memburuk ketika parameter indikator tidak cocok.

Arahan Optimasi

Arah optimasi utama meliputi:

  1. Mengoptimalkan kombinasi parameter periode EMA agar lebih sesuai dengan kondisi pasar.
  2. Sesuaikan tingkat stop loss untuk memaksimalkan return per trade sambil meminimalkan risiko kerugian per trade.
  3. Memperkenalkan modul ukuran posisi dinamis berdasarkan volatilitas untuk mengelola risiko secara efektif.
  4. Menggunakan teknologi pembelajaran mendalam untuk mengungkap lebih banyak pola harga dan meningkatkan kualitas sinyal.

Kesimpulan

Strategi saluran rata-rata bergerak tiga kali lipat secara mendalam menambang keteraturan pergerakan harga dengan stabilitas dan efisiensi, layak untuk aplikasi jangka panjang dan optimasi berkelanjutan.


/*backtest
start: 2023-01-25 00:00:00
end: 2024-01-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//╭╮╱╱╭╮╭╮╱╱╭╮
//┃╰╮╭╯┃┃┃╱╱┃┃
//╰╮┃┃╭┻╯┣╮╭┫╰━┳╮╭┳━━╮
//╱┃╰╯┃╭╮┃┃┃┃╭╮┃┃┃┃━━┫
//╱╰╮╭┫╰╯┃╰╯┃╰╯┃╰╯┣━━┃
//╱╱╰╯╰━━┻━━┻━━┻━━┻━━╯
//╭━━━┳╮╱╱╱╱╱╱╱╭╮
//┃╭━╮┃┃╱╱╱╱╱╱╱┃┃
//┃┃╱╰┫╰━┳━━┳━╮╭━╮╭━━┫┃
//┃┃╱╭┫╭╮┃╭╮┃╭╮┫╭╮┫┃━┫┃
//┃╰━╯┃┃┃┃╭╮┃┃┃┃┃┃┃┃━┫╰╮
//╰━━━┻╯╰┻╯╰┻╯╰┻╯╰┻━━┻━╯
//━╯
// http://www.vdubus.co.uk/
strategy(title='Vdub FX SniperVX3 / Strategy  v3', shorttitle='Vdub_FX_SniperVX3_Strategy', overlay=true, pyramiding=0, initial_capital=1000, currency=currency.USD)

//Candle body resistance Channel-----------------------------//
len = 34
src = input(close, title="Candle body resistance Channel")
out = sma(src, len)
last8h = highest(close, 13)
lastl8 = lowest(close, 13)
bearish = cross(close,out) == 1 and falling(close, 1)
bullish = cross(close,out) == 1 and rising(close, 1)
channel2=input(false, title="Bar Channel On/Off")
ul2=plot(channel2?last8h:last8h==nz(last8h[1])?last8h:na, color=black, linewidth=1, style=linebr, title="Candle body resistance level top", offset=0)
ll2=plot(channel2?lastl8:lastl8==nz(lastl8[1])?lastl8:na, color=black, linewidth=1, style=linebr, title="Candle body resistance level bottom", offset=0)
//fill(ul2, ll2, color=black, transp=95, title="Candle body resistance Channel")

//-----------------Support and Resistance 
RST = input(title='Support / Resistance length:', defval=10) 
RSTT = valuewhen(high >= highest(high, RST), high, 0)
RSTB = valuewhen(low <= lowest(low, RST), low, 0)
RT2 = plot(RSTT, color=RSTT != RSTT[1] ? na : red, linewidth=1, offset=+0)
RB2 = plot(RSTB, color=RSTB != RSTB[1] ? na : green, linewidth=1, offset=0)

//--------------------Trend colour ema------------------------------------------------// 
src0 = close, len0 = input(13, minval=1, title="EMA 1")
ema0 = ema(src0, len0)
direction = rising(ema0, 2) ? +1 : falling(ema0, 2) ? -1 : 0
plot_color = direction > 0  ? lime: direction < 0 ? red : na
plot(ema0, title="EMA", style=line, linewidth=1, color = plot_color)

//-------------------- ema 2------------------------------------------------//
src02 = close, len02 = input(21, minval=1, title="EMA 2")
ema02 = ema(src02, len02)
direction2 = rising(ema02, 2) ? +1 : falling(ema02, 2) ? -1 : 0
plot_color2 = direction2 > 0  ? lime: direction2 < 0 ? red : na
plot(ema02, title="EMA Signal 2", style=line, linewidth=1, color = plot_color2)

//=============Hull MA//
show_hma = input(false, title="Display Hull MA Set:")
hma_src = input(close, title="Hull MA's Source:")
hma_base_length = input(8, minval=1, title="Hull MA's Base Length:")
hma_length_scalar = input(5, minval=0, title="Hull MA's Length Scalar:")
hullma(src, length)=>wma(2*wma(src, length/2)-wma(src, length), round(sqrt(length)))
plot(not show_hma ? na : hullma(hma_src, hma_base_length+hma_length_scalar*6), color=black, linewidth=2, title="Hull MA")

//============ signal Generator ==================================//
Piriod=input('720')
ch1 = request.security(syminfo.tickerid, Piriod, open)
ch2 = request.security(syminfo.tickerid, Piriod, close)
longCondition = crossover(request.security(syminfo.tickerid, Piriod, close),request.security(syminfo.tickerid, Piriod, open))
if (longCondition)
    strategy.entry("BUY", strategy.long)
shortCondition = crossunder(request.security(syminfo.tickerid, Piriod, close),request.security(syminfo.tickerid, Piriod, open))
if (shortCondition)
    strategy.entry("SELL", strategy.short)

///////////////////////////////////////////////////////////////////////////////////////////

Lebih banyak