ProRealCode - Trading & Coding with ProRealTime™
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
Is the above Indicator available in the Library?
I can’t see / find it?? I searched on PRIX.
Hello GraHal,
The itf file is attached, I found this indicator at the indicator library. Here’s the link:
Aha you renamed the Indicator 🙂
Thank you
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??
Did you install the indicator on the price chart panel?
and another question – how can I convert the indicator to an auto strategy?
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?
@robertogozzi, can you please explain how did you convert it?
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
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?
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.
I got Roberto version going as a Auto-System.
https://www.prorealcode.com/topic/autosystem-zig-zag-prix-vol-fib-pub/
a screener for an Indicator by kris75
This topic contains 14 replies,
has 3 voices, and was last updated by GraHal
6 years, 2 months ago.
| Forum: | ProScreener support |
| Language: | English |
| Started: | 11/13/2019 |
| Status: | Active |
| Attachments: | 2 files |
The information collected on this form is stored in a computer file by ProRealCode to create and access your ProRealCode profile. This data is kept in a secure database for the duration of the member's membership. They will be kept as long as you use our services and will be automatically deleted after 3 years of inactivity. Your personal data is used to create your private profile on ProRealCode. This data is maintained by SAS ProRealCode, 407 rue Freycinet, 59151 Arleux, France. If you subscribe to our newsletters, your email address is provided to our service provider "MailChimp" located in the United States, with whom we have signed a confidentiality agreement. This company is also compliant with the EU/Swiss Privacy Shield, and the GDPR. For any request for correction or deletion concerning your data, you can directly contact the ProRealCode team by email at privacy@prorealcode.com If you would like to lodge a complaint regarding the use of your personal data, you can contact your data protection supervisory authority.