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

如何在TradingView PineScript警报消息中使用自定义字符串变量?

在TradingView PineScript中实现带自定义变量的警报消息

你之前的写法无法生效,原因是TradingView的警报设置界面无法直接访问PineScript脚本内定义的变量,必须通过脚本内置的alert()函数主动构建并发送包含变量的完整消息。

解决方案代码示例

//@version=5
strategy("自定义警报策略", overlay=true)

// 初始化自定义字符串变量
var string my_variable = ""

// 替换为你的实际交易条件
longCondition = ta.crossover(ta.sma(close, 50), ta.sma(close, 200))
shortCondition = ta.crossunder(ta.sma(close, 50), ta.sma(close, 200))

if(longCondition)
    strategy.entry("Long", strategy.long)
    my_variable = "open"
    // 构建JSON格式消息并触发警报
    alert('{"side": "long", "action": "' + my_variable + '", "exchange": "BINANCE", "symbol": "ETHUSDT"}', alert.freq_once_per_bar_close)

if(shortCondition)
    strategy.close("Long")
    my_variable = "close"
    alert('{"side": "long", "action": "' + my_variable + '", "exchange": "BINANCE", "symbol": "ETHUSDT"}', alert.freq_once_per_bar_close)

关键说明

  • 变量传递逻辑:通过字符串拼接将my_variable的值直接插入到JSON消息中,再通过alert()函数发送。
  • 字符串格式处理:用单引号包裹整个JSON内容,避免内部双引号的转义问题;如果要用双引号包裹,需转义内部引号(如\"side\": \"long\")。
  • 警报频率控制:alert.freq_once_per_bar_close参数确保每个交易信号仅触发一次警报,防止重复推送。

后续设置

写完脚本后,在TradingView的警报设置中选择该策略作为警报源,无需手动填写消息模板,脚本会自动发送预构建好的JSON消息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 04:51:05