TradingView
TheLark
Feb 20, 2014 8:01 PM

FREE INDICATOR: Relative Momentum Index (RMI) 

British Pound/U.S. DollarFXCM

Description

RMI, as requested by glaz

Description:
The Relative Momentum Index was developed by Roger Altman and was introduced in his article in the February, 1993 issue of Technical Analysis of Stocks & Commodities magazine.
While your typical RSI counts up and down days from close to close, the Relative Momentum Index counts up and down days from the close relative to a close x number of days ago. The result is an RSI that is a bit smoother.

Usage:
Use in the same way you would any other RSI. There are overbought and oversold zones, and can also be used for divergence and trend analysis .


Grab the source code here: pastebin.com/LRVusQmy
Installation video by @ChrisMoody here : vimeopro.com/user14689865/tradingviewcom-how-to-videos

            ░░░░░░░░░░░░░░░ Feel free to follow me to keep up with my latest scripts! ░░░░░░░░░░░░░░░
            ░░░░░░░░░░░░ PLEASE THUMB UP OR STAR IF YOU LIKE THIS INDICATOR! ░░░░░░░░░░░░
                                                          I'd like as many people as possible to get it :)
Comments
Mat_cl
Great indicator! this is used for scalping in forex EURUSD 1M.
Like a money maker!
dp
Hey ThLark, thanks for continuing doing that.

The question relative RSI definition. Several years ago I wrote a piece of code, doing exactly what RSI defines: "... up and down days from close to close...".

If you do it by yourself and plot the indicator (not just using built-in function), you'll see completely different graph.

As I understood, the standard built-in RSI is some sort of approximation to the original definition.
TheLark
What was the calculation that you were using? There are different ways to build RSI's, I alone have built at least 10 different RSI's. I believe the original was RS = (avg up closes / avg down closes) RSI = (100 - 100/(1 + RS)), and it's possible the built in RSI is some variation of the original calculation?

*Where RS = Average of x days' up closes / Average of x days' down closes.
dp
Exactly, I used the formula you wrote. I think that if you program it directly, you'll see the different result from what is offered in TV and other packages.

My interpretation of the difference is they need to accelerate the calculation to update only the newest point in real time, and use the rest of series from previous computations. That leads to screwing up of the original formula. I've seen the reference about modification to some book on marketwatch.com, but they changed the site and I can't find it.
TheLark
Interesting, let me know if you find it.
Personally, I build everything (thats possible to build) from scratch, that way I know exactly what I'm using all of the time :)
dp
I would do the RSI formula you wrote, if TV had "for-loop", in no time, just like you, I guess ;)

As I remember, I did it for fun in IDL to see how RSI works on test functions, like a sum of 2 sines with different amplitudes and frequencies. The result was radically different.

I'll keep you posted if I find the reference. The sad thing people taking those indicators for granted.
TheLark
I guess this comes down to interpretation now! Do you think a for loop is necessary to get the correct calculation? The way I see it is pretty straight forward, all done with standard definitions. And I agree, I can't comprehend something until I code it out and experiment, but I have a feeling you take it much further than me! haha ,, I like what you bring, get's me thinking every time
dp
Well, I'm still uncomfortable with Pine.

I'm sure you would do it much faster than me with standard Pine tools.

As for me, the market is dynamical system (in mathematical sense), probably the system of coupled ordinary nonlinear differential equations with specific unpredictable forcing. We just need to study it's specific properties, like physicists study natural phenomena in laboratory conditions.
TheLark
I wish i were more mathematical in the traditional sense, but I am just a coder with an interest in human emotion, and irrational thought. My scripts are an attempt to keep me out of these two categories, while mapping other's :P
GabrieleGualazzini
@dp, I believe the different results you got came from the average you use (wilder average vs. simple moving average or exponential average).
More