Strategi perdagangan indeks momentum pembalikan ganda

Penulis:ChaoZhang, Tanggal: 2024-02-06 09:29:34
Tag:

img

Gambaran umum

Strategi Indeks Momentum Reversal Dual menggabungkan strategi Reversal 123 dan strategi Indeks Momentum Relatif (RMI).

Prinsip Strategi

Strategi ini terdiri dari dua bagian:

  1. 123 Strategi Pembalikan

    • Panjang ketika kemarin tutup lebih rendah dari hari sebelumnya dan hari ini tutup lebih tinggi dari hari sebelumnya, dan 9 hari Slow K lebih rendah dari 50
    • Pendek ketika kemarin tutup lebih tinggi dari hari sebelumnya dan hari ini tutup lebih rendah dari hari sebelumnya, dan 9 hari Fast K lebih tinggi dari 50
  2. Strategi Indeks Momentum Relatif (RMI)

    • RMI adalah variasi dari RSI dengan komponen momentum ditambahkan. Rumusnya adalah: RMI = (Upward Momentum SMA) / ((Downward Momentum SMA) * 100
    • Long ketika RMI lebih rendah dari garis overbought; Short ketika RMI lebih tinggi dari garis oversold

Strategi ini hanya menghasilkan sinyal perdagangan ketika 123 Reversal dan RMI memberikan sinyal ganda yang selaras.

Analisis Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Keakuratan sinyal yang ditingkatkan dengan indikator ganda
  2. Teknik pembalikan yang cocok untuk pasar yang terbatas pada kisaran
  3. RMI sensitif untuk mengidentifikasi titik balik tren yang kuat

Analisis Risiko

Ada juga beberapa risiko:

  1. Filter ganda mungkin kehilangan beberapa peluang perdagangan
  2. Sinyal pembalikan bisa memiliki penilaian yang salah
  3. Pengaturan parameter RMI yang tidak benar dapat mempengaruhi efisiensi

Risiko ini dapat dikurangi dengan menyesuaikan parameter, mengoptimalkan perhitungan indikator.

Arahan Optimasi

Strategi dapat dioptimalkan lebih lanjut melalui:

  1. Mencoba kombinasi parameter yang berbeda untuk menemukan yang optimal
  2. Mencoba kombinasi indikator pembalikan yang berbeda misalnya KDJ, MACD
  3. Menyesuaikan rumus RMI untuk membuatnya lebih sensitif
  4. Menambahkan mekanisme stop loss untuk mengendalikan kerugian tunggal
  5. Menggabungkan volume perdagangan untuk menghindari sinyal palsu

Kesimpulan

Strategi indeks momentum pembalikan ganda dapat secara efektif meningkatkan keakuratan keputusan perdagangan dan mengurangi kemungkinan sinyal yang salah melalui penyaringan sinyal ganda dan optimasi parameter.


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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 07/06/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
// The Relative Momentum Index (RMI) was developed by Roger Altman. Impressed 
// with the Relative Strength Index's sensitivity to the number of look-back 
// periods, yet frustrated with it's inconsistent oscillation between defined 
// overbought and oversold levels, Mr. Altman added a momentum component to the RSI.
// As mentioned, the RMI is a variation of the RSI indicator. Instead of counting 
// up and down days from close to close as the RSI does, the RMI counts up and down 
// days from the close relative to the close x-days ago where x is not necessarily 
// 1 as required by the RSI). So as the name of the indicator reflects, "momentum" is 
// substituted for "strength". 
//
// 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


RMI(Length,BuyZone, SellZone) =>
    pos = 0.0
    xMU = 0.0
    xMD = 0.0
    xPrice = close
    xMom = xPrice - xPrice[Length]
    xMU := iff(xMom >= 0, nz(xMU[1], 1) - (nz(xMU[1],1) / Length) + xMom, nz(xMU[1], 1))
    xMD := iff(xMom <= 0, nz(xMD[1], 1) - (nz(xMD[1],1) / Length) + abs(xMom), nz(xMD[1], 0))
    RM = xMU / xMD
    nRes = 100 * (RM / (1+RM))
    pos:= iff(nRes < BuyZone, 1,
    	   iff(nRes > SellZone, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Relative Momentum Index", 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, "---- Relative Momentum Index ----")
LengthRMI = input(20, minval=1)
BuyZone = input(40, minval=1)
SellZone = input(70, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posRMI = RMI(LengthRMI,BuyZone, SellZone)
pos = iff(posReversal123 == 1 and posRMI == 1 , 1,
	   iff(posReversal123 == -1 and posRMI == -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