Zero Lag Trend Signals Indicator by AlgoAlpha

Viewing 15 posts - 1 through 15 (of 19 total)
  • Author
    Posts
  • #240318 quote
    adeelq79
    Participant
    Junior

    Hi all,

    Is it possible to code the following indicator “Zero Lag Trend Signals Indicator by AlgoAlpha” to work on ProRealCode – found here:(175) This Zero-Lag BUY SELL Indicator Makes All The Others OBSOLTE – YouTube

     

    Thanks

    #240396 quote
    Iván González
    Moderator
    Master

    Done:

    //-------------------------------------//
    //PRC_Zero Lag Trend Signals
    //version = 0
    //15.11.24
    //Iván González @ www.prorealcode.com
    //Sharing ProRealTime knowledge
    //-------------------------------------//
    //---Inputs
    //-------------------------------------//
    length=70
    mult=1.2
    src=close
    //-------------------------------------//
    // Zlema calculation
    //-------------------------------------//
    lag=floor((length-1)/2)
    
    myzlema=average[length,1](src+(src-src[lag]))
    //-------------------------------------//
    // Volatility calculation
    //-------------------------------------//
    atr=averagetruerange[length](close)
    volatil=highest[length*3](atr)*mult
    //-------------------------------------//
    // Trend condition
    //-------------------------------------//
    once trend=0
    if close crosses over myzlema+volatil then
    trend=1
    r=0
    g=255
    elsif close crosses under myzlema-volatil then
    trend=-1
    r=255
    g=0
    endif
    //-------------------------------------//
    // Signals and colors
    //-------------------------------------//
    if trend=-1 then
    upper=myzlema+volatil
    alpha1=90
    lower=myzlema
    alpha2=0
    if trend<>trend[1] then
    drawarrowdown(barindex,upper+0.25*atr)coloured(r,g,0,175)
    endif
    else
    upper=myzlema
    alpha1=0
    lower=myzlema-volatil
    alpha2=90
    if trend<>trend[1] then
    drawarrowup(barindex,lower-0.25*atr)coloured(r,g,0,175)
    endif
    endif
    
    if close crosses over myzlema and trend=1 and trend[1]=1 then
    drawtext("▲",barindex,myzlema-volatil*1.5)coloured("green")
    elsif close crosses under myzlema and trend=-1 and trend[1]=-1 then
    drawtext("▼",barindex,myzlema+volatil*1.5)coloured("red")
    endif
    if barindex > 4*length then
    colorbetween(myzlema,upper,r,g,0,alpha1)
    colorbetween(myzlema,lower,r,g,0,alpha2)
    endif
    //-------------------------------------//
    return myzlema as "Zero Lag Basis"style(line,2)coloured(r,g,0)
    #240680 quote
    adeelq79
    Participant
    Junior

    Amazing thank you so much.

    #240739 quote
    adeelq79
    Participant
    Junior

    Ivan, is it possible to have the table as described in the video? I.e. it informs you if the trend is bullish or bearish on 4 different timeframes?

    #241845 quote
    jacquesgermain
    Participant
    Senior
    here is the indicator with the table as described in the video. it informs you if the trend is bullish or bearish on 4 different timeframes .

    be careful you must use it in time units of 5 minutes

    
    
    //PRC_Zero Lag Trend Signals timeframe(5mn) length=70 mult=1.2 src=close lag=floor((length-1)/2) myzlema=average[length,1](src+(src-src[lag])) atr=averagetruerange[length](close) volatil=highest[length*3](atr)*mult once trend=0 if close crosses over myzlema+volatil then trend=1 r=0 g=255 elsif close crosses under myzlema-volatil then trend=-1 r=255 g=0 endif if trend=-1 then upper=myzlema+volatil alpha1=90 lower=myzlema alpha2=0 if trend<>trend[1] then drawarrowdown(barindex,upper+0.25*atr)coloured(r,g,0,175) endif else upper=myzlema alpha1=0 lower=myzlema-volatil alpha2=90 if trend<>trend[1] then drawarrowup(barindex,lower-0.25*atr)coloured(0,128,0,175) endif endif if close crosses over myzlema and trend=1 and trend[1]=1 then drawtext(“▲”,barindex,myzlema-volatil*1.5)coloured(“green”) elsif close crosses under myzlema and trend=-1 and trend[1]=-1 then drawtext(“▼”,barindex,myzlema+volatil*1.5)coloured(“red”) endif if barindex > 4*length then colorbetween(myzlema,upper,r,g,0,alpha1) colorbetween(myzlema,lower,r,g,0,alpha2) endif if islastbarupdate then if trend=1 then DRAWTEXT(“bullish 5mn”,-100,-40,dialog,bold,12)coloured(0,150,0)anchor(topright,xshift,yshift) else DRAWTEXT(“bearish 5mn”,-100,-40,dialog,bold,12)coloured(150,0,0)anchor(topright,xshift,yshift) endif endif timeframe (15mn) myzlema15mn=average[length,1](src+(src-src[lag])) atr15mn=averagetruerange[length](close) volatil15mn=highest[length*3](atr15mn)*mult once trend15mn=0 if close crosses over myzlema15mn+volatil15mn then trend15mn=1 elsif close crosses under myzlema15mn-volatil15mn then trend15mn=-1 endif if islastbarupdate then if trend15mn=1 then DRAWTEXT(“bullish 15mn”,-100,-60,dialog,bold,12)coloured(0,150,0)anchor(topright,xshift,yshift) else DRAWTEXT(“bearish 15mn”,-100,-60,dialog,bold,12)coloured(150,0,0)anchor(topright,xshift,yshift) endif endif timeframe (1h) myzlema60mn=average[length,1](src+(src-src[lag])) atr60mn=averagetruerange[length](close) volatil60mn=highest[length*3](atr60mn)*mult once trend60mn=0 if close crosses over myzlema60mn+volatil60mn then trend60mn=1 elsif close crosses under myzlema60mn-volatil60mn then trend60mn=-1 endif if islastbarupdate then if trend60mn=1 then DRAWTEXT(“bullish 1heure”,-100,-80,dialog,bold,12)coloured(0,150,0)anchor(topright,xshift,yshift) else DRAWTEXT(“bearish 1heure”,-100,-80,dialog,bold,12)coloured(150,0,0)anchor(topright,xshift,yshift) endif endif timeframe (4h) myzlema240mn=average[length,1](src+(src-src[lag])) atr240mn=averagetruerange[length](close) volatil240mn=highest[length*3](atr240mn)*mult once trend240mn=0 if close crosses over myzlema240mn+volatil240mn then trend240mn=1 elsif close crosses under myzlema240mn-volatil240mn then trend240mn=-1 endif if islastbarupdate then if trend240mn=1 then DRAWTEXT(“bullish 4 heures”,-100,-100,dialog,bold,12)coloured(0,150,0)anchor(topright,xshift,yshift) else DRAWTEXT(“bearish 4 heures”,-100,-100,dialog,bold,12)coloured(150,0,0)anchor(topright,xshift,yshift) endif endif timeframe (daily) myzlema510mn=average[length,1](src+(src-src[lag])) atr510mn=averagetruerange[length](close) volatil510mn=highest[length*3](atr510mn)*mult once trend510mn=0 if close crosses over myzlema510mn+volatil510mn then trend510mn=1 elsif close crosses under myzlema510mn-volatil510mn then trend510mn=-1 endif if islastbarupdate then if trend510mn=1 then DRAWTEXT(“bullish 1 jour”,-100,-120,dialog,bold,12)coloured(0,150,0)anchor(topright,xshift,yshift) else DRAWTEXT(“bearish 1 jour”,-100,-120,dialog,bold,12)coloured(150,0,0)anchor(topright,xshift,yshift) endif endif return myzlema as “Zero Lag Trends Signals”style(line,2)coloured(r,g,0)
    robertogozzi and Iván González thanked this post
    #242015 quote
    adeelq79
    Participant
    Junior
    @jacquesgermain Thank You!!
    #242022 quote
    ARLEQUIN49
    Participant
    Veteran
    Bonjour à tout le monde   J’ai essayé mais il y à des erreurs à la ligne 11-12-16-17 et je ne sais pas comment modifier le code
    #242023 quote
    fifi743
    Participant
    Master
    this one works to put on the price
    #242065 quote
    Madrosat
    Participant
    Master
    Jacques Germain Thank you How to use arrow (on time frame 5mn ) in strategy I have not succeeded Good new year
    #242125 quote
    jacquesgermain
    Participant
    Senior

    hello, watch this video it is very well explained : https://www.youtube.com/watch?v=X4l5kOsFYvQ

    
    
    #242132 quote
    Madrosat
    Participant
    Master
    Ok Jacques  i have seen this video I ask me if is not too beautiful ?? but how i can use arrows big and  little in a strategy?? May be our friend FIFI can  say to us ???
    #242137 quote
    fifi743
    Participant
    Master
    Madrosat if you follow the table on the top right, I think you can be profitable.
    #242170 quote
    adeelq79
    Participant
    Junior
    I have observed that when it changes direction, it will retest the ‘zone’ and that is a good place to go long or short – in line with the trend. The mini arrows I find are less accurate so I wait until there is the larger arrow that crosses over and wait for the retest.
    #242172 quote
    Razz
    Participant
    Master
    Good morning I find the indicator very interesting, but in the table it differs from the original indicator from Trading View. And even for example 15 minutes in the Germany spot market the individual indicator shows bearish, but the table shows bullish. That is of course a shame and can lead to misjudgments.
    #242175 quote
    adeelq79
    Participant
    Junior
    I noted that too. The ‘ribbons’ match which is great but the Signals per Time Frame Table does not match the table from TradingView. I was looking at the code to try and work out why but gave up rather rapidly.
    Razz thanked this post
Viewing 15 posts - 1 through 15 (of 19 total)
  • You must be logged in to reply to this topic.

Zero Lag Trend Signals Indicator by AlgoAlpha


ProBuilder: Indicators & Custom Tools

New Reply
Author
author-avatar
adeelq79 @adeelq79 Participant
Summary

This topic contains 18 replies,
has 7 voices, and was last updated by jacquesgermain
1 year, 1 month ago.

Topic Details
Forum: ProBuilder: Indicators & Custom Tools
Language: English
Started: 11/13/2024
Status: Active
Attachments: 11 files
Logo Logo
Loading...