Sumber daya yang dimuat... Pemuatan...

Strategi Stop Loss Pengamatan Rata-rata Bergerak Ganda

Penulis:ChaoZhang, Tanggal: 2024-02-05 13:45:51
Tag:

img

Gambaran umum

Prinsip-prinsip

  1. Rata-rata bergerak cepat (EMA): Rata-rata bergerak eksponensial 12 hari yang merespons dengan cepat perubahan harga.
  2. Rata-rata Gerak Perlahan (SMA): Rata-rata Gerak Sederhana 45 hari yang menggambarkan tren jangka menengah hingga panjang.
  3. Sinyal beli dihasilkan ketika MA cepat melintasi MA lambat.
  4. Rentang Rata-rata Benar 15 hari (ATR) dihitung sebagai patokan untuk stop loss.
  5. Atur amplitudo stop loss trailing berdasarkan ATR (misalnya 6 x ATR) dan perbarui harga stop secara real time.
  6. Sinyal jual dihasilkan ketika harga turun di bawah harga stop loss.

Strategi ini menggabungkan keuntungan dari mengikuti tren dan manajemen stop loss. Ini dapat melacak tren jangka menengah hingga panjang dan mengendalikan kerugian perdagangan tunggal melalui stop loss.

Analisis Keuntungan

  1. Kombinasi MA secara efektif mengidentifikasi tren dan meningkatkan keandalan sinyal.
  2. Dinamis trailing stop loss tepat waktu menghentikan kerugian untuk menghindari kerusakan dana.
  3. Stop loss berbasis ATR membuat harga stop wajar dan mencegah sensitivitas yang berlebihan.
  4. Logika strategi sederhana dan parameternya fleksibel.

Analisis Risiko

  1. MA memiliki keterlambatan yang mungkin kehilangan kesempatan jangka pendek.
  2. Stop loss yang terlalu longgar merusak profitabilitas.
  3. Stop loss ketat yang berlebihan meningkatkan frekuensi perdagangan dan biaya komisi.
  4. Perubahan volatilitas dapat mempengaruhi stabilitas parameter ATR.

Parameter dapat dioptimalkan untuk menyeimbangkan amplitudo stop loss. Indikator lain juga dapat dikombinasikan untuk meningkatkan waktu masuk.

Arahan Optimasi

  1. Uji lebih banyak kombinasi parameter untuk menemukan MAs optimal.
  2. Sesuaikan pengganda ATR sesuai dengan karakteristik stok tertentu.
  3. Tambahkan kondisi penyaringan seperti indikator volume untuk menghindari perdagangan yang tidak perlu.
  4. Mengumpulkan lebih banyak data historis untuk menguji stabilitas parameter.

Kesimpulan


/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//created by XPloRR 24-02-2018

strategy("XPloRR MA-Buy ATR-MA-Trailing-Stop Strategy",overlay=true, initial_capital=1000,default_qty_type=strategy.percent_of_equity,default_qty_value=100)

testStartYear = input(2005, "Start Year")
testStartMonth = input(1, "Start Month")
testStartDay = input(1, "Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2050, "Stop Year")
testStopMonth = input(12, "Stop Month")
testStopDay = input(31, "Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

testPeriodBackground = input(title="Background", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

emaPeriod = input(12, "Exponential MA")
smaPeriod = input(45, "Simple MA")
stopPeriod = input(12, "Stop EMA")
delta = input(6, "Trailing Stop #ATR")

testPeriod() => true

emaval=ema(close,emaPeriod)
smaval=sma(close,smaPeriod)
stopval=ema(close,stopPeriod)
atr=sma((high-low),15)

plot(emaval, color=blue,linewidth=1)
plot(smaval, color=orange,linewidth=1)
plot(stopval, color=lime,linewidth=1)

long=crossover(emaval,smaval) 
short=crossunder(emaval,smaval)

//buy-sell signal
stop=0
inlong=0
if testPeriod()
    if (long and (not inlong[1]))
        strategy.entry("buy",strategy.long)
        inlong:=1
        stop:=emaval-delta*atr
    else
        stop:=iff((nz(emaval)>(nz(stop[1])+delta*atr))and(inlong[1]),emaval-delta*atr,nz(stop[1]))
        inlong:=nz(inlong[1])
        if ((stopval<stop) and (inlong[1]))
            strategy.close("buy")
            inlong:=0
            stop:=0
else
    inlong:=0
    stop:=0
plot(stop,color=green,linewidth=1)


Lebih banyak