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

如何跨TradingView指标脚本传递Alert信号并生成混合Alert?

跨指标信号联动生成混合警报的可行方案

这个需求完全可以实现,核心思路是将两个指标的信号逻辑整合到同一环境中(或通过指标调用实现信号互通),这样就能直接判断两个信号的同时触发条件,生成统一的混合警报,解决之前独立警报出现矛盾信号、维护繁琐的问题。

方案一:合并两个指标的代码(推荐)

把主图指标和副图指标的核心逻辑合并到同一个Pine Script脚本中,通过参数控制主副图显示,直接在脚本内判断混合信号。

示例代码:

//@version=5
indicator("主副图联动混合警报", overlay=true) // overlay=true让主图元素显示在K线图上

// --- 主图指标(指标1)的信号逻辑 ---
// 替换成你指标1中buy和sell的实际计算逻辑
buy1 = ta.crossover(ta.sma(close, 5), ta.sma(close, 20))
sell1 = ta.crossunder(ta.sma(close, 5), ta.sma(close, 20))

// 主图显示信号标记
plotshape(buy1, title="Buy1", location=location.belowbar, color=color.new(color.green, 0), style=shape.labelup, text="Buy1", textcolor=color.white)
plotshape(sell1, title="Sell1", location=location.abovebar, color=color.new(color.red, 0), style=shape.labeldown, text="Sell1", textcolor=color.white)

// --- 副图指标(指标2)的信号逻辑 ---
// 替换成你指标2中MacNorm的实际计算逻辑
MacNorm = ta.macd(close, 12, 26, 9)
buy2 = MacNorm > MacNorm[1]
sell2 = MacNorm < MacNorm[1]

// 将MacNorm显示到副图(display.data_window会自动把该plot放到副图)
plot(MacNorm, title="MacNorm", color=color.blue, display=display.data_window)

// --- 混合信号判断 ---
buyMix = buy1 and buy2
sellMix = sell1 and sell2

// --- 生成混合警报 ---
alertcondition(buyMix, title='BuyMix', message='Buy1与Buy2同时触发!')
alertcondition(sellMix, title='SellMix', message='Sell1与Sell2同时触发!')

// 可选:保留原单个指标的警报(如果需要)
alertcondition(buy1, title='Buy1', message='Buy1 Label!')
alertcondition(sell1, title='Sell1', message='Sell1 Label!')
alertcondition(buy2, title='Buy2', message='Buy2 Label!')
alertcondition(sell2, title='Sell2', message='Sell2 Label!')

方案二:跨指标调用信号(保留独立指标)

如果不想合并代码,可通过request.security调用已保存的指标信号,实现两个指标的互通。

示例(在副图指标中调用主图指标的信号):

//@version=5
indicator("副图联动混合警报", overlay=false)

// 调用已保存的主图指标(替换成你主图指标的实际名称)
// 若主图指标有输入参数,需在调用时传入对应值,如strategy("主图指标", length=5).buy
[buy1, sell1] = request.security(syminfo.tickerid, timeframe.period, [strategy("主图指标").buy, strategy("主图指标").sell])

// 副图指标自身逻辑
MacNorm = ta.macd(close, 12, 26, 9)
buy2 = MacNorm > MacNorm[1]
sell2 = MacNorm < MacNorm[1]

// 混合信号判断
buyMix = buy1 and buy2
sellMix = sell1 and sell2

// 生成混合警报
alertcondition(buyMix, title='BuyMix', message='Buy1与Buy2同时触发!')
alertcondition(sellMix, title='SellMix', message='Sell1与Sell2同时触发!')

// 副图显示MacNorm
plot(MacNorm, title="MacNorm", color=color.blue)

关键优势

  • 避免矛盾信号:只有当对应方向的两个信号同时为真时,才会触发混合警报,不会出现Sell1和Buy2同时触发混合警报的情况
  • 维护更便捷:信号逻辑集中管理,无需在两个独立指标中分别设置多个警报

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 04:07:41