Strategi Pelacakan Pembalikan Faktor Ganda


Tanggal Pembuatan: 2023-12-19 11:09:20 Akhirnya memodifikasi: 2023-12-19 11:09:20
menyalin: 2 Jumlah klik: 545
1
fokus pada
1621
Pengikut

Strategi Pelacakan Pembalikan Faktor Ganda

Ringkasan

Strategi ini merupakan strategi pelacakan reversal dua faktor dalam bidang perdagangan kuantitatif. Strategi ini mengintegrasikan dua faktor strategi 123 reversal dan strategi saluran Keltner, dengan tujuan untuk menemukan sinyal reversal dan mencapai ide perdagangan harga rendah dan harga tinggi.

Prinsip Strategi

Strategi ini terdiri dari dua substrategi. Substrategi pertama adalah strategi 123 reversal, yang menilai apakah pasar berada di titik reversal dengan menghitung perubahan harga penutupan dua hari perdagangan sebelumnya, dikombinasikan dengan indikator Stochastic. Secara khusus, sinyal beli dikirim ketika harga penutupan dua hari berturut-turut naik, sementara indikator Stochastic di bawah 50, dan sinyal jual dikirim ketika harga penutupan dua hari berturut-turut turun, sementara indikator Stochastic di atas 50.

Substrategi kedua adalah strategi Keltner Channel. Strategi ini menghitung rata-rata harga dan kisaran pergerakan yang khas dari n hari perdagangan terakhir, dan mengirimkan sinyal perdagangan berbalik ketika harga mendekati tren naik atau turun.

Akhirnya, strategi ini menghitung sinyal pemegang akhir dengan menilai arah sinyal dari dua substrategi. Instruksi perdagangan yang sebenarnya dikeluarkan ketika dua substrategi sinyal sesuai, atau tidak melakukan perdagangan, untuk tujuan verifikasi dua faktor.

Analisis Keunggulan

Keuntungan terbesar dari strategi pelacakan reversal dua faktor ini adalah kemampuan untuk menangkap peluang tepat waktu saat pasar berbalik dan mencapai ide perdagangan murah dan mahal. Selain itu, melalui mekanisme konfirmasi dua faktor, sinyal palsu dapat dikurangi dan kualitas sinyal dapat ditingkatkan.

Secara khusus, parameter indikator Stochastic dari 123 strategi reversal lebih konservatif, sehingga dapat secara efektif menyaring reversal palsu dalam situasi yang bergoyang. Sementara saluran Keltner melacak pikiran Brin, juga dapat menangkap peluang reversal saat terobosan naik turun. Keduanya digunakan bersama-sama, dapat saling memverifikasi, mengurangi transaksi yang tidak perlu, sehingga mendapatkan peluang kemenangan yang lebih tinggi.

Analisis risiko

Risiko utama dari strategi ini adalah bahwa waktu yang dipilih untuk sinyal reversal sangat penting. Jika terjadi reversal palsu berturut-turut, atau jika sinyal reversal terjadi pada waktu yang dipilih secara tidak tepat, itu akan menyebabkan ketidakmampuan untuk memegang tren yang utuh, yang akan mempengaruhi hasil akhir.

Selain itu, strategi dua faktor lebih sulit untuk memilih dan mengoptimalkan parameternya daripada strategi tunggal. Parameter dari kedua substrategi perlu diuji dan dievaluasi secara menyeluruh, atau mudah gagal.

Akhirnya, reversal trading sendiri memiliki rasio keuntungan dan kerugian yang sangat berbeda, dan jika terjadi sesuatu yang tidak normal, mudah untuk melakukan eksposur. Hal ini perlu dihindari dengan stop loss yang ketat.

Arah optimasi

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

  1. Uji pengaturan parameter indikator reversal yang berbeda untuk menemukan kombinasi dengan toleransi kesalahan yang lebih tinggi dan sinyal palsu yang lebih sedikit
  2. Mencoba parameter dengan panjang siklus yang berbeda untuk menemukan nilai yang lebih tepat yang ditangkap secara terbalik
  3. Menambahkan Modul Stop Loss, Kontrol ketat terhadap kerugian maksimum dalam satu transaksi
  4. Uji efek dari berbagai periode kepemilikan posisi untuk menemukan titik keluar yang lebih sesuai dengan logika strategi
  5. Meningkatkan jumlah posisi yang dibuka atau modul kontrol posisi yang membuat rasio keuntungan lebih masuk akal

Meringkaskan

Strategi ini berfungsi sebagai strategi pelacakan reversal dua faktor yang khas, dengan mengintegrasikan 123 reversal dan dua substrategi Keltner channel, dengan tujuan untuk lebih tepat menangkap saat pasar berbalik. Dengan pengoptimalan parameter dan pengendalian risiko, strategi ini dapat menghasilkan keuntungan tambahan yang cukup besar. Namun, pedagang harus memperhatikan spesifisitas perdagangan reversal dan mencegah perluasan kerugian yang disebabkan oleh situasi yang tidak biasa.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 09/12/2020
// This is combo strategies for get a cumulative signal. 
//
// 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.
//
// Second strategy
// The Keltner Channel, a classic indicator 
// of technical analysis developed by Chester Keltner in 1960. 
// The indicator is a bit like Bollinger Bands and Envelopes.
//
// 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

KeltnerChn(nPeriod) =>
    pos = 0.0
    xPrice = sma(hlc3, nPeriod)
    xMove = sma(high - low, nPeriod)
    reverse = input(false, title="Trade reverse")
    xUpper = xPrice + xMove
    xLower = xPrice - xMove
    pos := iff(close < xLower, -1,
             iff(close > xUpper, 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Keltner Channel", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
nPeriod = input(title="Period", defval=10, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posKeltnerChn = KeltnerChn(nPeriod)
pos = iff(posReversal123 == 1 and posKeltnerChn == 1 , 1,
	   iff(posReversal123 == -1 and posKeltnerChn == -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 ? #b50404: possig == 1 ? #079605 : #0536b3 )