Wjadevries

WJA RSI+EMA

RSI with EMA of RSI, shifted forward
开源脚本

本着真正的TradingView精神,该脚本的作者将其开源发布,以便交易者可以理解和验证它。为作者喝彩!您可以免费使用它,但在出版物中重复使用此代码受网站规则的约束。 您可以收藏它以在图表上使用。

免责声明

这些信息和出版物并不意味着也不构成TradingView提供或认可的金融、投资、交易或其它类型的建议或背书。请在使用条款阅读更多信息。

想在图表上使用此脚本?
//@version=2
study(title="WJA RSI+EMA", shorttitle="WJA RSI+EMA", overlay=false, precision=0)
len = input(14, minval=1, title="RSI Length")
src = input(hlc3, title="Source", type=source)
len2 = input(21, minval=1, title="EMA of RSI Length")
shift = input(13, title="Shift EMA")
usesma = input(false, title="SMA ipv EMA", type=bool)

up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))

emaRSI = usesma ? sma(rsi,len2) : ema(rsi,len2) 
ematrend = rsi>emaRSI[shift] ? 1 : rsi<emaRSI[shift] ? -1 : 0
rsicol = ematrend==1 ? green : ematrend==-1 ? red : silver

rsiplot=plot(rsi, title="RSI", style=line, linewidth=2, color=ematrend==1 and rsi<50 ? silver : ematrend==-1 and rsi>50 ? silver : rsicol)
plot(emaRSI, title="EMA of RSI", style=dashed, linewidth=1, color=orange, offset=shift)

plot(ematrend==ematrend[1] ? na : rsi, title="EMA cross", style=circles, linewidth=3, color=rsicol)

hline(50, title="Middle line", linestyle=dashed, linewidth=1, color=gray)
band1 = hline(70, title="Upper Line", linestyle=dashed, linewidth=1, color=red)
band0 = hline(30, title="Lower Line", linestyle=dashed, linewidth=1, color=green)
fill(band1, band0, color=purple, transp=90)

upperplot = plot(rsi<70?na:70, transp=100)
lowerplot = plot(rsi>30?na:30, transp=100)

fill(rsiplot,upperplot,color=green, transp=70)
fill(rsiplot,lowerplot,color=red, transp=70)