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

如何在Pine Script中每秒调用含警报的函数?security方法无效

在Pine Script中实现每秒触发警报的方法

你之前用request.security的方法之所以只在K线起始触发,是因为request.security仅在指定周期的新K线生成时执行传入的函数。即便用1S周期,若主图表周期不是1S,或脚本未在实时价格更新时执行,也没法达到每秒触发的预期效果。

要在实时模式下实现每秒触发警报,可以通过跟踪当前时间的秒数变化来实现,代码示例如下:

//@version=5
indicator("每秒触发警报", overlay=true)

// 仅在实时行情中运行
if barstate.isrealtime
    // 提取当前时间的秒数
    currentSecond = time / 1000 % 60
    // 用var变量保存上一次触发的秒数,避免每次重置
    var int lastTriggeredSecond = na
    
    // 当秒数发生变化时触发警报
    if currentSecond != lastTriggeredSecond
        alert("1s alert", alert.freq_once_per_bar_close)
        // 更新上一次触发的秒数记录
        lastTriggeredSecond := currentSecond

关键注意点:

  • 必须在警报设置中开启允许实时警报(触发条件选择实时相关选项)。
  • 脚本仅在实时行情下运行,回测阶段不会触发警报。
  • Pine Script的执行依赖价格变动或K线更新,如果市场无价格波动,脚本不会主动运行,此时即便秒数变化也无法触发警报,这是平台机制限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 19:52:19