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

请求指导:Pine Script中同一时间点多框架开盘价去重方案

多时间框架开盘线去重的实用思路

核心原则:优先级分层

先给不同时间框架明确优先级,比如:

  • 月开盘(最高优先级)> 周开盘 > 交易日开盘(最低优先级)
    同一时间点只保留优先级最高的那条开盘数据,从根源避免重复。

具体实现方向

1. 结构化数据+分组去重

把所有时间框架的开盘数据整理成包含以下字段的数据集:

  • 时间戳(统一用UTC时间戳避免时区混乱)
  • 开盘价
  • 优先级标记(比如用数字:1=月,2=周,3=日)

用数据工具做分组去重,比如用pandas的向量化操作(比循环高效,资源友好):

import pandas as pd

# 假设已经有整理好的df,包含timestamp、open_price、priority三列
deduped_df = df.groupby('timestamp').apply(lambda x: x.loc[x['priority'].idxmin()])

这个操作会按时间戳分组,每组只留下优先级最高的那条记录。

2. 适配特殊交易场景

  • 24/7加密货币:直接按自然日/周/月的UTC时间分界判断开盘点即可,不需要考虑休市。
  • Forex/跨时区资产:用pytz统一转换为交易时区(比如纽约时间、伦敦时间)后再判断时间框架分界,避免时区错位导致的错误开盘点。
  • 股票/指数(含盘前):用pandas_market_calendars获取对应交易所的交易日历,精准识别交易日开盘(包括盘前时段的开盘点),而不是硬编码自然日。

3. 实时数据优化

如果是实时绘制场景,不需要每次全量处理历史数据:

  • 维护一个最近时间点的缓存,当新的开盘点触发时,先检查缓存里是否已有同时间戳的记录;
  • 如果有,只保留优先级更高的那条;如果没有,直接添加到数据集。

内容的提问来源于stack exchange,提问作者i am different

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 09:35:04