🚀 AI 一键生成 ptrade 策略代码
立即体验
👉 AI 生成代码 👈

PTrade 量化平台中 handle_data 函数在什么时候会被调用?

ptrade | 发布时间: 2026/6/1
以下内容由 EasyQuant 生成。

问题描述

PTrade中handle_data函数在什么时候会被调用?

解决方案

在 PTrade 量化交易平台中,handle_data(context, data) 函数是处理策略交易逻辑的核心模块。它的具体调用时机取决于策略设定的运行周期频率(日线或分钟线)以及当前的运行环境(回测或实盘交易)。

具体调用规则如下:

1. 日线级别策略(每天运行一次)

  • 回测场景:在每个交易日的 15:00 执行一次。
  • 交易(实盘/模拟)场景:在每个交易日的尾盘固定时间执行一次,具体时间由券商实际配置决定(默认通常为 14:50)。

2. 分钟级别策略(每分钟运行一次)

  • 回测场景:在交易日的 9:31 至 15:00 期间,每分钟(即每根分钟 K 线结束时)执行一次。
  • 交易(实盘/模拟)场景:在交易日的 9:30 至 14:59 期间,每分钟执行一次。

⚠️ 重要注意事项

  1. 非交易日不执行:无论是在回测还是交易环境中,handle_data 函数都不会在非交易日(如周末、法定节假日)触发。
  2. Tick 级别处理handle_data 仅满足日线和分钟级别的盘中处理。如果你的策略需要 Tick 级别(如每 3 秒一次)的盘中处理,则不能依赖 handle_data,而需要使用 tick_data 或者 run_interval 函数来实现。

代码示例

def initialize(context):
    # 初始化,设置股票池
    g.security = '600570.SS'
    set_universe(g.security)

def handle_data(context, data):
    # 该函数会根据设定的频率(日线/分钟线)被系统自动定时调用
    # 在此编写买卖逻辑
    order(g.security, 100)