警报另一个警报的百分比增加?

Alert for percentage increase of another alert?

我正在使用这个简单的 EMA:

study(title="EMA 5/10/20", overlay=true)    
shortest = ema(close, 5)    
short = ema(close, 10)    
longer = ema(close, 20)    
plot(shortest, color = yellow, linewidth=2)    
plot(short, color = red, linewidth=2)    
plot(longer, color = purple, linewidth=2)    
EmaOpen = ta.crossover(shortest, longer)    
alertcondition(EmaOpen, title="EmaOpen", message= "Ema Open")

当 5 EMA 价格超过 20 EMA 时提醒我。

是否可以添加另一个当价格高于 (EmaOpen) 警报比方说 3% 时触发的警报?那么如果我们在 EmaOpen 信号买入,我们可以创建某种止盈信号吗?

只要有交叉,EmaOpen 就会 true。每当发生这种情况时,您都应该存储 close 价格,并计算超出该价格的 3%。然后检查价格是否超过你的计算值。

//@version=5
indicator(title="EMA 5/10/20", overlay=true)

tp_per = input.float(3.0, "Take Profit %") / 100.0

shortest = ta.ema(close, 5)    
short = ta.ema(close, 10)    
longer = ta.ema(close, 20)    

var float EmaTp = na
EmaOpen = ta.crossover(shortest, longer)
EmaTp := EmaOpen ? close * (1 + tp_per) : EmaTp
tpBreached = ta.crossover(close, EmaTp)
EmaTp := tpBreached ? na : EmaTp

plot(shortest, color = color.yellow, linewidth=2)    
plot(short, color = color.red, linewidth=2)    
plot(longer, color = color.purple, linewidth=2)
plotshape(EmaOpen, location=location.belowbar, size=size.small)
plot(EmaTp, color=color.green, style=plot.style_circles)
plotshape(tpBreached, style=shape.triangledown, location=location.abovebar, color=color.green, size=size.small)

alertcondition(EmaOpen, title="EmaOpen", message= "Ema Open")
alertcondition(tpBreached, title="TP", message= "Take Profit")
  • 蓝色“X”是 EMA 交叉点
  • 绿点是您的获利水平
  • 绿色三角形是价格达到您的获利水平的地方