a screener for an Indicator by kris75

Viewing 15 posts - 1 through 15 (of 15 total)
  • Author
    Posts
  • #112695 quote
    assafn
    Participant
    Average

    I would like some help with programming a screener for this indicator (the itf file is attached).
    how can I create a screener that shows results whenever a new ▲ sign is created?
    Thank you
    Assaf

    #112721 quote
    GraHal
    Participant
    Master

    Is the above Indicator available in the Library?

    I can’t see / find it??  I searched on PRIX.

    #112724 quote
    assafn
    Participant
    Average

    Hello GraHal,

    The itf file is attached, I found this indicator at the indicator library. Here’s the link:

     

    ZigZag Volume by Price Fibonacci Indicator (FIZIVOL)

    #112725 quote
    GraHal
    Participant
    Master

    Aha you renamed the Indicator 🙂

    Thank you

    #112729 quote
    GraHal
    Participant
    Master

    I can’t even get it to work as an Indicator! 🙂

    I haven’t tried very hard, but I can’t get even the two Indicators to work on the link you posted.

    I tried on the DJI so there is volume data.

    Probably something simple?

    Why not try and get the Indicator converted to an Auto-Strategy?? Least then you can try on various markets and TF’s to see if the strategy can make any money by doing backtests etc??

    I always think with a Screener that you end up with a list of results and if you took a trade on one of them and sat it out then you are only testing one trades compared to loads and loads of trades in a backtest??

    #112730 quote
    assafn
    Participant
    Average

    Did you install the indicator on the price chart panel?

    and another question – how can I convert the indicator to an auto strategy?

    #112731 quote
    GraHal
    Participant
    Master

    Did you install the indicator on the price chart panel?

    No! hahaha I installed as a separate chart … I knew it must be something simple!  I’m watching a film with one eye also so I wasn’t concentrating! 🙂

    how can I convert the indicator to an auto strategy?

    I wish I knew! 🙂 But the effort could be more fruitful than ending up with a Screener??

    If I come back to this and achieve anything then I’ll let you know … don’t hold your breath! 🙂

    In the meantime, anybody please dive in and help?

    #112732 quote
    assafn
    Participant
    Average

    Thanks man,

    enjoy the film 🙂

    GraHal thanked this post
    #112740 quote
    robertogozzi
    Moderator
    Master

    I could install it, but I had to lower variable NbOfDiv from 12 to 6 to avoid an error message about infinite loops.

    I also tried to convert it to a screener, but it was impossible to get rid of the above message in ProScreener.

    Maybe Kris75 could help.

    assafn thanked this post
    #112745 quote
    assafn
    Participant
    Average

    @robertogozzi, can you please explain how did you convert it?

    #112756 quote
    robertogozzi
    Moderator
    Master

    I removed all graphic instructions (not supported by ProScreener), then I added a dummy IF…END before the end to avoid removing unused variables, then added a conditions where  you said you wanted it and used it to scan the market.

    This is the code (but you’ll find the attached .ITF file, as well):

    //The main goal of this indicator is to identify strengh and weekness in the distribution of volume per price
    //and to identify future support and resistance in the next ZIG ZAG sequence
    //
    //VolumebypricelevelsV2Extended by Kris75
    //VolumeByPrice HighLowBreakdown (mods by Kris75)
    //PRC_multi-fractals-zigzag-highlow | indicator
    //PRC_Bull&Bear Volume on Price | indicator
    //05.07.2018
    //Nicolas @ www.prorealcode.com
    //Sharing ProRealTime knowledge
    
    LookBack      = 10
    NbOfDiv       = 5
    ScaleFactor   = 1
    LineExtension = 0
    FiboExtension = 0
    NumbarVerif   = 0
    
    //r=100
    //g=100
    //b=100
     
    //r1=200
    //g1=200
    //b1=200
    //
     
    //---major zigzag points
     
    if lastpoint <= 0 then
    if close[LookBack] >= highest[2*LookBack+1](close) then
    NewPeak = 1
    HighLookBack = high[LookBack]
    Higher = close[LookBack]
    HigherBarIndex = barindex[LookBack]
    else
    NewPeak = 0
    endif
    endif
     
     
    if NewPeak then
     
     
    NewHigherBarIndex = HigherBarIndex
    LastLowerBarIndex = NewLowerBarIndex
    NewHigher = higher
    LastLower = NewLower
    LagAfterSignal = abs(barindex-NewHigherBarIndex)
    lastpoint=1
     
    //drawsegment (lastLowerBarindex,lastlower,HigherBarIndex,NewHigher) coloured (0,0,200)
    //drawsegment (NewHigherBarIndex,lastlower,NewHigherBarIndex,NewHigher) coloured (r1,g1,b1)
    //drawtext("▼", NewHigherBarIndex,HighLookBack) coloured(255,0,0)
     
     
    //// calculation of MinInf  MinSup Max
     
    StartBarindex = LastLowerBarIndex
    EndBarindex = NewHigherBarIndex
     
    StartBarindex = max(1,StartBarindex)
    EndBarindex = max(1,EndBarindex)
     
    LastLowerBarIndex = max(1,LastLowerBarIndex)
    NewHigherBarIndex = max(1,NewHigherBarIndex)
     
    StartBarSignalIndex = max(1,StartBarSignalIndex)
     
    StartBarSignalIndex = LagAfterSignal + (EndBarindex-StartBarindex) // calculation of the real Barindex when we get the Newpeak / Newdown information : we will need it to calculate the global volume during a sequence.
     
     
    hh=NewHigher
    ll=LastLower
    div = (hh-ll)/NbOfDiv      // thickness of the horizontal bar
    i=0
     
     
    //////// Fibo
    fullrange = abs(hh-ll)
    fibo100   = hh
    fibo0     = ll
    fibo236   = ll+(fullrange*0.236)
    fibo382   = ll+(fullrange*0.382)
    fibo500    = ll+fullrange/2
    fibo618   = ll+(fullrange*0.618)
    fibo764   = ll+(fullrange*0.764)
    // extensions++
    fibo1236  = hh +(fullrange*0.236)
    fibo1382  = hh +(fullrange*0.382)
    fibo1500  = hh +fullrange/2
    fibo1618  = hh +(fullrange*0.618)
    fibo1764  = hh +(fullrange*0.764)
    fibo200   = hh + fullrange
    // extensions--
    fibo0236  = ll - (fullrange*0.236)
    fibo0382  = ll - (fullrange*0.382)
    fibo0500  = ll - fullrange/2
    fibo0618  = ll - (fullrange*0.618)
    fibo0764  = ll - (fullrange*0.764)
    fibo00   = ll - fullrange
     
     
     
    ///support - resistance
    lrangeminInf = 0
    hrangeminInf = 0
    lrangeminSup = 0
    hrangeminSup = 0
    lrangemax = 0
    hrangemax = 0
    MaxVol = 0
    NumBarVol = 0
    NumBarMaxVol = 0
    NumBarMinVolSup = 0
    NumBarMinVolInf = 0
     
     
    volsum = summation [StartBarSignalIndex](volume)-summation [LagAfterSignal](volume)
     
     
    while i<NbOfDiv do
    lrange=ll+div*i
    hrange=lrange+div
    volbull=0
    volbear=0
    NumBarVol = i+1
     
    for q = StartBarSignalIndex downto LagAfterSignal do
    if close[q]>=lrange and close[q]<=hrange then
    if close[q]>open[q] then
    volbull=volbull+volume[q]
    else
    volbear=volbear+volume[q]
    endif
    endif
    next
    ////bullbar = round((volbull*StartBar)/volsum)*scalefactor
    ////bearbar = round((volbear*StartBar)/volsum)*scalefactor
    volbar = ((volbear+volbull)/volsum)*abs(StartBarSignalIndex-LagAfterSignal)*scalefactor
     
     
    if i=0 then
     
     
    lrangemax = lrange
    hrangemax = hrange
    MaxVol = volbar
    NumBarMaxVol = NumBarVoL
     
    lrangeminSup = lrange
    hrangeminSup = hrange
    MinVolSup = VolBar
    NumBarMinVolSup = NumBarVol
     
    lrangeminInf = lrange
    hrangeminInf = hrange
    MinVolInf = VolBar
    NumBarMinVolInf = NumBarVol
     
    endif
     
     
    if volbar > MaxVol then
    lrangemax = lrange
    hrangemax = hrange
    MaxVol = volbar
    NumBarMaxVol = NumBarVol
     
    if MinVolSup < MinVolInf then
    lrangeminInf = lrangeminSup
    hrangeminInf = hrangeminSup
    MinVolInf = MinVolSup
    NumBarMinVolInf = NumBarMinVolSup
    endif
     
    lrangeminSup = lrange
    hrangeminSup = hrange
    MinVolSup = VolBar
    NumBarMinVolSup = NumBarVol
     
    elsif volbar < MaxVol then
    if volbar < MinVolSup then
    lrangeminSup = lrange
    hrangeminSup = hrange
    MinVolSup = VolBar
    NumBarMinVolSup = NumBarVol
    endif
     
    else
    lrangeminInf = lrangeminInf
    hrangeminInf = hrangeminInf
    MinVolInf = MinVolInf
    NumBarMinVolInf = NumBarMinVolInf
     
    endif
     
    //drawrectangle(StartbarIndex,lrange,StartbarIndex+volbar,hrange) coloured(46,139,87,255)
     
    i=i+1
    wend
     
     
    MaxVolumLevel = (lrangemax + hrangemax)/2
    MinVolumSupLevel = (lrangeminSup + hrangeminSup)/2
    MinVolumInfLevel = (lrangeminInf + hrangeminInf)/2
     
    // option drawing the support and resistance line
     
    if LineExtension then
     
    //DRAWHLINE((lrangemax + hrangemax)/2)coloured(0,255,0)
     
    endif
     
    // option checking the support and resistance line calculation
     
    if NumbarVerif then
     
    //drawtext("#NumBarMaxVol#",StartbarIndex-1,MaxVolumLevel,Dialog,standard,10) coloured(255,0,0)
    //drawtext("#NumBarMinVolSup#",StartbarIndex-1,MinVolumSupLevel,Dialog,standard,10) coloured(255,0,0)
    //drawtext("#NumBarMinVolInf#",StartbarIndex-1,MinVolumInfLevel,Dialog,standard,10) coloured(255,0,0)
     
    endif
    //
    //drawtext("▼▼",StartbarIndex+2,MinVolumInfLevel,Dialog,standard,10) coloured(0,0,255)// MinInf
    //drawtext("▲▲",StartbarIndex+2,MinVolumSupLevel,Dialog,standard,10) coloured(0,0,255)// MinSup
    //drawtext("■■",StartbarIndex+2,MaxVolumLevel,Dialog,standard,10) coloured(255,0,0) // Max
     
     
     
     
    // Fibo
     
    //drawsegment(StartbarIndex,fibo100,EndbarIndex,fibo100) coloured(r1,g1,b1)
    //drawtext("100 -",EndbarIndex-2,fibo100,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo236,EndbarIndex,fibo236) coloured(r1,g1,b1)
    //drawtext("23.6",EndbarIndex-2,fibo236,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo382,EndbarIndex,fibo382) coloured(r1,g1,b1)
    //drawtext("38.2",EndbarIndex-2,fibo382,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo500,EndbarIndex,fibo500) coloured(r1,g1,b1)
    //drawtext("50",EndbarIndex-2,fibo500,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo618,EndbarIndex,fibo618) coloured(r1,g1,b1)
    //drawtext("61.8",EndbarIndex-2,fibo618,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo764,EndbarIndex,fibo764) coloured(r1,g1,b1)
    //drawtext("76.4",EndbarIndex-2,fibo764,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(StartbarIndex,fibo0,EndbarIndex,fibo0) coloured(r1,g1,b1)
    //drawtext("0",EndbarIndex-2,fibo0,Dialog,Standard,10) coloured(r,g,b)
     
     
    // option extending Fibonacci lines to create potential takeprofits
     
    if FiboExtension then
     
    //drawsegment (EndbarIndex,fibo200,EndbarIndex,fibo00) coloured (r1,g1,b1)
     
    // Extensions++
    //drawsegment(EndbarIndex+1,fibo1236,EndbarIndex,fibo1236) coloured(0,255,0)
    //drawtext("+23.6",EndbarIndex-2,fibo1236,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1382,EndbarIndex,fibo1382) coloured(0,255,0)
    //drawtext("+38.2",EndbarIndex-2,fibo1382,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1500,EndbarIndex,fibo1500) coloured(0,255,0)
    //drawtext("+50",EndbarIndex-2,fibo1500,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1618,EndbarIndex,fibo1618) coloured(0,255,0)
    //drawtext("+61.8",EndbarIndex-2,fibo1618,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1764,EndbarIndex,fibo1764) coloured(0,255,0)
    //drawtext("+76.4",EndbarIndex-2,fibo1764,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo200,EndbarIndex,fibo200) coloured(0,255,0)
    //drawtext("200",EndbarIndex-2,fibo200,Dialog,Standard,10) coloured(0,255,0)
    //
    //// Extensions --
    //drawsegment(EndbarIndex+1,fibo0236,EndbarIndex,fibo0236) coloured(255,0,0)
    //drawtext("-23.6",EndbarIndex-2,fibo0236,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0382,EndbarIndex,fibo0382) coloured(255,0,0)
    //drawtext("-38.2",EndbarIndex-2,fibo0382,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0500,EndbarIndex,fibo0500) coloured(255,0,0)
    //drawtext("-50",EndbarIndex-2,fibo0500,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0618,EndbarIndex,fibo0618) coloured(255,0,0)
    //drawtext("-61.8",EndbarIndex-2,fibo0618,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0764,EndbarIndex,fibo0764) coloured(255,0,0)
    //drawtext("-76.4",EndbarIndex-2,fibo0764,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo00,EndbarIndex,fibo00) coloured(255,0,0)
    //drawtext("-200",EndbarIndex-2,fibo00,Dialog,Standard,10) coloured(255,0,0)
     
    endif
     
    endif
     
     
     
    ////// ZigZag for ProOrder
     
     
    if lastpoint>=0 then
     
    if close[LookBack] <= lowest[2*LookBack+1](close)  then
    NewDown = 1
    Lower = close[LookBack]
    LowLookBack = Low[LookBack]
    LowerBarIndex = barindex[LookBack]
     
    else
    NewDown = 0
    endif
    endif
     
     
    MyCond = 0
    if NewDown then
     
     
    NewLowerBarIndex=LowerBarIndex
    LastHigherBarIndex = NewHigherBarIndex
    Newlower = lower
    LastHigher = NewHigher
    LagAfterSignal = abs(barindex-NewLowerBarIndex)
    lastpoint = -1
    //
    //drawsegment (LastHigherBarIndex,lasthigher,NewLowerBarIndex,NewLower) coloured (0,0,255)
    //drawsegment (LastLowerBarIndex,Newlower,LastLowerBarIndex,Lasthigher) coloured (r1,g1,b1)
    //drawtext("▲", LowerBarIndex, LowLookBack) coloured (255,0,0)
    MyCond = 1
    //// calculation MinInf MinSup Max
    EndBarindex = NewLowerBarIndex
    StartBarindex = LastHigherBarIndex
     
    StartBarindex = max(1,StartBarindex)
    Endbarindex = max(1,Endbarindex)
    StartBarSignalIndex = max(1,StartBarSignalIndex)
     
     
    StartBarSignalIndex = LagAfterSignal + (EndBarindex-StartBarindex) // calculation of the real Barindex when we get the Newpeak / Newdown information : we will need it to calculate the global volume during a sequence.
     
     
     
    hh=Lasthigher
    ll=Newlower
    div = (hh-ll)/NbOfDiv      // thickness of the horizontal bar
    i=0
     
     
    ///Fibo
     
    fullrange = abs(hh-ll)
    fibo100   = ll
    fibo0     = hh
    fibo236   = hh-(fullrange*0.236)
    fibo382   = hh-(fullrange*0.382)
    fibo500    = hh-fullrange/2
    fibo618   = hh-(fullrange*0.618)
    fibo764   = hh-(fullrange*0.764)
    // extensions--
    fibo0236  = ll - (fullrange*0.236)
    fibo0382  = ll - (fullrange*0.382)
    fibo0500  = ll - fullrange/2
    fibo0618  = ll - (fullrange*0.618)
    fibo0764  = ll - (fullrange*0.764)
    fibo00    = ll - fullrange
    // extensions++
    fibo1236  = hh +(fullrange*0.236)
    fibo1382  = hh +(fullrange*0.382)
    fibo1500  = hh +fullrange/2
    fibo1618  = hh +(fullrange*0.618)
    fibo1764  = hh +(fullrange*0.764)
    fibo200   = hh + fullrange
     
    //////////////
     
    volsum = summation [StartBarSignalIndex](volume)-summation [LagAfterSignal](volume)
     
     
    while i<NbOfDiv do
    lrange=ll+div*i
    hrange=lrange+div
    volbull=0
    volbear=0
    NumBarVol = i+1
     
    for q = StartBarSignalIndex downto LagAfterSignal do
    if close[q]>=lrange and close[q]<=hrange then
    if close[q]>open[q] then
    volbull=volbull+volume[q]
    else
    volbear=volbear+volume[q]
    endif
    endif
    next
    //bullbar = round((volbull*StartBar)/volsum)*scalefactor
    //bearbar = round((volbear*StartBar)/volsum)*scalefactor
    volbar = (volbear+volbull)/volsum *abs(StartBarSignalIndex-LagAfterSignal)*scalefactor // /scalefactor
     
     
    if i=0 then
     
    lrangemax = lrange
    hrangemax = hrange
    MaxVol = volbar
    NumBarMaxVol = NumBarVoL
     
    lrangeminSup = lrange
    hrangeminSup = hrange
    MinVolSup = VolBar
    NumBarMinVolSup = NumBarVol
     
    lrangeminInf = lrange
    hrangeminInf = hrange
    MinVolInf = VolBar
    NumBarMinVolInf = NumBarVol
     
    endif
     
     
    if volbar > MaxVol then
    lrangemax = lrange
    hrangemax = hrange
    MaxVol = volbar
     
     
    if MinVolSup < MinVolInf then
    lrangeminInf = lrangeminSup
    hrangeminInf = hrangeminSup
    MinVolInf = MinVolSup
    NumBarMinVolInf = NumBarMinVolSup
    endif
     
    lrangeminSup = lrange
    hrangeminSup = hrange
    MinVolSup = VolBar
    NumBarMinVolSup = NumBarVol
     
    elsif volbar < MaxVol then
    if volbar < MinVolSup then
    lrangeminSup = lrange
    hrangeminSup = hrange
    MinVolSup = VolBar
    NumBarMinVolSup = NumBarVol
    endif
     
    else
    lrangeminInf = lrangeminInf
    hrangeminInf = hrangeminInf
    MinVolInf = MinVolInf
    NumBarMinVolInf = NumBarMinVolInf
     
    endif
     
     
    //drawrectangle(StartbarIndex,lrange,StartbarIndex+volbar,hrange) coloured(46,139,87,255)
     
    i=i+1
    wend
     
    MaxVolumLevel = (lrangemax + hrangemax)/2
    MinVolumSupLevel = (lrangeminSup + hrangeminSup)/2
    MinVolumInfLevel = (lrangeminInf + hrangeminInf)/2
     
     
     
    if LineExtension then
     
    //DRAWHLINE((lrangemax + hrangemax)/2)coloured(255,0,0)
     
    endif
    //
    if NumbarVerif then
     
    //drawtext("#NumBarMaxVol#",StartbarIndex-1,MaxVolumLevel,Dialog,standard,10) coloured(255,0,0)
    //drawtext("#NumBarMinVolSup#",StartbarIndex-1,MinVolumSupLevel,Dialog,standard,10) coloured(255,0,0)
    //drawtext("#NumBarMinVolInf#",StartbarIndex-1,MinVolumInfLevel,Dialog,standard,10) coloured(255,0,0)
     
    endif
    //
    //drawtext("▼▼",StartbarIndex+2,MinVolumInfLevel,Dialog,standard,10) coloured(0,0,255)// MinInf
    //drawtext("▲▲",StartbarIndex+2,MinVolumSupLevel,Dialog,standard,10) coloured(0,0,255)// MinSup
    //drawtext("■■",StartbarIndex+2,MaxVolumLevel,Dialog,standard,10) coloured(255,0,0) // Max
     
     
     
    //Fibo
     
    //drawsegment(StartbarIndex,fibo100,EndbarIndex,fibo100) coloured(r1,g1,b1)
    //drawtext("100",EndbarIndex-2,fibo100,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo236,EndbarIndex,fibo236) coloured(r1,g1,b1)
    //drawtext("23.6",EndbarIndex-2,fibo236,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo382,EndbarIndex,fibo382) coloured(r1,g1,b1)
    //drawtext("38.2",EndbarIndex-2,fibo382,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo500,EndbarIndex,fibo500) coloured(r1,g1,b1)
    //drawtext("50",EndbarIndex-2,fibo500,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo618,EndbarIndex,fibo618) coloured(r1,g1,b1)
    //drawtext("61.8",EndbarIndex-2,fibo618,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(EndbarIndex+1,fibo764,EndbarIndex,fibo764) coloured(r1,g1,b1)
    //drawtext("76.4",EndbarIndex-2,fibo764,Dialog,Standard,10) coloured(r,g,b)
    //
    //drawsegment(StartbarIndex,fibo0,EndbarIndex,fibo0) coloured(r1,g1,b1)
    //drawtext("0",EndbarIndex-2,fibo0,Dialog,Standard,10) coloured(r,g,b)
     
    If FiboExtension then
     
    // Extensions++
     
    //drawsegment (EndbarIndex,fibo200,EndbarIndex,fibo00) coloured (r1,g1,b1)
    //
    //drawsegment(EndbarIndex+1,fibo1236,EndbarIndex,fibo1236) coloured(0,255,0)
    //drawtext("+23.6",EndbarIndex-2,fibo1236,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1382,EndbarIndex,fibo1382) coloured(0,255,0)
    //drawtext("+38.2",EndbarIndex-2,fibo1382,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1500,EndbarIndex,fibo1500) coloured(0,255,0)
    //drawtext("+50",EndbarIndex-2,fibo1500,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1618,EndbarIndex,fibo1618) coloured(0,255,0)
    //drawtext("+61.8",EndbarIndex-2,fibo1618,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo1764,EndbarIndex,fibo1764) coloured(0,255,0)
    //drawtext("+76.4",EndbarIndex-2,fibo1764,Dialog,Standard,10) coloured(0,255,0)
    //
    //drawsegment(EndbarIndex+1,fibo200,EndbarIndex,fibo200) coloured(0,255,0)
    //drawtext("200",EndbarIndex-2,fibo200,Dialog,Standard,10) coloured(0,255,0)
    //
    //// Extensions --
    //drawsegment(EndbarIndex+1,fibo0236,EndbarIndex,fibo0236) coloured(255,0,0)
    //drawtext("-23.6",EndbarIndex-2,fibo0236,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0382,EndbarIndex,fibo0382) coloured(255,0,0)
    //drawtext("-38.2",EndbarIndex-2,fibo0382,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0500,EndbarIndex,fibo0500) coloured(255,0,0)
    //drawtext("-50",EndbarIndex-2,fibo0500,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0618,EndbarIndex,fibo0618) coloured(255,0,0)
    //drawtext("-61.8",EndbarIndex-2,fibo0618,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo0764,EndbarIndex,fibo0764) coloured(255,0,0)
    //drawtext("-76.4",EndbarIndex-2,fibo0764,Dialog,Standard,10) coloured(255,0,0)
    //
    //drawsegment(EndbarIndex+1,fibo00,EndbarIndex,fibo00) coloured(255,0,0)
    //drawtext("-200",EndbarIndex-2,fibo00,Dialog,Standard,10) coloured(255,0,0)
     
    endif
     
    endif
     
    IF HighLookBack AND Fibo100 AND Fibo0 AND Fibo236 AND Fibo382 AND fibo500 AND fibo618 AND fibo764 AND Fibo1236 AND Fibo1382 AND Fibo1500 AND Fibo1618 AND Fibo1764 AND Fibo200 AND Fibo0236 AND Fibo0382 AND Fibo0500 AND Fibo0618 AND Fibo0764 AND Fibo00 AND numbarmaxvol AND maxvolumlevel AND minvolumsuplevel AND minvoluminflevel AND lowlookback THEN
    ENDIF
     
    SCREENER[MyCond]
     
     
    //Rest of the code of Nicolas if you want to create intermadiate ZigZag
     
    ////---mino zigzag points
    //if high[round(LookBack/2)] >= highest[LookBack+1](high) then
    //LNewPeak = 1
    //else
    //LNewPeak = 0
    //endif
    //
    //if low[round(LookBack/2)] <= lowest[LookBack+1](low)  then
    //NewDownL = -1
    //else
    //NewDownL = 0
    //endif
    //
    //if LNewPeak = 1 then
    //LNewHigher = high[round(LookBack/2)]
    //NewPeakigherBarIndex = barindex[round(LookBack/2)]
    //endif
    //
    //if NewDownL = -1 then
    //LBOTy = low[round(LookBack/2)]
    //LBOTx = barindex[round(LookBack/2)]
    //endif
    //
    //if LNewPeak>0 then
    //DRAWTEXT("º",NewPeakigherBarIndex,LNewHigher+ATR/2,Dialog,Bold,20) coloured(200,0,0)
    //endif
    //if NewDownL<0 then
    //DRAWTEXT("º",LBOTx,LBOTy-ATR/2,Dialog,Bold,20) coloured(0,200,0)
    //endif
    GraHal and assafn thanked this post
    #112770 quote
    assafn
    Participant
    Average

    Thank you very much for your effort and time.

    The screener gives an error notification:

    “- the loop doesn’t have a termination condition
    – the termination condition can never be met
    – the termination causes the loop to start over
    To run the scan, modify the code of your ProScreener. “

    any ideas?

    #112779 quote
    robertogozzi
    Moderator
    Master

    Too many loops, some are thiught to be endless ones.

    It’s the PRT engine that does not support this, I had to change the first two settings to make it work, try to lower them again.

    PRT does not love too complex code, especially when there are loops within loops or too many nested IF…ENDIF’s or loops within IF…ENDIF.

    #112808 quote
    assafn
    Participant
    Average

    👍

    #112830 quote
    GraHal
    Participant
    Master

    I got Roberto version going as a Auto-System.

    https://www.prorealcode.com/topic/autosystem-zig-zag-prix-vol-fib-pub/

    robertogozzi thanked this post
Viewing 15 posts - 1 through 15 (of 15 total)
  • You must be logged in to reply to this topic.

a screener for an Indicator by kris75


ProScreener support

New Reply
Author
author-avatar
assafn @assafn Participant
Summary

This topic contains 14 replies,
has 3 voices, and was last updated by GraHal
6 years, 2 months ago.

Topic Details
Forum: ProScreener support
Language: English
Started: 11/13/2019
Status: Active
Attachments: 2 files
Logo Logo
Loading...