Strategi Indeks Momentum Relatif

Penulis:ChaoZhang, Tanggal: 2023-11-02 17:21:45
Tag:

img

Gambaran umum

Strategi Relative Momentum Index (RMI) adalah versi yang ditingkatkan berdasarkan indeks momentum. Ini menghitung momentum harga selama periode untuk menentukan apakah pasar terlalu banyak dibeli atau terlalu banyak dijual, untuk menangkap peluang pembalikan.

Logika Strategi

Rumus perhitungan RMI adalah sebagai berikut:

xMom = xPrice - xPrice[Length]  // Price change over Length periods
xMU = If xMom >= 0: previous xMU minus xMU/Length plus xMom; else: previous xMU
xMD = If xMom <= 0: previous xMD minus xMD/Length plus absolute value of xMom; else: 0 
RM = xMU / xMD
RMI = 100 * (RM / (1 + RM))

Pertama-tama hitung perubahan harga xMom selama periode Panjang. Jika xMom>=0, yang berarti harga naik, akumulasi ke dalam xMU; jika xMom<0, yang berarti harga turun, akumulasi nilai absolutnya ke dalam xMD. RM adalah rasio antara xMU dan xMD, yang mewakili momentum naik turun. RMI menormalkan RM ke dalam kisaran 0-100.

Ketika RMI lebih tinggi dari ambang SellZone, pasar overbought, pergi short.

Keuntungan

  • Dibandingkan dengan RSI, RMI lebih sensitif dan dapat menangkap peluang pembalikan lebih awal.
  • RMI mengukur momentum naik turun, kurang dipengaruhi oleh konsolidasi.
  • Berdasarkan momentum, RMI dapat lebih baik menentukan status overbought/oversold.

Risiko

  • Seperti strategi pembalikan lainnya, RMI memiliki risiko dihentikan oleh tren yang kuat.
  • Parameter RMI harus dioptimalkan untuk produk yang berbeda, jika tidak hasilnya mungkin buruk.
  • Ambang overbought/oversold harus ditetapkan secara wajar, jika tidak akan terjadi terlalu banyak sinyal palsu.

Risiko dapat dikurangi dengan memperluas stop loss, mengoptimalkan parameter, menggabungkan dengan strategi tren dll.

Peningkatan

Strategi RMI dapat ditingkatkan dari aspek berikut:

  • Optimalkan parameter Length untuk memaksimalkan return.
  • Mengoptimalkan ambang overbought/oversold untuk mengurangi sinyal palsu.
  • Tambahkan stop loss untuk mengendalikan single loss.
  • Gabungkan dengan strategi trend atau moving average untuk meningkatkan tingkat kemenangan.
  • Memilih sesi perdagangan yang tepat berdasarkan karakteristik produk untuk meningkatkan stabilitas.

Kesimpulan

Strategi RMI menangkap peluang mundur jangka pendek dengan mengukur perubahan momentum harga. Dibandingkan dengan RSI, RMI lebih sensitif dan kuat terhadap konsolidasi. Tetapi risiko dihentikan ada. Parameter perlu dioptimalkan dan dikombinasikan dengan strategi tren untuk memaksimalkan kinerja.


/*backtest
start: 2023-10-02 00:00:00
end: 2023-10-21 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/10/2017
// 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".   
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Relative Momentum Index", shorttitle="RMI")
xPrice = close
Length = input(20, minval=1)
BuyZone = input(40, minval=1)
SellZone = input(70, minval=1)
reverse = input(false, title="Trade reverse")
// hline(0, color=gray, linestyle=dashed)
// hline(SellZone, color=red, linestyle=line)
// hline(BuyZone, color=green, linestyle=line)
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))) 
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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )  
plot(nRes, color=blue, title="RMI")

Lebih banyak