Strategi kombinasi pembalikan rata-rata pergerakan ganda dan trailing stop ATR


Tanggal Pembuatan: 2024-01-26 11:26:40 Akhirnya memodifikasi: 2024-01-26 11:26:40
menyalin: 0 Jumlah klik: 411
1
fokus pada
1237
Pengikut

Strategi kombinasi pembalikan rata-rata pergerakan ganda dan trailing stop ATR

Ringkasan

Strategi yang menggabungkan reversal biner dan ATR trailing stop adalah strategi perdagangan kuantitatif yang sangat praktis. Strategi ini pertama-tama menggunakan dead fork dan golden cross yang terbentuk dari biner untuk menilai tren pasar dan titik balik. Strategi ini juga akan menggabungkan rata-rata gelombang nyata untuk mengatur trail stop, sambil mengontrol risiko dan menjamin keuntungan.

Prinsip Strategi

Strategi berbalik dua garis lurus

Strategi berbalik dua garis rata menggunakan persilangan garis cepat dan lambat untuk menilai tren pasar. Ketika garis cepat dari atas ke bawah melewati garis lambat, formasi dead fork, menunjukkan bahwa pasar bergeser ke bawah; Ketika garis cepat dari bawah ke atas melewati garis lambat, formasi golden cross, menunjukkan bahwa pasar bergeser ke bawah ke bawah.

Secara khusus, strategi ini menggunakan garis cepat indikator STOCH 9 hari sebagai garis cepat, dan EMA 3 hari sebagai garis lambat. Apabila close lebih rendah dari close hari sebelumnya, dan garis cepat lebih tinggi dari 50 dan melewati garis lambat, maka posisi kosong; Jika close lebih tinggi dari close hari sebelumnya, dan garis cepat lebih rendah dari 50 dan melewati garis lambat, maka posisi kosong lebih banyak.

Strategi ATR Trailing Stop

Strategi ATR Trailing Stop menggunakan rata-rata gelombang nyata untuk mengatur titik berhenti. Indikator ATR dapat secara efektif mencerminkan volatilitas jangka pendek pasar. Strategi ini mengatur trail stop berdasarkan nilai ATR, dan stop loss keluar ketika harga berbalik.

Secara khusus, strategi memilih ATR 5 hari, dan titik stop loss ditetapkan untuk menutup dikurangi 3.5 kali ATR. Apabila harga mencapai titik stop loss tersebut, maka posisi ditutup.

Analisis Keunggulan

Kombinasi strategi ATR trailing stop dan double line reversal menggabungkan keuntungan dari strategi trailing stop untuk menilai tren dan reversal, serta keuntungan dari strategi ATR trail stop untuk mengendalikan risiko, menjadikannya strategi yang sangat praktis.

Secara khusus, strategi ini memiliki keuntungan sebagai berikut:

  1. Dengan menggunakan dead fork dan golden cross yang terbentuk dari dua garis rata untuk menilai titik-titik pergantian tren pasar, sinyal pembalikan dapat dinilai secara akurat.

  2. Kombinasi dengan indikator STOCH untuk mengkonfirmasi sinyal reversal dan menghindari sinyal yang salah.

  3. ATR trailing stop mengatur stop loss yang fleksibel sesuai dengan fluktuasi pasar, untuk mengunci keuntungan maksimal.

  4. Strategi ini menggabungkan berbagai indikator dan metode analisis teknis, yang digunakan dalam kombinasi untuk membuat strategi lebih kuat.

  5. Strategi yang jelas dan mudah dimengerti, parameter yang disesuaikan dengan fleksibilitas, dan mudah dioperasikan secara langsung.

Analisis risiko

Meskipun ada banyak keuntungan dari strategi ini, ada beberapa risiko yang perlu diperhatikan:

  1. Sinyal yang dihasilkan oleh garis rata ganda mungkin memiliki lag, tidak dapat membeli dan menjual dengan akurat sebelum dan sesudah titik balik. Periode garis rata dapat dipersingkat sesuai atau dioptimalkan dalam kombinasi dengan indikator lain.

  2. Indikator ATR tidak sensitif terhadap fluktuasi besar pasar dan tidak dapat memperbarui titik stop loss tepat waktu. Anda dapat mempertimbangkan untuk melakukan penyesuaian dalam kombinasi dengan indikator momentum atau indikator volatilitas.

  3. Penggunaan kombinasi dari berbagai parameter dan kondisi meningkatkan kompleksitas strategi. Parameter yang tidak tepat dapat menyebabkan perdagangan yang terlalu radikal dan meningkatkan risiko. Parameter harus dievaluasi dengan hati-hati dan disesuaikan secara bertahap.

Arah optimasi

Berdasarkan analisis risiko di atas, strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Menyesuaikan parameter siklus rata-rata, mempersingkat siklus untuk menangkap kesempatan reversal lebih awal.

  2. Tambahkan indikator lain untuk menilai sinyal pembalikan, seperti MACD, KD, dan lain-lain, untuk membentuk konfirmasi ganda.

  3. Mengubah siklus ATR secara dinamis atau memperkenalkan volatilitas pasar, dan memperbarui titik stop loss secara real-time.

  4. Evaluasi perbedaan antara pasar saham dan pasar berjangka, masing-masing menyesuaikan parameter agar lebih sesuai dengan karakteristik kedua pasar.

  5. Dengan penambahan biaya transaksi dan slip point pada saat retrospeksi, strategi ini lebih mendekati lingkungan perdagangan di bursa.

  6. Anda dapat mempertimbangkan untuk memasukkan model pembelajaran mesin untuk mengoptimalkan beberapa parameter secara dinamis.

Meringkaskan

Strategi kombinasi trailing stop dan ATR adalah strategi kuantitatif yang efektif dan praktis. Strategi ini menggabungkan keuntungan ganda dari pengertian trailing stop dan ATR untuk mengontrol risiko. Strategi ini dapat mengurangi kerugian yang tidak perlu sambil memastikan keuntungan.

Kode Sumber Strategi
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 17/05/2019
// This is combo strategies for get 
// a cumulative signal. Result signal will return 1 if two strategies 
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Secon strategy
// Average True Range Trailing Stops Strategy, by Sylvain Vervoort 
// The related article is copyrighted material from Stocks & Commodities Jun 2009 
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos


ATR_TrailingStop(nATRPeriod, nATRMultip) =>
    xATR = atr(nATRPeriod)
    nLoss = nATRMultip * xATR
    pos = 0.0
    xATRTrailingStop = 0.0
    xATRTrailingStop := iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), close - nLoss),
                         iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), close + nLoss), 
                           iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss)))
    pos := iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1,
    	     iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) 

    pos

strategy(title="Combo Backtest 123 Reversal & Average True Range Trailing Stops", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
nATRPeriod = input(5)
nATRMultip = input(3.5)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posATR_TrailingStop = ATR_TrailingStop(nATRPeriod, nATRMultip)
pos = iff(posReversal123 == 1 and posATR_TrailingStop == 1 , 1,
	   iff(posReversal123 == -1 and posATR_TrailingStop == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? red: possig == 1 ? green : blue )