plot - pinescript - 当 EMA 穿过 SMA 而高于/低于 200 移动平均线时绘制交叉

标签 plot moving-average pine-script

我对 pinescript 很新,我被困在这一点上......我只想在 10 EMA 穿过 21 EMA 而 21 高于 50 EMA 和 50 EMA 高于 200 EMA 时绘制交叉。这是指示多头信号。同时,当 10 EMA 穿过 21 EMA 而 21 低于 50 EMA 和 50 EMA 低于 200 EMA。这是为了指示Short 信号。

我有这么多代码,但我不知道如何进一步进行:

//@version=3
study(title="MA Cross ATTEMPT", overlay=true)

s10ema = ema(close, 10)
s21ema = ema(close, 21)
s50ema = ema(close, 50)
s200ema = ema(close, 200)

plot(s10ema, color = red, linewidth = 1, transp=0)
plot(s21ema, color = aqua, linewidth = 1, transp=0)
plot(s50ema, color = aqua, linewidth = 2, transp=0)
plot(s200ema, color = red, linewidth = 2, transp=0)

mycond = s200ema < s50ema and s50ema < s21ema and s21ema < s10ema
EMACross = cross(s10ema, s21ema) ? s10ema : na, style = cross, linewidth = 4, color = yellow, transp=0

plot(?????)

任何帮助将不胜感激

最佳答案

这样做的方法是使用 plotshape()功能。还有不同的plot功能,但我更喜欢使用 plotshape()以此目的。一定要看看其他plot功能一样。 Tradingview 有一个很好的 pine 脚本文档。

另外,cross()返回 1如果两个系列相互交叉。它可能来自下方或上方,这无关紧要。但是,您希望在 crossover 时触发您的条件。发生。有一个函数叫 crossover()为此目的(另请参阅 crossunder() 的相反信息)。

//@version=3
study(title="MA Cross ATTEMPT", overlay=true)

s10ema = ema(close, 10)
s21ema = ema(close, 21)
s50ema = ema(close, 50)
s200ema = ema(close, 200)

plot(s10ema, title="Ema 10", color = red, linewidth = 1, transp=0)
plot(s21ema, title="Ema 21", color = aqua, linewidth = 1, transp=0)
plot(s50ema, title="Ema 50", color = orange, linewidth = 2, transp=0)
plot(s200ema, title="Ema 200", color = blue, linewidth = 2, transp=0)

longCond = crossover(s10ema, s21ema) and (s21ema > s50ema) and (s50ema > s200ema)
shortCond = crossunder(s10ema, s21ema) and (s21ema < s50ema) and (s50ema < s200ema)

plotshape(series=longCond, title="Long", style=shape.triangleup, location=location.belowbar, color=green, text="LONG", size=size.small)
plotshape(series=shortCond, title="Short", style=shape.triangledown, location=location.abovebar, color=red, text="SHORT", size=size.small)

enter image description here

关于plot - pinescript - 当 EMA 穿过 SMA 而高于/低于 200 移动平均线时绘制交叉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52729745/

相关文章:

python - 如何使用 pandas 中的自定义权重计算滚动平均值?

c++ - OpenCV 中的 accumulateWeighted 函数断言失败

pine-script - 如何只为今天绘图?

pine-script - 每次出现新条时,标签都会重复

python - 将多个值绘制为范围 - matplotlib

r - ggplot2 嵌套在水平条中的垂直条 [产品图]

python - Pyplot set_xticks 无法按预期工作

python-2.7 - 使用具有多索引的数据框创建条形图

sqlite - SQLite 中的移动平均线

pine-script - Tradingview Pine 脚本 - 如何使自定义交易量指标表现得像内置交易量