My Stochastic Oscillator – John Ehlers

My Stochastic Oscillator – John Ehlers

In his article, “Predictive And Successful Indicators,” author John Ehlers presents two new indicators: the SuperSmoother filter, which is superior to moving averages for removing aliasing noise, and the MESA Stochastic oscillator, a stochastic successor that removes the effect of spectral dilation through the use of a roofing filter.

To demonstrate the effects of using the new indicators, Ehlers introduces a simple countertrend system that goes long when MESA Stochastic crosses below the oversold value and reverses the trade by taking a short position when the oscillator exceeds the overbought threshold.

This stochastic oscillator eliminate noises a lot and then make reading of this oscillator more convenient with a clearer view. Because of smoothing / lag phenomena, this indicator must be used in convergence with other indicator to give good signals. Another ways of using it for counter trend trades would be to directly enter trade when the oscillator cross the oversold area for a buy order and the overbought area for a short sell order.

 

 

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?

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

  1. SAM • 11/03/2016 #

    Hy Nicolas,I have downloaded this oscillator, but i see only the two horizontal lines (0.2 and 0.8).The oscillator line don’t go. (maybe in your script missing the “close” data?)
    Thank-you
     

  2. SAM • 11/03/2016 #

    Sorry for my previous post, your indicato all right!!
    it runs well, but on Germany 30 (CFD) time frame 15 minutes don’t go.. (for every other time frame runs good..)i do not know why…
     
     

  3. Bard • 11/03/2016 #

    Hi Nicolas, Thanks for posting Ehler’s My Oscillator (a combination of his Optimal Tacking Filter and the Universal Oscillator (Supersmoother)), I just saw your MESA stochastic for prorealtime post #15940. You mentioned “This indicator reflects short term variations of price within the “bandedge” parameter as a  frequency” on the  Universal Oscillator page. What does that exactly mean? I was also wondering how best to determine what Bandedge setting to use in Ehler’s Oscillators, or is it a case of optimising it for one currency pair and then seeing how it performs for other pairs?
    Re: Trading systems, I’m still working with different Ehler indicators. When the Supersmoother Oscillator is set to be >= the zero line as a long entry (and <= for short trades) using a Kaufman KAMA as the exit long (Period = 4, FastPeriod = 2, SlowPeriod = 30) works well on different markets like forex, gold, even Credit Agricole. As usual it is a balancing act with getting acceptable lower drawdowns with the % winner and a good gain/loss ratio.Is there any way to do Monte Carl testing of results, fortunately it’s built into the Trading Blox s/ware I have but I didn’t manage to figure out how to use the Excel s/ware approach?Cheers again for your help.

    • Nicolas • 11/03/2016 #

      Nice to hear you make good trades with Ehler’s indicators so far. About the “bandedge” statement, where did I mentioned that?
      About Monte Carlo analysis, there are already good threads on forums to make your excel report of prorealtime backtest results:
      http://www.prorealcode.com/topic/monte-carlo-analysis/
      http://www.prorealcode.com/topic/montecarlo/

    • Bard • 11/03/2016 #

      The bandedge was part of the Universal Oscillator: http://www.prorealcode.com/prorealtime-indicators/universal-oscillator-john-ehlers/Thanks for the Monte Carlo links, I will take a look. (I’m using Firefox and the page is jumping to the bottom when I click on insert link…)
       

  4. Bard • 11/03/2016 #

    Hi Nicolas, Thanks for your help with the Monte Carlo links and these Ehler’s indicators, they really are good, particularly the Universal Oscillator with 0.7 and -0.7 crosses using a trend definition like two 200 mov averages, the present  compared to it’s 5 or 10 day previous value to determine trade direction and using a shorter period exit stop. Oddly Cythia Kase’s Dev Stops didn’t seem to work as well… I will test the Univ. Osc with the Kaufman KAMA soon.
    I’m going to see how they then compare with the Goertzel Algo if I can ever get those indicators to load properly without “syntax issues… The function called from Example A, called from Example B, is called with 1 parameter(s) instead of 0 expected. “? I think I’m, missing an indicator – pls see screenshot: The image isn’t showing as attached to this comment? I will try again below this comment if necessary.I’m trying to figure out though how you determine the best bandedge setting for the Universal Oscillator? It’d be great if it could have been an optimised parameter so it could then be optimised and “let loose” on an out of sample data set. Is there a simple way like trying to match the oscillations to the price/chart oscillations?Cheers Brad

  5. Bard • 11/03/2016 #
  6. Bard • 11/03/2016 #

    Yes, the Univ Osc with a KAMA used as a trend filter instead of a simple mov ave. (for long or short trades – comparing the present with it’s value 10 days ago) doubled the profits to 78% over 4 years with drawdown dropping from 21.6% to 13.7%. (-;

  7. Bard • 11/03/2016 #

    P.s. is there anyway of getting more, 4 hour £/€ data to back test on (or other currency pairs)? The £/€, Univ Osc. System only does 61 trades between 2012 and 2016, that’ll be 40 trades to optimise on and hopefully around 20 trades for the out of sample test.

  8. Etienne • 11/03/2016 #

    Hi, I’m quite late in this thread.
    I’d just like to propose an enhancement because this indicator turns out to be really to compute, specially if doing some back-testing.
    The idea simply is to replace the looping part with some native function which are quicker, and to do constants calculation just once… Here’s the code…

    Once alpha1 = (Cos(.707*360 / 48) + Sin(.707*360 / 48) – 1) / Cos(.707*360 / 48)
    Once a1 = exp(-1.414*3.14159 / 10)
    Once b1 = 2*a1*Cos(1.414*180 / 10)
    Once c2 = b1
    Once c3 = -a1*a1
    Once c1 = 1 – c2 – c3

    if barindex>Length then
    //Highpass Filter cyclic components whose periods are shorter than 48 bars
    HP = (1 – alpha1 / 2)*(1 – alpha1 / 2)*(Close – 2*Close[1] + Close[2]) + 2*(1 – alpha1)*HP[1] – (1 – alpha1)*(1 – alpha1)*HP[2]
    //Smooth with a Super Smoother Filter
    Filt = c1*(HP + HP[1]) / 2 + c2*Filt[1] + c3*Filt[2]

    HighestC = highest[Length – 1](Filt)
    LowestC = lowest[Length – 1](Filt)

    Stoc = (Filt – LowestC) / (HighestC – LowestC)
    MyStochastic = c1*(Stoc + Stoc[1]) / 2 + c2*MyStochastic[1] + c3*MyStochastic[2]
    endif

    RETURN MyStochastic as “My Stochastic”, 0.8 as “0.8 level”, 0.2 as “0.2 level”

  9. Bard • 11/03/2016 #

    Hi Nicolas, I wanted to make this scaled indicator above between -1 and +1 instead of 0 to +1.
    What’s the best way to do that please as I tried multiplying MyStochastic by 2 and didn’t get a full range of values for the -1 to 0 range? Pls see image and top indicator: https://www.dropbox.com/s/hsimnthu4kmjw4f/scalingoscillator.png

    I wanted to compare the effects of the roofing filter in this indicator with the results from Ehler’s Universal Oscillator (no roofing filter) which is set as a histogram plotted between -1 and +1. It’s easier for visual comparison, although of course it’s still possible with this line based oscillator version. Cheers.

avatar
Register or

Likes

avatar avatar avatar
Related users ' posts
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?
michaelben Bonjour Nicolas . Je cherche une strategie pour faire du trading automatisé. J'ai essaye ave...
carlvan That's a great indicator and I especially the use of colors, more or less pronounced to indi...
diegofe_2000 CORDIAL SALUDO. CUANDO REALIZO UN PROGRAMA CON ESTE INDICADOR ME SALE EL SIGUIENTE LETRE...
ALE Hello do you want to explain to me in more detail what you have to do? Please replay here:...
Nicolas En effet merci, erreur corrigée, la variable Risk affecte désormais comme il se doit les cal...
nader003 How can we get this indicator on MT4
Nicolas You can ask for private custom coding to our programming services: https://www.prorealcode.c...
Vinks_o_7 Great, thanks a lot Nicolas !
Teddy Coronak Top Nicolas ! Merci
Andyswede Thank's! Great indicator:)
AntoGH how did you backtest it ?
PastaPesto @AntoGH , I dont know if you are asking me, but my backtest was made in an IS of 4 years bet...
Ridder @PastaPesto Do you still running this and how is the results? Thanks
dau710 Are the Bulls Blue & the Bears Red?
dau710 Many thanks :)
Maik2404 es sind leider nur long Positionen und keine Short zu erkennen.
Maik2404 Vytautas: es bleibt aber nur bei long Auslösungen
ullle73 this one is not a winner, have backtested it on almost all pairs, does not have an edge
teddy58 Ich habe es mit N= 1,5 und N=2,5 getestet mit 200000 Einheiten. Es funktioniert leider erst ...
Matriciel I use this indicator to help me make a decision when there is a divergence. The divergences ...
Jan Wind Hi, I personnaly am not a big fan of ZIGZAG indicator, as it repaints itself during time. ...
XXXXVII Excellent indicateur ! Déterminer une tendance est devenu un jeu d'enfants ! Félicitation......
gregoire bonjour nicolas j ai cherché partout sur le net et impossible de trouvé ce que je recherch...
Nicolas Merci de poster une demande dans le forum des indicateurs, ainsi on pourra le coder dans ce ...
Doddge Bonjour Nicolas, savez-vous s'il existe un indicateur pour Prorealtime similaire au ST-TL fi...
Nicolas Pour les demandes de conversion de code, et si vous possédez le code source de l'indicateur ...
Doddge Merci beaucoup Nicolas, j'ai utilisé le formulaire avec les informations que j'ai sur cet in...
Juan Salas Hi FULVIO09, Nice piece of work. It seems to work very well. Does only work for INDEXES??...
Johann Hi @FULVI09, I understand the instructions however I'm not too sure how to determine the "p...
Player8520 Hello, It doesn't work with me either. However, I changed AA to 180 on line 15, added th...
Nicolas Thanks again for all your valuable posts... and well formatted code! :)
Abdelkrim Maksour hi sir is this indicator for mt4 and how i can get one .
Nicolas Thanks a lot for this new valuable addition to our library. I changed line 76 with "barindex...
Horance Thanks. I've noticed this leftover after submission, but it was too late for editing. BTW, I...
Etienne Thanks Horance for porting this code to PRT. I would like to bring some speedup to your cod...
Horance This is a good question. John Ehlers explains it in Rocket Science for Traders. You have to ...
cbeukes Much appreciated, I will give that a try. Also, is there any criteria that one could use to ...
avatar
Anonymous Thanks for the code! I'm trying to understand how it works, and have a few questions... line...

Top