Kebalikan Bidirectional dan Momentum Moving Average Strategi

Penulis:ChaoZhang, Tanggal: 2023-11-06 16:18:18
Tag:

img

Gambaran umum

Strategi ini menggabungkan aturan trading reversal dengan indikator momentum. Ini mengintegrasikan reversal bidirectional dan Chande Momentum Oscillator untuk mengidentifikasi peluang reversal sambil memverifikasi sinyal momentum untuk menghasilkan sinyal trading yang lebih andal.

Logika Strategi

Strategi ini terdiri dari dua bagian:

Bagian pertama adalah aturan perdagangan reversal bidirectional. Ini mengidentifikasi peluang reversal dengan mendeteksi perubahan harga close dalam dua hari sebelumnya. Secara khusus, jika harga close menurun dalam dua hari sebelumnya, dan harga close saat ini lebih tinggi dari close sebelumnya, dan Stochastic Oscillator berada di bawah ambang batas, itu memicu sinyal beli. Sebaliknya, jika harga close meningkat dalam dua hari sebelumnya, dan harga close saat ini lebih rendah dari close sebelumnya, dan Stochastic Oscillator berada di atas ambang batas, itu memicu sinyal jual.

Bagian kedua adalah Chande Momentum Oscillator. Ini membandingkan besarnya perubahan harga dengan besarnya rata-rata dalam periode tertentu untuk menentukan momentum. Jika indikator momentum berada di atas batas atas, itu menghasilkan sinyal beli. Jika di bawah batas bawah, itu menghasilkan sinyal jual.

Strategi ini menggabungkan aturan perdagangan pembalikan dua arah untuk menemukan titik pembalikan potensial, dan indikator momentum untuk memverifikasi keabsahan sinyal pembalikan.

Keuntungan dari Strategi

  • Mekanisme verifikasi ganda meningkatkan keandalan sinyal dengan menghindari sinyal palsu. Aturan perdagangan pembalikan mengidentifikasi titik pembalikan potensial, dan indikator momentum memverifikasi efektivitas sinyal pembalikan.

  • Menggabungkan strategi pembalikan dengan strategi tren memberikan fleksibilitas untuk menangkap peluang di pasar pembalikan dan tren.

  • Memperkenalkan momentum mencegah jatuh ke dalam perangkap pembalikan dengan hanya berdagang ketika momentum dikonfirmasi.

  • Beberapa parameter yang dapat disesuaikan dapat dioptimalkan untuk kondisi pasar yang berbeda.

Risiko dari Strategi

  • Sinyal pembalikan mungkin menghadapi pullback besar, yang membutuhkan stop loss yang wajar.

  • Waktu yang tepat untuk pembalikan sulit, dapat menyebabkan penilaian yang salah.

  • Kelewatan indikator momentum dapat menyebabkan titik masuk pembalikan terbaik hilang.

  • Pengaturan parameter membutuhkan optimasi yang cermat berdasarkan pasar tertentu, pengaturan yang tidak tepat dapat meningkatkan risiko.

Risiko dapat dikurangi dengan menggunakan stop loss yang tepat, optimasi parameter yang kuat, menjaga beberapa ruang dalam kondisi pemicu sinyal pembalikan, dll.

Arahan untuk Optimalisasi

  • Uji kombinasi parameter pembalikan yang berbeda untuk menemukan parameter yang sensitif terhadap pembalikan pasar.

  • Cobalah indikator momentum yang berbeda, seperti RSI, tingkat perubahan volume, dll.

  • Tambahkan filter seperti breakout untuk menghindari perdagangan titik pembalikan non-kunci.

  • Mengevaluasi strategi stop loss untuk menemukan metode pengendalian penarikan maksimum.

  • Menilai strategi ukuran posisi untuk menyesuaikan ukuran posisi berdasarkan kondisi pasar.

Kesimpulan

Strategi ini menggabungkan keuntungan dari strategi pembalikan dan momentum, dengan sinyal yang dapat diandalkan dan fleksibilitas untuk menangkap peluang. Parameter dapat dioptimalkan, risiko dapat dikelola melalui stop loss dan ukuran posisi untuk meningkatkan stabilitas dan profitabilitas. Secara keseluruhan, strategi ini mengeksplorasi integrasi efektif dari strategi pembalikan dan tren, dan layak penelitian lebih lanjut dan penerapan.


/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 18/08/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 Chande Momentum Oscillator. 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

CMO(Length, TopBand, LowBand) =>
    pos = 0
    xMom = abs(close - close[1])
    xSMA_mom = sma(xMom, Length)
    xMomLength = close - close[Length]
    nRes = 100 * (xMomLength / (xSMA_mom * Length))
    pos :=  iff(nRes > TopBand, 1,
	         iff(nRes <= LowBand, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Chande Momentum Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthCMO = input(9, minval=1)
TopBand = input(70, minval=1)
LowBand = input(-70, maxval=-1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCMO = CMO(LengthCMO, TopBand, LowBand)
pos = iff(posReversal123 == 1 and posCMO == 1 , 1,
	   iff(posReversal123 == -1 and posCMO == -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