Volatility Force Strategi Perdagangan Terobosan

Penulis:ChaoZhang, Tanggal: 2023-10-26 16:17:17
Tag:

img

Gambaran umum

Strategi ini menggunakan rata-rata bergerak, ATR, Bollinger Bands untuk penilaian tren dan perdagangan breakout, dikombinasikan dengan indeks kekuatan untuk waktu, termasuk dalam strategi perdagangan breakout.

Logika Strategi

  1. Menghitung garis tengah, atas dan bawah Bollinger Bands. garis tengah adalah sma dari harga penutupan, atas dan bawah adalah garis tengah ± stdDev.

  2. Hitung ATR cepat dan lambat. ATR cepat memiliki periode 20, ATR lambat memiliki periode 50.

  3. Menghitung indeks kekuatan XFORCE, yang kumulatif dari volume * (tutup - penutupan sebelumnya).

  4. Hukum sinyal panjang: XFORCE cepat melintasi atas XFORCE lambat, dan ATR cepat > ATR lambat, dan dekat > terbuka.

  5. Hukum sinyal pendek: cepat XFORCE menyeberang di bawah lambat XFORCE, dan cepat ATR > lambat ATR, dan dekat < terbuka.

  6. Pergi panjang ketika sinyal panjang dipicu, pergi pendek ketika sinyal pendek dipicu.

Analisis Keuntungan

  1. Rata-rata bergerak memberikan tren, Bollinger Bands memberikan titik istirahat.

  2. ATR menilai volatilitas, menerapkan perdagangan volatilitas.

  3. Indeks kekuatan menentukan arah kekuatan, menerapkan kekuatan breakout.

  4. Kombinasi dari beberapa indikator memberikan penilaian yang komprehensif.

  5. Aturan yang jelas dan sederhana, mudah dimengerti dan diterapkan.

  6. Hasil backtest yang baik, keuntungan yang stabil.

Analisis Risiko

  1. Bollinger Bands dapat menghasilkan sinyal yang salah jika lebarnya tidak tepat.

  2. Parameter ATR yang salah tidak bisa menangkap volatilitas pasar.

  3. Indeks kekuatan memiliki efek terbatas, tidak dapat menentukan pembalikan tren nyata.

  4. Sulit untuk menyesuaikan parameter dan bobot untuk beberapa indikator.

  5. Sinyal pecah mungkin tidak akurat, divergensi mungkin terjadi.

  6. Drawdown mungkin besar, bisa menggunakan stop loss untuk mengontrolnya.

Arahan Optimasi

  1. Mengoptimalkan parameter Bollinger Bands untuk periode dan instrumen yang berbeda.

  2. Mengoptimalkan parameter ATR untuk lebih menangkap volatilitas.

  3. Tambahkan indikator tren seperti MACD untuk validasi tren.

  4. Tambahkan strategi stop loss seperti trailing stop untuk mengendalikan drawdown.

  5. Menggunakan algoritma AI untuk menilai sinyal pembalikan.

  6. Gabungkan beberapa kerangka waktu untuk penilaian yang komprehensif dan mengurangi sinyal palsu.

Ringkasan

Strategi ini mengintegrasikan moving average, ATR, Bollinger Bands dan Force Index untuk membentuk sistem perdagangan breakout yang lengkap. Perbaikan lebih lanjut pada optimasi parameter, menambahkan filter tren, strategi stop loss dan algoritma AI dapat meningkatkan stabilitas dan profitabilitas.


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

//@version=2
strategy("yuthavithi volatility based force trade scalper strategy", overlay=true)

fast = input(3, minval= 1, title="Fast")
slow = input(20, minval = 1, title = "Slow")
atrFast = input(20, minval = 1, title = "ATR Fast")
atrSlow = input(50, minval = 1, title = "ATR Slow")

len = input(20, minval=1, title="Length")
multiplier = input(2, minval=1, title="multiplier")
src = input(close, title="Source")
bbMid = sma(src, len)
plot(bbMid, color=blue)

atrFastVal = atr(atrFast)
atrSlowVal = atr(atrSlow)
stdOut = stdev(close, len)
bbUpper = bbMid + stdOut * multiplier
bbLower = bbMid - stdOut * multiplier
plot(bbUpper, color = (atrFastVal > atrSlowVal ? red : silver))
plot(bbLower, color = (atrFastVal > atrSlowVal ? red : silver))


force = volume * (close -  nz(close[1]))
xforce = cum(force)
xforceFast = ema(xforce, fast)
xforceSlow = ema(xforce, slow)

bearish = ((xforceFast < xforceSlow) and (atrFastVal > atrSlowVal)) and ((xforceFast[1] > xforceSlow[1]) or (atrFastVal[1] < atrSlowVal[1])) and (close < open)
bullish = ((xforceFast > xforceSlow) and (atrFastVal > atrSlowVal)) and ((xforceFast[1] < xforceSlow[1]) or (atrFastVal[1] < atrSlowVal[1])) and (close > open)


if (bullish)
    strategy.entry("Buy", strategy.long)

if (bearish)
    strategy.entry("Sell", strategy.short)

Lebih banyak