Strategi Kombo Pembalikan Momentum

Penulis:ChaoZhang, Tanggal: 2024-01-12 12:22:47
Tag:

img

Gambaran umum

Strategi ini menggabungkan strategi 123 Reversal dan strategi rata-rata bergerak CMO untuk menghasilkan sinyal perdagangan gabungan. Strategi 123 Reversal menghasilkan sinyal perdagangan dengan membentuk tinggi atau rendah baru dari harga penutupan selama dua hari berturut-turut dikombinasikan dengan penilaian momentum pasar dari Stochastic Oscillator. Strategi rata-rata bergerak CMO menggunakan indikator CMO untuk menentukan momentum harga dan menghasilkan sinyal perdagangan. Kombinasi sinyal dari kedua strategi dapat membentuk sinyal combo yang lebih dapat diandalkan.

Logika Strategi

Strategi 123 Reversal menghasilkan sinyal perdagangan berdasarkan logika berikut:

  1. Ketika harga penutupan naik selama dua hari berturut-turut dan 9 hari Stochastic Oscillator di bawah 50, pergi panjang.

  2. Ketika harga penutupan turun selama dua hari berturut-turut dan Osilator Stochastic 9 hari di atas 50, pergi pendek.

Dengan menilai apakah harga telah membentuk tinggi atau rendah baru dalam jangka pendek dikombinasikan dengan indikasi Stochastic Oscillator pada momentum, sinyal perdagangan dihasilkan.

Strategi rata-rata bergerak CMO menghasilkan sinyal perdagangan berdasarkan logika berikut:

  1. Hitung nilai CMO selama 5, 10 dan 20 hari.

  2. Ambil rata-rata.

  3. Ketika rata-rata CMO melebihi 70, pergi panjang.

  4. Ketika rata-rata CMO turun di bawah -70, pergi pendek.

Dengan melakukan operasi ensemble pada nilai-nilai CMO dari kerangka waktu yang berbeda, strategi menentukan arah momentum harga dan menghasilkan sinyal perdagangan.

Strategi combo melakukan operasi AND atas sinyal dari kedua strategi, yang berarti bahwa sinyal perdagangan yang sebenarnya hanya dipicu ketika kedua strategi memberikan sinyal beli atau jual secara bersamaan.

Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Sinyal gabungan lebih dapat diandalkan dengan lebih sedikit sinyal palsu.

  2. Strategi 123 Reversal menangkap tren setelah koreksi jangka pendek.

  3. Strategi rata-rata bergerak CMO menilai momentum dalam jangka waktu yang lebih panjang.

  4. Dapat beradaptasi dengan lingkungan pasar yang berbeda.

Analisis Risiko

Risiko dari strategi ini meliputi:

  1. Strategi 123 Reversal sangat bergantung pada pola harga dan kadang-kadang mungkin gagal.

  2. Indikator CMO sensitif terhadap fluktuasi pasar, yang dapat menghasilkan sinyal yang salah.

  3. Sinyal strategi combo bisa terlalu konservatif, kehilangan peluang perdagangan.

  4. Penyesuaian parameter yang tepat diperlukan untuk beradaptasi dengan siklus dan lingkungan pasar yang berbeda.

Langkah-langkah penanggulangan adalah:

  1. Mengoptimalkan aturan pengenalan pola dari strategi pembalikan.

  2. Tambahkan indikator tambahan lainnya ke dalam strategi rata-rata bergerak CMO.

  3. Evaluasi kinerja terbaru secara dinamis dan sesuaikan parameter.

Arahan Optimasi

Strategi ini dapat ditingkatkan dari aspek berikut:

  1. Gunakan algoritma pembelajaran mesin untuk mengoptimalkan bobot kombinasi secara otomatis.

  2. Tambahkan modul penyesuaian adaptif untuk mengoptimalkan parameter secara dinamis.

  3. Tambahkan modul stop loss untuk mengontrol risiko secara efektif.

  4. Mengevaluasi kekuatan strategi dan meningkatkan algoritma pengenalan pola.

  5. Sertakan pilihan industri, dasar-dasar dan faktor lainnya.

Kesimpulan

Strategi ini membentuk sistem perdagangan combo yang efektif dari dua strategi yang sangat saling melengkapi - 123 Reversal dan moving average CMO. Dengan pengendalian risiko yang tepat, dapat menghasilkan pengembalian alpha yang stabil.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/09/2019
// 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 average of three different length CMO's. This indicator 
//    was developed by Tushar Chande. A scientist, an inventor, and a respected 
//    trading system developer, Mr. Chande developed the CMO to capture what he 
//    calls "pure momentum". For more definitive information on the CMO and other 
//    indicators we recommend the book The New Technical Trader by Tushar Chande 
//    and Stanley Kroll.
//    The CMO is closely related to, yet unique from, other momentum oriented 
//    indicators such as Relative Strength Index, Stochastic, Rate-of-Change, etc. 
//    It is most closely related to Welles Wilder?s RSI, yet it differs in several ways:
//    - It uses data for both up days and down days in the numerator, thereby directly 
//    measuring momentum;
//    - The calculations are applied on unsmoothed data. Therefore, short-term extreme 
//    movements in price are not hidden. Once calculated, smoothing can be applied to 
//    the CMO, if desired;
//    - The scale is bounded between +100 and -100, thereby allowing you to clearly see 
//    changes in net momentum using the 0 level. The bounded scale also allows you to 
//    conveniently compare values across different securities.
//
// 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

CMOav(Length1,Length2,Length3, TopBand, LowBand) =>
    pos = 0
    xMom = close - close[1]
    xMomabs = abs(close - close[1])
    nSum1 = sum(xMom, Length1)
    nSumAbs1 = sum(xMomabs, Length1)
    nSum2 = sum(xMom, Length2)
    nSumAbs2 = sum(xMomabs, Length2)
    nSum3 = sum(xMom, Length3)
    nSumAbs3 = sum(xMomabs, Length3)
    nRes = 100 * (nSum1 / nSumAbs1 + nSum2 / nSumAbs2 + nSum3 / nSumAbs3 ) / 3
    pos := iff(nRes > TopBand, 1,
    	     iff(nRes < LowBand, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & CMOav", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Length1 = input(5, minval=1)
Length2 = input(10, minval=1)
Length3 = input(20, minval=1)
TopBand = input(70, minval=1)
LowBand = input(-70, maxval=-1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCMOav = CMOav(Length1,Length2,Length3, TopBand, LowBand)
pos = iff(posReversal123 == 1 and posCMOav == 1 , 1,
	   iff(posReversal123 == -1 and posCMOav == -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