Alphatrend Indicator conversion

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #212934 quote
    nitinvijayranenitinvijayrane
    Participant
    New

    Hi All,

    I have been working on a stratergy to use a Alphatrend indicator which is available in tradingView. Source code is here

    // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
    // author © KivancOzbilgic
    // developer © KivancOzbilgic
    //@version=5
    indicator(‘AlphaTrend’, shorttitle=’AT’, overlay=true, format=format.price, precision=2, timeframe=”)
    coeff = input.float(1, ‘Multiplier’, step=0.1)
    AP = input(14, ‘Common Period’)
    ATR = ta.sma(ta.tr, AP)
    src = input(close)
    showsignalsk = input(title=’Show Signals?’, defval=true)
    novolumedata = input(title=’Change calculation (no volume data)?’, defval=false)
    upT = low – ATR * coeff
    downT = high + ATR * coeff
    AlphaTrend = 0.0
    AlphaTrend := (novolumedata ? ta.rsi(src, AP) >= 50 : ta.mfi(hlc3, AP) >= 50) ? upT < nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : upT : downT > nz(AlphaTrend[1]) ? nz(AlphaTrend[1]) : downT
    color1 = AlphaTrend > AlphaTrend[2] ? #00E60F : AlphaTrend < AlphaTrend[2] ? #80000B : AlphaTrend[1] > AlphaTrend[3] ? #00E60F : #80000B
    k1 = plot(AlphaTrend, color=color.new(#0022FC, 0), linewidth=3)
    k2 = plot(AlphaTrend[2], color=color.new(#FC0400, 0), linewidth=3)
    fill(k1, k2, color=color1)
    buySignalk = ta.crossover(AlphaTrend, AlphaTrend[2])
    sellSignalk = ta.crossunder(AlphaTrend, AlphaTrend[2])
    K1 = ta.barssince(buySignalk)
    K2 = ta.barssince(sellSignalk)
    O1 = ta.barssince(buySignalk[1])
    O2 = ta.barssince(sellSignalk[1])
    plotshape(buySignalk and showsignalsk and O1 > K2 ? AlphaTrend[2] * 0.9999 : na, title=’BUY’, text=’BUY’, location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(#0022FC, 0), textcolor=color.new(color.white, 0))
    plotshape(sellSignalk and showsignalsk and O2 > K1 ? AlphaTrend[2] * 1.0001 : na, title=’SELL’, text=’SELL’, location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.maroon, 0), textcolor=color.new(color.white, 0))
    alertcondition(buySignalk and O1 > K2, title=’Potential BUY Alarm’, message=’BUY SIGNAL!’)
    alertcondition(sellSignalk and O2 > K1, title=’Potential SELL Alarm’, message=’SELL SIGNAL!’)
    alertcondition(buySignalk[1] and O1[1] > K2, title=’Confirmed BUY Alarm’, message=’BUY SIGNAL APPROVED!’)
    alertcondition(sellSignalk[1] and O2[1] > K1, title=’Confirmed SELL Alarm’, message=’SELL SIGNAL APPROVED!’)
    alertcondition(ta.cross(close, AlphaTrend), title=’Price Cross Alert’, message=’Price – AlphaTrend Crossing!’)
    alertcondition(ta.crossover(low, AlphaTrend), title=’Candle CrossOver Alarm’, message=’LAST BAR is ABOVE ALPHATREND’)
    alertcondition(ta.crossunder(high, AlphaTrend), title=’Candle CrossUnder Alarm’, message=’LAST BAR is BELOW ALPHATREND!’)
    alertcondition(ta.cross(close[1], AlphaTrend[1]), title=’Price Cross Alert After Bar Close’, message=’Price – AlphaTrend Crossing!’)
    alertcondition(ta.crossover(low[1], AlphaTrend[1]), title=’Candle CrossOver Alarm After Bar Close’, message=’LAST BAR is ABOVE ALPHATREND!’)
    alertcondition(ta.crossunder(high[1], AlphaTrend[1]), title=’Candle CrossUnder Alarm After Bar Close’, message=’LAST BAR is BELOW ALPHATREND!’)
    #212944 quote
    NicolasNicolas
    Keymaster
    Legend

    Same indicator as old famous MagicTrend, but with MoneyFlowIndex as trigger for buy/sell trend revert in replacement of the CCI.

    Here it is:

    AP = 14 //Common Period
    coeff = 1 //Multiplier
    
    if (MoneyFlowIndex[ap]>=50) then
    magic=Low[0]-AverageTrueRange[ap](close)*coeff
    endif
    
    if (MoneyFlowIndex[ap]<50) then
    magic=High[0]+AverageTrueRange[ap](close)*coeff
    endif
    
    if (MoneyFlowIndex[ap]>=50 and magic<magic[1]) then
    magic=magic[1]
    endif
    
    if (MoneyFlowIndex[ap]<50 and magic>magic[1]) then
    magic=magic[1]
    endif
    
    if magic>magic[1] then 
    r=0
    g=255
    elsif magic<magic[1]then 
    r=255
    g=0
    endif 
    
    return magic as "AlphaTrend" coloured(r,g,0)
    GraHal and Distincttacos thanked this post
    alphatrend-prorealtime.png alphatrend-prorealtime.png
    #212987 quote
    NicolasNicolas
    Keymaster
    Legend

    For convenience, I placed the indicator in the library, accessible for download here: AlphaTrend

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

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Alphatrend Indicator conversion


ProBuilder: Indicators & Custom Tools

New Reply
Author
Summary

This topic contains 2 replies,
has 2 voices, and was last updated by NicolasNicolas
3 years, 5 months ago.

Topic Details
Forum: ProBuilder: Indicators & Custom Tools
Language: English
Started: 04/06/2023
Status: Active
Attachments: 1 files
ProRealCode ProRealCode
Loading...