Dynamic Zone Stoch RSI

v10.3
Dynamic Zone Stoch RSI

This indicator make stochastic calculation of a RSI indicator over the last X periods (RSI and stochastic periods can  be modified in the first line of code).

By adding Bollinger bands of 2 standard deviations of the “Stoch RSI” curve, dynamic zones of overbought and oversold areas are displayed.

This code has been translated from LUA programming language, original indicator from fxcodebase.

 

 

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. gregus • 02/17/2017 #

    bonjour a tous
    quelqu un pourait il recodé en prt il sagit  du dynamique zone ma, je n arrive pas a joindre le gif qui correspond mais code tres intéréssant.
    merci pour la communauté prt.
     
    voici le code:
    #property indicator_chart_window#property indicator_buffers 6#property indicator_color1  DeepSkyBlue#property indicator_color2  LimeGreen#property indicator_color3  LimeGreen#property indicator_color4  Red#property indicator_color5  Red#property indicator_color6  Peru#property indicator_style3  STYLE_DOT#property indicator_style4  STYLE_DOT#property indicator_style6  STYLE_DASH#property indicator_width1  3#property indicator_width2  2#property indicator_width5  2
    //////////
    #import “dynamicZone.dll”   double dzBuyP(double& sourceArray[],double probabiltyValue, int lookBack, int bars, int i, double precision);   double dzSellP(double& sourceArray[],double probabiltyValue, int lookBack, int bars, int i, double precision);#import
    //////    ////
    extern int    Length                  = 21;extern int    Price                   = 0;extern bool   ShowMiddleLine          = true;extern int    DzLookBackBars          = 35;extern double DzStartBuyProbability1  = 0.10;extern double DzStartBuyProbability2  = 0.25;extern double DzStartSellProbability1 = 0.10;extern double DzStartSellProbability2 = 0.25;
    //////////
    double MABuffer[];double alpha[];double prices[];double bl1Buffer[];double bl2Buffer[];double sl1Buffer[];double sl2Buffer[];double zliBuffer[];double stored[][7];
    //+——————————————————————+//|                                                                  |//+——————————————————————+//////////
    int init(){   SetIndexBuffer(0,MABuffer);   SetIndexBuffer(1,bl1Buffer);   SetIndexBuffer(2,bl2Buffer);   SetIndexBuffer(3,sl2Buffer);   SetIndexBuffer(4,sl1Buffer);   SetIndexBuffer(5,zliBuffer);              IndicatorShortName(“Jurik filter simple (“+Length+”)”);   return(0);}int deinit() { return(0); }
    //+——————————————————————+//|                                                                  |//+——————————————————————+//////////
    int start(){   double precision = Point*100.0;   int counted_bars=IndicatorCounted();   int i,r,limit;
       if(counted_bars<0) return(-1);   if(counted_bars>0) counted_bars–;         limit = Bars-counted_bars;         if (ArrayRange(prices,0) != Bars) ArrayResize(prices,Bars);
       //   //   //   //   //      for (i=limit, r=Bars-i-1; i>=0; i–,r++)   {      prices[r]   = iMA(NULL,0,1,0,MODE_SMA,Price,i);      MABuffer[i] = iNoLagMa(alpha,prices,1,Length,i,r);      if (DzStartBuyProbability1 >0) bl1Buffer[i] = dzBuyP (MABuffer, DzStartBuyProbability1,  DzLookBackBars, Bars, i, precision);      if (DzStartBuyProbability2 >0) bl2Buffer[i] = dzBuyP (MABuffer, DzStartBuyProbability2,  DzLookBackBars, Bars, i, precision);      if (DzStartSellProbability1>0) sl1Buffer[i] = dzSellP(MABuffer, DzStartSellProbability1, DzLookBackBars, Bars, i, precision);      if (DzStartSellProbability2>0) sl2Buffer[i] = dzSellP(MABuffer, DzStartSellProbability2, DzLookBackBars, Bars, i, precision);      if (ShowMiddleLine)            zliBuffer[i] = dzSellP(MABuffer, 0.5                    , DzLookBackBars, Bars, i, precision);      }   return(0);}
    //+——————————————————————+//|                                                                  |//+——————————————————————+//////////
    #define Pi 3.1415926535
    //////////
    double values[][3];#define _length  0#define _len     1#define _weight  2
    //////////
    double iNoLagMa(double &alpha[], double &price[], int forvalue, int length, int i, int r){   int forValue = forvalue-1;   if (length<3) return(price[r]);      //   //   //   //   //      if (ArrayRange(values,0)<(forValue+1) || values[forValue][_length] != length)   {      double Cycle = 4.0;      double Coeff = 3.0*Pi;      int    Phase = length-1;            if (ArrayRange(values,0)<forValue+1) ArrayResize(values,forValue+1);
             values[forValue][_length] = length;         values[forValue][_len]    = length*4 + Phase;           values[forValue][_weight] = 0;           ArrayResize(alpha,values[forValue][_len]);
             for (int k=0; k<values[forValue][_len]-1; k++)         {            if (k<=Phase-1)                  double t = 1.0 * k/(Phase-1);            else        t = 1.0 + (k-Phase+1)*(2.0*Cycle-1.0)/(Cycle*length-1.0);             double beta = MathCos(Pi*t);            double g = 1.0/(Coeff*t+1); if (t <= 0.5 ) g = 1;                  alpha[k]                   = g * beta;            values[forValue][_weight] += alpha[k];         }   }      //   //   //   //   //      if (values[forValue][_weight]>0)   {      int    len = values[forValue][_len];      double sum = 0;           for (k=0; k < len-1; k++) sum += alpha[k]*price[r-k];                 return( sum / values[forValue][_weight]);   }   else return(0);           }

    • Nicolas • 02/17/2017 #

      Merci de faire une requête spécifique sur le forum. 

avatar
Register or

Likes

avatar avatar avatar avatar avatar avatar avatar avatar avatar
Related users ' posts
haseluis Hello, who can help me why the screener does not work // Der folgende Code bezieht sich auf...
Nicolas Hello, please ask your question with a new forum topic, this is not the place to ask for sup...
rejo007 hello david, i'll try it could you tell me wich strategy do you use in real? thanks
David Somogyi Hello, I have a couple of DAX strategies of breakout and mean reversion. I'll try to post...
Roberto Blázquez Hi David, I just saw your strategy and it's good!!! I'm going to try it from today in real a...
juanj To follow new developments or get the latest version of this strategy please visit the forum...
tahar Hello Juan, I wanted to test Universal Strategy via a demo account on PRT but nothing happen...
BravoDelta @juanj wondering if you may help me please. I am looking for a simply strategy to use on the...
Wilko I am not familiar with the screener function, but I am quite certain it should be quite simp...
Gubben @Wilko have you had a look at this again since MTF support? Heard you talk on Börssnack btw..
Wilko @Gubben not really. It was something I posted to show that simpler is usually better. Hope y...
Pier
8 years ago
Cris48  Nice Pier, I put inside also the adx .... //settings//b=20 if low < low[1] thenllv = (...
parthdesai11 Indicator not working in Beta Version 11.1 , Any idea ??
Nicolas What is the issue with version 11 and this indicator please?
GraHal Yes sorry, I set up a link to a screen shot on my google drive and then I got locked into th...
gabri Here's the thread https://www.prorealcode.com/topic/multiframe-rsi-of-rsi/
Bernard13 Bonjour Nicolas, Pourriez-vous m'indiquer si cet indicateur fonctionne avec la V11 ? Le di...
Wing There's a few threads on the forum about backtest and live trades being different at times. ...
ET I agree with verdi55. As it is now, the code will only test for a breakout on the upside (li...
Philipjonasson are u still active Wing?
nwesterhuijs Thanks, only saw it just now.
juanj For the latest version and discussions see the Ichimoku thread here: https://www.prorealcod...
Louwrens Hi Juanj. Thanks for this. I am tying it as we speak. It does not trade that often, which is...
ALE
8 years ago
CSR strategy DAX 1 D
CSR strategy DAX 1 D
17
Strategies
Jesper I tried it on dax 1D and I did not get any trades. Shifted to 10H and it started working. Wo...
rgrgrgr I have the same problem
avatar
crazytrader Is this working?
Maz
8 years ago
Francesco78 very nice, thanks!
Wilko Interesting! Thanks for sharing!
BjornH Extremely nice, thanks!
finplus Thanks for the job. Which variables do you suggest for timeframe 1 hour? 
Maz Depends massively on your market and the volatility. I suggest using the variable optimizer ...
1Randy This a great momentum filter! I would like to see volume momentum incorporated into the indi...
majid52026 Hi I want MBXF Timing for mq5 Does anyone have this indicator???
dertopen Hi Nicolas good work for the code translation when i chek the mbfx system site i see in t...
Nicolas Yes, just change the color by yourself in the indicator settings window.
Nicolas All conditions under parenthesis for the c1 to c4 conditions should be inverted. 
tomus Can you give an example of the overbought codes please? Thanks.
ams123 Frank Merci Nicholas -:)
Djo Not working on V11. The RSI doesn't appear on the chart.
Mika83 Bonjour, J'ai des soucis de lecture de syntaxe avec la variable "drawsegment" sur la versio...
seb234 Salut Mika, j'ai la version V11.1, la formule fonctionne. Mais il est préférable, dixit Nico...
bolsatonimora2 Hi, nice indicator, it´s possible to include a middle line with 50 value? ty!
gabri Hi, EMA26 approximate almost exactly the 50% line
Alain Wilder MA is exactly the 50% line
wtangsiri Bonjour J'ai importé le fichier ITF en question, mais cela me donne, en bas de l'écran, un...
Nicolas Il faut ajouter l'indicateur sur le graphique du prix.
skuggan89 This is a great indicator, works very well!! Is there any algo based on this indicator that ...
owes29 Hi is there anyway to develop this for the pro scanner on daily or hourly scans. so it woul...
Nicolas Of course, please add a query in the proscreener forum.
Bruno Carnazzi C'est dommage, cette histoire d'énergie fractale bousille complètement la précision de l'ind...

Top