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

Tradingview昨日23:00以来1分钟蜡烛计数功能求助

解决TradingView 1分钟K线计数问题

问题原因分析

你得到错误数值13344,核心原因是代码未限制统计的时间范围,累计了历史所有符合"昨日23:00"条件的K线,而非仅从最近的昨日23:00开始计数。

正确实现代码

//@version=5
indicator("昨日23:00以来K线计数器", overlay=false)

// 计算目标起始时间:昨日23:00,兼容跨日/跨周场景
targetTime = timestamp(year, month, dayofmonth - 1, 23, 0, 0)
// 若当前时间在当日00:00-23:00之间,修正昨日日期(避免周一的昨日被算成当天)
targetTime := time >= timestamp(year, month, dayofmonth, 0, 0, 0) ? targetTime : timestamp(year, month, dayofmonth - 2, 23, 0, 0)

// 判断当前K线是否处于目标时间区间内
inTargetRange = time >= targetTime

// 初始化计数器,交易日切换时重置
var int barCount = 0
if ta.change(time("D"))
    barCount := 0
// 仅在目标区间内累加计数
if inTargetRange
    barCount := barCount + 1

// 可视化展示计数结果
plot(barCount, title="K线数量", color=color.new(color.blue, 0), linewidth=2)
label.new(bar_index, barCount, str.tostring(barCount), color=color.yellow, textcolor=color.black, style=label.style_label_down)

关键逻辑说明

  • 时间戳修正:针对凌晨时段的日期计算误差做了适配,确保"昨日23:00"的时间戳准确。
  • 计数器重置:通过ta.change(time("D"))检测交易日切换,重置计数器,避免跨交易日累计。
  • 区间过滤:仅对目标时间之后的K线进行计数,排除历史无关数据。

验证方法

切换到1分钟K线图,观察计数器:

  • 从昨日23:00开始逐根K线累加数值
  • 当日00:00后继续计数,直到次日23:00后随交易日切换重置为0

内容的提问来源于stack exchange,提问作者mike-kaast

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 16:28:12