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

TradingView两份同源脚本警报异常:pair1脚本误发pair2参数求助

TradingView同源策略脚本警报参数混淆解决方案

问题根因

TradingView 会基于 Pine 脚本的内容哈希生成内部唯一标识,仅修改脚本名称、策略名称不会改变内容哈希值,两份高度相似的同源脚本会被平台判定为同一实例,触发缓存复用逻辑,最终导致警报绑定的消息参数混淆。

可行解决方案

  • 为每个脚本添加无逻辑影响的唯一标识参数,打破内容哈希一致性
    分别给pair1、pair2对应的脚本添加1行自定义输入参数,参数取值保证唯一即可,不会影响原有开平仓逻辑:
    // pair1专属脚本添加
    SCRIPT_UNIQUE_TAG = input.string("pair1_strategy_202401", title="脚本唯一标签", group="内部配置", tooltip="请勿修改,用于区分同源脚本")
    // pair2专属脚本添加
    SCRIPT_UNIQUE_TAG = input.string("pair2_strategy_202401", title="脚本唯一标签", group="内部配置", tooltip="请勿修改,用于区分同源脚本")
    
    该修改会让平台识别为两份完全独立的脚本,不再出现缓存复用问题。
  • 替换硬编码交易对参数为动态变量,从根源规避同源脚本冲突
    不要将pair1/pair2直接写死在警报消息中,改为调用输入参数或平台内置变量:
    // 新增交易对配置项,不同交易对脚本仅需修改该参数取值即可
    TARGET_PAIR = input.string("pair1", title="警报交易对", group="警报配置")
    // 开平仓逻辑里直接调用变量生成警报消息
    strategy.entry(id='long', direction=strategy.long, when=buy_signals, alert_message = str.format('{{"pair":"{0}"}}', TARGET_PAIR))
    strategy.close(id='long', when=sell_signals, alert_message = str.format('{{"pair":"{0}"}}', TARGET_PAIR))
    
    后续新增其他交易对的策略时,无需复制整份脚本,仅修改该输入参数即可,不会再出现同源脚本冲突。
  • 重建所有关联警报
    完成脚本修改后,删除原有pair1、pair2绑定的所有旧警报,重新在对应脚本实例上创建新警报,不要直接修改旧警报的绑定配置。
  • 清除浏览器缓存(可选,适用于修改后仍异常的场景)
    退出TradingView账号,清除浏览器的本地缓存、Cookie后重新登录,再添加脚本创建警报即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 14:36:03