You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何在TradingView中设置吞没蜡烛触碰均线的警报

实现吞没蜡烛触碰均线的警报功能(TradingView Pine Script)

要实现吞没蜡烛触碰移动平均线时触发警报,你需要添加K线与均线的触碰条件,并通过alertcondition函数定义警报触发信号。以下是修改后的完整代码:

//@version=5
indicator(title="Engulfing with SMMA Touch Alert", shorttitle="Engulf-SMMA", overlay=true, timeframe="", timeframe_gaps=true)
len = input.int(21, minval=1, title="SMMA Length")
src = input(close, title="Source")
smma = 0.0
smma := na(smma[1]) ? ta.sma(src, len) : (smma[1] * (len - 1) + src) / len
green = color.green
red = color.red

// 定义看涨/看跌吞没形态
bullishEngulfing = (open <= close[1]) and (open < open[1]) and (close > open[1])
bearishEngulfing = (open >= close[1]) and (open > open[1]) and (close < open[1])

// 定义吞没蜡烛与SMMA的触碰条件:均线落在当前K线的高低点区间内,或K线端点触碰均线
bullishTouch = ta.valuewhen(bullishEngulfing, (smma >= low and smma <= high) or smma == low or smma == high, 0)
bearishTouch = ta.valuewhen(bearishEngulfing, (smma >= low and smma <= high) or smma == low or smma == high, 0)

// 绘制吞没形态标记
plotshape(bullishEngulfing, style = shape.triangleup, location = location.belowbar, color = green, size = size.tiny)
plotshape(bearishEngulfing, style = shape.triangledown , location = location.abovebar, color = red, size = size.tiny)
plot(smma, color=#ffffff)

// 定义警报触发条件
alertcondition(bullishTouch, title="看涨吞没触碰SMMA", message="看涨吞没蜡烛触碰21期SMMA均线")
alertcondition(bearishTouch, title="看跌吞没触碰SMMA", message="看跌吞没蜡烛触碰21期SMMA均线")

关键修改说明:

  1. 触碰条件逻辑:

    • 判断均线是否处于当前吞没蜡烛的low到high区间内,或者直接触碰K线的低点/高点,确保覆盖“触碰”的所有场景。
    • 用ta.valuewhen函数确保仅在吞没形态出现时检查触碰条件,避免无意义的信号。
  2. 警报设置:

    • 添加alertcondition函数,将满足条件的信号标记为可触发警报的事件。
    • 在TradingView界面中,你可以通过「警报」功能选择对应的信号(“看涨吞没触碰SMMA”/“看跌吞没触碰SMMA”)来设置推送通知。

内容的提问来源于stack exchange,提问作者Rachel Bush

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 19:10:32