3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在PTrade量化交易平台中,策略的运行时间被严格划分为盘前、盘中和盘后三个阶段。合理利用这些时间段,可以帮助开发者更好地组织数据初始化、交易执行和盘后结算等逻辑。以下是具体的划分及支持的函数说明:
盘前阶段主要用于策略的初始化、数据准备和隔夜订单的处理。
before_trading_start 函数。该函数通常用于获取前一交易日的数据、更新股票池或计算当日所需的指标。run_daily 中指定交易时间(如 time='09:15')运行的函数,可用于集合竞价阶段的特殊处理。盘中阶段是策略执行核心交易逻辑、接收行情和发送委托单的时间。
handle_data 函数。这是策略最核心的函数,根据设定的频率(日线或分钟线)被周期性调用。run_daily 中指定盘中交易时间(如 time='14:30')运行的函数。run_interval 函数(按秒级间隔循环执行)和 tick_data 函数(处理Tick级高频行情)。盘后阶段主要用于策略的收盘总结、数据持久化保存、对账以及盘后固定价格交易。
after_trading_end 函数。该函数为定时运行,通常由券商配置决定(一般为15:30),用于处理每天收盘后的操作,如保存全局变量 g 的状态。run_daily 中指定交易时间(如 time='15:10')运行的函数,常用于科创板/创业板的盘后固定价格交易申报(如调用 after_trading_order)。initialize(仅启动时运行一次)和 before_trading_start(每日盘前运行)。handle_data 或 tick_data 中。after_trading_end 中,确保策略重启后状态不丢失。