Tracha

Ichimoku Cloud ALERT v 1.2

113
Now Price must to be above red line to buy and below to sell
Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this script on a chart?
study(title="Ichimoku Cloud", shorttitle="Ichimoku", overlay=true)

conversionPeriods = input(9, minval=1),
basePeriods = input(26, minval=1)
laggingSpan2Periods = input(52, minval=1)
EMAno1 = input(21, minval=1)
EMAno2 = input(144, minval=1)
EMAno3 = input(377, minval=1)
displacement = basePeriods

donchian(len) => avg(lowest(len), highest(len))

conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)

plot(conversionLine, color=red, title="Conversion Line")
plot(baseLine, color=blue, title="Base Line")
plot(close, offset = -displacement, color=green, title="Lagging Span")

p1 = plot(leadLine1, offset = displacement, color=green,
    title="Lead 1")
p2 = plot(leadLine2, offset = displacement, color=red, 
    title="Lead 2")

ema1=ema(close,EMAno1)
ema2=ema(close,EMAno2)
ema3=ema(close,EMAno3)

//sell signals
signal1 = baseLine > conversionLine

signal2 = close <= ema1
signal2a = close <= ema2
signal2b = close <= ema3

bottomcloud=leadLine2[displacement-1]
uppercloud=leadLine1[displacement-1]

signal3 = close<bottomcloud
signal3a = close[1]>bottomcloud[1]
signal3b = bottomcloud<uppercloud

signal4 = close<low[displacement]

signal5 = close < conversionLine
sellsignal = signal1 and signal2 and signal2a and signal2b and signal3 and signal3a and signal3b 
        and signal4 and signal5
plotchar(sellsignal, char='S', color=red, location=location.abovebar)
barcolor(sellsignal ? yellow : na)

signal3x = close<uppercloud
signal3ax = close[1]>uppercloud[1]
signal3bx = bottomcloud>uppercloud
sellsignal2 = signal1 and signal2 and signal2a and signal2b and signal3x and signal3ax 
            and signal3bx and signal4 and signal5
            
plotchar(sellsignal2, char='S', color=red, location=location.abovebar)
barcolor(sellsignal2 ? yellow : na)

/// buy signals
nsignal1 = baseLine < conversionLine

nsignal2 = close >= ema1
nsignal2a = close >= ema2
nsignal2b = close >= ema3

nsignal3 = close>uppercloud
nsignal3a = close[1]<uppercloud[1]
nsignal3b = bottomcloud<uppercloud

nsignal4 = close>high[displacement]

nsignal5 = close>conversionLine
 
buysignal = nsignal1 and nsignal2 and nsignal2a and nsignal2b and nsignal3 and nsignal3a 
        and signal3b and nsignal4 and nsignal5
plotchar(buysignal, char='B', color=blue, location=location.belowbar)
barcolor(buysignal ? blue : na)

nsignal3x = close>uppercloud
nsignal3ax = close[1]<uppercloud[1]
nsignal3bx = bottomcloud<uppercloud
buysignal2 = nsignal1 and nsignal2 and nsignal2a and nsignal2b and nsignal3x and nsignal3ax 
        and signal3bx and nsignal4 and nsignal5
        
plotchar(buysignal2, char='B', color=blue, location=location.belowbar)
barcolor(buysignal2 ? blue : na)

fill(p1, p2)