Strategi pembalikan rata-rata bergerak ganda

Penulis:ChaoZhang, Tanggal: 2023-09-26 15:27:58
Tag:

Gambaran umum

Strategi pembalikan rata-rata bergerak ganda adalah strategi perdagangan yang menggabungkan prinsip-prinsip pembalikan rata-rata dan rata-rata bergerak. Pertama-tama menghasilkan sinyal perdagangan pembalikan menggunakan metodologi pembalikan 123, dan kemudian menyaring sinyal dengan rata-rata bergerak eksponensial 2/20, hanya mengambil perdagangan ketika sinyal dari keduanya cocok untuk meningkatkan ketahanan. Strategi ini bertujuan untuk menangkap peluang pembalikan jangka pendek sambil menggunakan filter tren jangka panjang untuk mengidentifikasi pengaturan kemungkinan tinggi.

Logika Strategi

Strategi ini terdiri dari dua bagian:

  1. 123 Strategi Pembalikan

Strategi pembalikan 123 berasal dari buku How I Tripped My Money in the Futures Market. Strategi ini didasarkan pada gagasan bahwa jika harga penutupan turun dari level tinggi ke rendah selama 2 hari, dan stochastic lambat 9 hari berada di bawah 50, itu menandakan titik pembalikan untuk pergi panjang. Jika harga penutupan naik dari level rendah ke tinggi selama 2 hari, dan stochastic cepat 9 hari berada di atas 50, itu menandakan titik pembalikan untuk pergi pendek.

  1. 2/20 Strategi Rata-rata Gerak Eksponensial

Strategi ini menggunakan 2/20 EMA untuk menentukan tren jangka panjang. Ketika harga berada di atas garis 2/20 EMA, itu menandakan tren naik. Ketika harga berada di bawah garis 2/20 EMA, itu menandakan tren turun. Ini menyaring keluar false breakouts.

Strategi ini hanya menghasilkan sinyal perdagangan ketika sinyal pembalikan 123 sejajar dengan sinyal EMA 2/20.

Analisis Keuntungan

Strategi ini memiliki keuntungan berikut karena menggabungkan pembalikan jangka pendek dan tren jangka panjang:

  1. Menangkap peluang keuntungan tinggi dari pembalikan jangka pendek

123 target pembalikan skenario overbought dan oversold di mana perubahan harga yang signifikan sering terjadi, memungkinkan target keuntungan yang lebih besar.

  1. Filter EMA 2/20 menghindari risiko pecah palsu

Strategi pembalikan murni rentan terhadap tren pasar. Filter 2/20 EMA menghilangkan sinyal terhadap tren, mencegah perdagangan buruk selama penipuan.

  1. Kondisi ganda meningkatkan profil risiko dan imbalan

Indikator tunggal seringkali menghasilkan sinyal yang salah. Menggabungkan dua indikator yang saling melengkapi secara signifikan meningkatkan keandalan dan hasil risiko-manfaat.

  1. Logika yang jelas membuat optimasi intuitif

Fungsionalitas yang jelas dari setiap komponen membuat logika intuitif untuk memahami, mengoptimalkan, dan beradaptasi dengan perubahan lingkungan pasar.

Analisis Risiko

Meskipun ada manfaatnya, beberapa risiko perlu dipertimbangkan:

  1. Kembali mungkin tidak terwujud

Kinerja masa lalu tidak menjamin hasil di masa depan.

  1. Tren dapat diperpanjang

2/20 EMA tidak dapat sepenuhnya menyaring pasar tren yang kuat. koreksi jangka pendek masih bisa kewalahan oleh tren yang lebih besar.

  1. Optimasi parameter sangat penting

Kinerja sangat sensitif terhadap pengaturan parameter yang harus dioptimalkan secara kuat melalui pengujian backtesting yang luas dan disesuaikan dengan perubahan pasar.

  1. Efektivitas jangka panjang tidak pasti

Hasil jangka pendek yang baik tidak menjamin kinerja jangka panjang. Pasar sangat stokastik dan hasil jangka panjang membutuhkan validasi yang kuat di berbagai lingkungan.

Risiko ini dapat dikelola melalui penyesuaian parameter, stop loss, kontrol risiko dll. Lebih banyak kondisi seperti volume, indikator volatilitas dapat meningkatkan ketahanan. Teknik pembelajaran mesin juga dapat memungkinkan optimasi dinamis.

Peluang Peningkatan

Beberapa cara untuk lebih mengoptimalkan strategi:

  1. Mengoptimalkan parameter pembalikan

Uji set parameter yang berbeda untuk menemukan pola pembalikan yang lebih stabil dan jelas untuk sinyal berkualitas tinggi.

  1. Mengoptimalkan sistem rata-rata bergerak

Bereksperimen dengan parameter MA yang berbeda atau menggabungkan beberapa pemeriksaan MA untuk penilaian tren yang lebih akurat.

  1. Tambahkan filter

Volume, volatilitas dan filter lainnya dapat dimasukkan untuk mengurangi sinyal palsu dan meningkatkan stabilitas.

  1. Mengimplementasikan optimasi dinamis

Teknik pembelajaran mesin pada kumpulan data historis besar dapat memungkinkan penyesuaian parameter yang dinamis dan kuat.

  1. Menggabungkan strategi stop loss

Aturan stop loss yang cerdas membantu mengontrol drawdown maksimum dan eksposur risiko.

  1. Mengoptimalkan pengelolaan uang

Ukuran posisi yang lebih baik dan alokasi modal dapat meningkatkan kinerja keseluruhan.

Kesimpulan

Reversasi rata-rata bergerak ganda adalah strategi perdagangan jangka pendek yang sederhana namun praktis. Dengan menggabungkan reversasi rata-rata dan konsep mengikuti tren, itu bertujuan untuk mendapatkan keuntungan dari pembalikan harga probabilitas tinggi sambil menghindari pecah palsu. Logika yang jelas membuatnya intuitif untuk dipahami, dioptimalkan dan diterapkan. Namun, tidak ada strategi yang bebas risiko. Peningkatan berkelanjutan dalam ketahanan dan manajemen risiko diperlukan untuk mengekstrak keuntungan yang konsisten dalam lingkungan perdagangan yang beragam.


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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 06/08/2021
// 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
// This indicator plots 2/20 exponential moving average. For the Mov 
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
//
// 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


EMA220(Length) =>
    pos = 0.0
    xPrice = close
    xXA = ema(xPrice, Length)
    nHH = max(high, high[1])
    nLL = min(low, low[1])
    nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH)
    pos :=  iff(close > xXA and close > nXS , 1,
    	     iff(close < xXA and close < nXS, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & 2/20 Exponential MA", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- 2/20 Exponential MA ----")
LengthMA = input(20, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posEMA220 = EMA220(LengthMA)
pos = iff(posReversal123 == 1 and posEMA220 == 1 , 1,
	   iff(posReversal123 == -1 and posEMA220 == -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 )

Lebih banyak