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

如何无需多空开仓触发Tradingview警报?收盘平仓警报未触发求助

无需开仓即可触发TradingView平仓警报的解决方案

问题核心

strategy.close() 指令必须对应已存在的仓位才能执行,没有开仓记录时,这个指令不会生效,自然无法触发附带的警报。要实现无仓位状态下到点触发警报,需要调整逻辑。

解决方案:使用独立alert()函数

直接用alert()替代strategy.close(),不依赖仓位状态,只要时间条件满足就触发警报。修改后的代码如下:

// 平仓时间设置
days_close_trade = input.session("1545-1600", "平仓时间", group="选择交易时段")
time_is_close = time("1", days_close_trade)

// 警报消息设置(修正原变量名更贴合用途)
alertCloseMsg = input.string("平仓触发 {{ticker}}!", "平仓警报消息:", group = "警报设置")

// 时间窗口内且K线确认时触发警报
if time_is_close and barstate.isconfirmed
    alert(alertCloseMsg, alert.freq_once_per_bar_close)

代码说明

  • alert() 是独立的警报触发函数,不需要任何仓位前提条件
  • alert.freq_once_per_bar_close 确保每个满足条件的K线仅触发一次警报,避免重复推送
  • 保留原有的time.session和barstate.isconfirmed逻辑,确保在指定时段的已确认K线上触发(避免盘中波动误触发)

原代码英文部分翻译

  • input.session("1545-1600", "平仓时间", group="选择交易时段"):设置平仓时段为15:45-16:00,归属于“选择交易时段”分组
  • 原alertLongEntry = input.string("Entry Close {{ticker}}!", "平仓入场警报消息:", group = "警报设置"):变量名建议改为alertCloseMsg更准确,对应中文为“平仓警报消息:”,默认内容为“平仓触发 {{ticker}}!”({{ticker}}会自动替换为当前交易标的代码)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 10:30:52