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

TradingView PineScript:如何实现近5天信号扫描而非按K线计数?

Pine Script 实现基于时间的近N天交叉信号扫描

核心思路

放弃按K线数量计数的方式,通过时间戳计算确定回溯范围,直接扫描指定天数内是否出现过交叉信号。

修改后的完整代码及说明

// 1. 单独提取交叉条件,方便后续复用
isCross = ta.crossover(line1, line2) or ta.crossunder(line1, line2)

// 2. 设置回溯天数,可按需修改为2、5或其他数值
lookbackDays = 5
// 计算N天前的时间戳(1天=86400000毫秒)
lookbackStart = time - lookbackDays * 86400000

// 3. 检查近N天内是否出现过交叉信号
// ta.any()会判断指定时间区间内,交叉条件是否至少成立一次
hasRecentCross = ta.any(isCross, time >= lookbackStart)

// 4. 最终颜色逻辑:近N天有交叉显示lime,否则orange
crossingrule = hasRecentCross ? color.lime : color.orange

关键细节

  • 用time(当前K线的起始时间戳)计算回溯范围,不受K线周期限制(不管是1分钟、1小时还是日线,都能准确覆盖近N天的时间);
  • 如果需要基于UTC时间计算,把time替换为time_utc即可;
  • ta.any()函数会遍历满足time >= lookbackStart的所有K线,只要其中有一次交叉发生,就会返回true。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 10:35:02