Getting your screener to scan for indicators created in probuilder

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #164752 quote
    Geoffrey Toplis
    Participant
    New

    Hi there,

    I am new to using Prorealtime screener and Probuilder and do not have any coding experience.

    I have found a great indicator created by Francesco @ https://www.prorealcode.com/prorealtime-indicators/rsi-classical-hidden-divergences-indicator/

    I have adjusted some of the parameters to suit my own specifications for looking for divergences and I want to learn how I can get the ProScreener to show these indicators happening in the specified markets and timeframes.

    Not sure if I am explaining it correctly or if this is the correct forum but any help and guidance would be greatly appreciated.

    Thanks in advance

    Geoff

    #164753 quote
    robertogozzi
    Moderator
    Master

    This will return:

    • 1 = DD (bearish)
    • 2 = HD (bearish)
    • 3 = DD (bullish)
    • 4 = HD (bullish)
    //RSI Divergences By Frank (Francesco)
    
    //Description: the indicator draws arrows on chart as entry points when a direct or an hidden RSI divergence is found.
    //When a DIRECT divergence is found, "dd" (direct divergence) text is added to chart over (Sell signal) or under (Buy signal) the arrow
    
    //When an HIDDEN or INVERSE divergence is found, "hd" (hidden divergence) text is added to chart over (Sell signal) or under (Buy signal) the arrow
    
    //Variables:
    RsiPeriod     = 10    //number of bars to calculare RSI value
    RsiOverSold   = 30    //Oversold Level
    RsiOverBought = 70    //OverBought Level
    MinBarRange   = 3     //minimum distance from two consecutive RSI Highs or RSI Lows
    
    //Rge = averagetruerange[10](close)
    MyRSI = rsi[RsiPeriod](Close)
    
    //ONCE ShiftText = 3
    
    RsiMax = MyRSI < MyRSI[1] and MyRSI[1] > MyRSI[2] and MyRSI[1] > RsiOverBought
    RsiMin = MyRSI > MyRSI[1] and MyRSI[1] < MyRSI[2] and MyRSI[1] < RsiOverSold
    Cond = 0
    if RsiMax then
    RSIMax1 = MyRSI[1]
    High1 = High[1]
    
    for I = MinBarRange to  80
    if RsiMax[I] then
    RSIMax2 = MyRSI[I + 1]
    High2 = High[I + 1]
    If High1 > High2 and RSIMax1 < RSIMax2 then
    //DRAWARROWDOWN(barindex, High + Rge / ShiftText)coloured(255,192,203,255)
    //DRAWTEXT("dd", barindex, High + Rge / ShiftText / 0.3,SansSerif,Italic,10)coloured(0,0,255,255)
    Cond = 3
    elsif High1 < High2 and RSIMax1 > RSIMax2 then
    //DRAWARROWDOWN(barindex, High + Rge / ShiftText)coloured(255,192,203,255)
    //DRAWTEXT("hd", barindex, High + Rge / ShiftText / 0.2,SansSerif,Italic,10)coloured(0,0,255,255)
    Cond = 4
    endif
    break
    endif
    next
    endif
    
    if RsiMin then
    RSIMin1 = MyRSI[1]
    Low1 = Low[1]
    for I = MinBarRange to  80
    if RSIMin[I] then
    RSIMin2 = MyRSI[I + 1]
    Low2 = Low[I + 1]
    If Low1 < Low2 and RSIMin1 > RSIMin2 then
    //DRAWARROWUP(barindex, lOW - Rge / ShiftText)coloured(0,0,255,255)
    //DRAWTEXT("dd", barindex, lOW - Rge / ShiftText / 0.3,SansSerif,Italic,10)coloured(0,0,255,255)
    Cond = 1
    elsif Low1 > Low2 and RSIMin1 < RSIMin2 then
    //DRAWARROWUP(barindex, lOW - Rge / ShiftText)coloured(0,0,255,255)
    //DRAWTEXT("hd", barindex, lOW - Rge / ShiftText / 0.2,SansSerif,Italic,10)coloured(0,0,255,255)
    Cond = 2
    endif
    break
    endif
    next
    endif
    
    SCREENER[Cond](Cond AS "Cond")
    Geoffrey Toplis thanked this post
    #164775 quote
    Geoffrey Toplis
    Participant
    New

    Hi robertogozzi

    Thanks for your help, it works in the screener.

    Only issue is it throws out every single share in the list – is there a way to make it scan for a limited period (E.g the last hour or two)

    There is a “period” selection but still seems to give all the names even if changed to 5-10min (Not sure if this is happening because the market is closed.

    What is “cond”? it shows up on the screener and not quite sure what it means, feel like it is showing the price of the share but a few of them are not the prices. (see attached)

     

    Thanks for your help

    Geoff

    #164776 quote
    robertogozzi
    Moderator
    Master

    Cond is the returned data, as I wrote above:

    • 1 = DD (bearish)
    • 2 = HD (bearish)
    • 3 = DD (bullish)
    • 4 = HD (bullish)
    Geoffrey Toplis thanked this post
    #164778 quote
    Geoffrey Toplis
    Participant
    New

    Oh I see, and if there is no signal it displays price

     

    Thank you so much for your help – works great

    #165321 quote
    Geoffrey Toplis
    Participant
    New

    Hi robertogozzi 

    I was wondering if it is possible for the scanner to only show shares that are meeting the variables

    • 1 = DD (bearish)
    • 2 = HD (bearish)
    • 3 = DD (bullish)
    • 4 = HD (bullish)

    Right now all the shares show up even if they are not meeting the criteria (See image attached)

     

    Regards and thanks

    Geoff

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

Getting your screener to scan for indicators created in probuilder


ProScreener: Market Scanners & Detection

New Reply
Author
Summary

This topic contains 5 replies,
has 2 voices, and was last updated by Geoffrey Toplis
4 years, 11 months ago.

Topic Details
Forum: ProScreener: Market Scanners & Detection
Language: English
Started: 03/20/2021
Status: Active
Attachments: No files
Logo Logo
Loading...