RocketRSI by John Ehlers

RocketRSI by John Ehlers

In “RocketRSI—A Solid Propellant For Your Rocket Science Trading” in the may 2018 issue of Traders tips, author John Ehlers introduces a new take on the classic RSI indicator originally developed by J. Welles Wilder. Ehlers begins by introducing a new version of the RSI based on a simple accumulation of up and down closes rather than averages. To this he applies a Fisher transform. He tells us that the resultant output is statistically significant spikes that indicate cyclic turning points with precision.


Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

New! PRC is also now on YouTube, subscribe to our channel for exclusive content and tutorials

  1. criscolci • 05/06/2018 #

    Thanks a lot!

  2. Bard • 05/06/2018 #

    Cheers for doing Ehler’s latest indicator Despair, much appreciated.

  3. Etienne • 05/06/2018 #

    Hi, thanks for proving this code.
    I would like to contribute by adding a computation speedup. figures are unchanged, the indicator computes 5x faster.

  4. Etienne • 05/06/2018 #

    //Compute Super Smoother coefficients once
    if barindex = 1 then
    a1 = exp( -1.414 * 3.14159/ ( SmoothLength ) )
    b1 = 2 * a1 * Cos( 1.414 * 180/ ( SmoothLength ) )
    c2 = b1
    c3 = -square(a1)
    c1 = 1 – c2 – c3

    drawhline (0)
    drawhline (OBOSLevel) coloured(255,0,0)
    drawhline (-OBOSLevel) coloured(255,0,0)

    if barindex > RSILength then
    //Create half dominant cycle Momentum
    Mom = Close – Close[RSILength – 1]

    //SuperSmoother Filter
    Filt = c1 * ( Mom + Mom[1] ) / 2 + c2 * Filt[1] + c3 * Filt[2]

    //Accumulate “Closes Up” and “Closes Down”
    CD = 0
    CU = 0

    if Filt[0] > Filt[1] then
    CU = Filt[0] – Filt[1]
    CD = Filt[1] – Filt[0]

    RCU = summation[RSILength](CU)
    RCD = summation[RSILength](CD)

    if RCU + RCD 0 then
    MyRSI = ( RCU – RCD ) / ( RCU + RCD )

    //Limit RocketRSI output to
    //+/- 3 Standard Deviations
    MyRSI = min(max(MyRSI,-.999),.999)

    //Apply Fisher Transform to establish
    //Gaussian Probability Distribution
    RocketRSI = .5 * Log( ( 1 + MyRSI ) / ( 1 – MyRSI ) )

    return RocketRSI coloured(0,0,255) as “RocketRSI”

Register or


avatar avatar avatar avatar avatar avatar avatar avatar
Related users ' posts
Ste Thanks. I would like if possible some further explanation and clarification on the P3 (64) n...
Jan Hi Actarus, Thanks for the code ! To get the picture as attached above from the indicato...
Actaru5 Caio Jan, con ognuno dei setting ottieni un indicatore visualizzato diverso, ma tutti sono ...
Albaran Hi Vonasi, Could you explain what "$perc[a]" is? I tried to apply it but it keeps telling...
Nicolas Code compatible only with version 11, as it is written in bold in the text of this post: Thi...
Albaran Ah I had hoped it was a problem unrelated to the version of prorealtime! We'll keep waiting ...
eva.g.forsgren I cant make it work in anyway.
Nicolas Play with the "highpassLength" settings and add more units displayed on your chart.
MrEastwood Interesting indicator! Can anyone get it working for longer "highpasslengths"? I've been tes...
Vinks_o_7 Vonasi you're a beast !!! ;-)))
pableitor Amazing indicator , you are pushing PRT to the limit! But looking at the scatter its not c...
4 months ago
Wolf Compilation by sinusoid concept is very interesting. Thanks
groen200 Hi Zigo can you make backtest from this indicator
rosario Good evening I would like to understand why it doesn't work for me. Rosary
Morrissey38 Buenas tardes Nicolás . Como podría introducir una línea cero a este indicador? . Muchas gra...
Nicolas Change the last line with : RETURN Reflex, 0
Morrissey38 Muchísimas gracias Nicolás , muy amable.
Sapo Thank you for your indicators. As always it's perfect, I thank you for your help it's preci...
Sapo Thank you very much. as always your indicators are extremely effective. kind regards Vonasi.
mitsu21 Hi, it looks nice. I'll try it tomorrow thank you for your share kind regards bruno
kj1988 Thank you Vonasi for sharing this indicator. Very useful as a comfirmation to the price act...
eivaremir have u got the trading view version?
ggolfet Thanks Nicolas, I imported the itf file and solved the problem.
Hasardeur Hallo Nicolas, i tried to code the multi period heat map in combination with the Ehler’s ...
Nicolas Please open a new topic with the code in forum.
Marie-Eve Vergoz lorsque je copie les codes, le système me signale des erreurs à la ligne 12 et suivantes
Marie-Eve Vergoz sorry - tout est ok -
12 months ago
Marcot18 Alex ti sei superato
AlexF Esagerato!
jobswaps Sube como trazar lineas de tendencias a tantas barras
finplus Bonjour, cet indicateur a t il fait l'objet d'une évolution avec PRT 11 ? Par ailleurs, en ...
kj1988 Thank you for this nice indicator. I find it useful and a better replacement for the RSI
ALE Happy to know
Juanjo Hola, Buscando un sistema valido para operar el squeeze, he reprogramado el indicador para ...
mauro1966 BRAVO....
JackD I am getting a Syntex error when entering the code
sir_i Bonjour à tous, Je suis nouveau sur le forum et sur la plateforme, pourriez-vous me dire com...
Nicolas Il faut simplement l'appliquer sur le prix.
sir_i Merci pour la réponse, je ne suis pas familier avec l'application de cette procédure simple,...
Nicolas Merci de poster la demande dans le forum des indicateurs prorealtime. Avec un titre explicit...
RV1974 Bonjour, j'ai une erreur Erreur sur ligne 48,49 62,63 et Fin de code non reconnu
Nicolas Afin d'éviter les mauvais copier/coller, il est toujours plus simple de télécharger le fichi...