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

如何在Pine Script中跨周期保存1分钟数据供4小时周期长期查看?

在Pine Script中保存跨周期计算结果的可行方案

可以实现这个需求,但得结合Pine Script的变量持久化特性和数据导出/导入逻辑来操作,具体方法如下:

  • 用var变量留存计算结果
    var声明的变量会在脚本运行全程保持值不重置,只要你不把脚本从4H图表移除,后续打开图表时就能直接调用之前用1m数据算出的结果。但要注意:如果移除脚本再重新添加、清除浏览器缓存或者换设备登录,var里存储的数据会丢失,适合长期保留同一图表脚本实例的场景。

  • 通过可视化标记或策略记录留存
    把计算出的结果用plotshape、plot等函数标记在4H K线上,或者在策略脚本里用虚拟订单、指标注释的形式写入历史记录。后续即使1m数据失效,只要4H图表还在,就能直接看到这些标记的结果。示例代码片段:

    // 假设已通过request.security获取1m数据并算出result值
    var float savedResult = na
    // 在每根4H K线收盘时更新存储结果
    if barstate.isconfirmed
        savedResult = result
        // 在K线下方标记结果数值
        plotshape(savedResult, title="1m计算结果", location=location.belowbar, color=color.blue, style=shape.labelup)
    
  • 导出数据到本地后重新导入
    这是最稳妥的方案:在还能获取1m数据时,把计算结果整理成表格(用Pine Script的table组件展示),手动复制或导出为CSV文件。1个月后,在4H图表的脚本里添加读取本地CSV数据的逻辑(通过var数组存储导入的历史结果),就能在对应K线上还原当时的计算值。

注意事项

  • TradingView没有为Pine Script提供云端持久化存储功能,所有变量数据都依附于本地缓存或图表实例,因此跨设备或清除缓存后,仅靠var存储的数据会丢失。
  • 务必在1m数据失效前完成计算和存储操作,一旦1m数据无法获取,就没法再回溯计算了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 11:25:33