
Der Relative Momentum Index (RMI) ist eine Strategie, die auf dem Relative Momentum Index (RMI) basiert. Die Strategie beurteilt, ob ein Markt überkauft oder überverkauft ist, indem sie die Dynamik der Preisänderungen über einen bestimmten Zeitraum berechnet, um eine Umkehrmöglichkeit zu erfassen.
Die Berechnungsformel für die RMI-Strategie lautet:
xMom = xPrice - xPrice[Length] //计算Length周期内的价格变动
xMU = 如果xMom >= 0:之前xMU减去xMU/Length加上xMom;否则:之前xMU
xMD = 如果xMom <= 0:之前xMD减去xMD/Length加上xMom的绝对值;否则:0
RM = xMU / xMD
RMI = 100 * (RM / (1 + RM))
Die Strategie berechnet zunächst die Preisänderung xMom innerhalb der Length-Periode. Wenn xMom> = 0, die Preise steigen, dann xMU plus xMom; wenn xMom < 0, die Preise fallen, dann xMD plus xMom. Der absolute Wert der RM ist das Verhältnis von xMU und xMD, das den Preisanstieg repräsentiert.
Wenn der RMI höher als die abgeschätzte SellZone ist, bedeutet dies Überkauf und Shorting. Wenn der RMI niedriger als die abgeschätzte BuyZone ist, bedeutet dies Überverkauf und Überschuss.
Die Risiken können durch eine angemessene Lockerung der Stop-Loss-Punkte, Optimierung der Parameterkombinationen und Kombinationen mit Trendstrategien verringert werden.
Die RMI-Strategie kann in folgenden Bereichen optimiert werden:
Die RMI-Strategie kann durch die Messung der Preisdynamik und die Umkehrung der Kurzlinie eine kurze Rückkehrmöglichkeit erfassen. Die RMI-Strategie ist empfindlicher als die RSI-Strategie und ist nicht von den Schwingungen betroffen. Die Strategie besteht jedoch immer noch in der Gefahr, von der Auslegung abhängig zu sein.
/*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")