为什么你需要了解Ptrade的策略引擎?

如果你想真正掌握量化交易,仅仅知道策略代码是不够的,你还需要理解Ptrade的策略引擎是如何运作的。

Ptrade的策略引擎基于事件驱动模型,通过不同的事件函数(如initialize、handle_data等)来执行策略逻辑。今天,我们就来深入解析Ptrade的策略引擎,帮助你从入门到精通!

Ptrade策略引擎的核心:事件驱动模型Ptrade的策略引擎以事件触发为基础,通过以下核心函数完成策略的执行:

1.  initialize(必选)—— 策略初始化

作用:

在策略启动时运行一次,用于初始化全局变量(如股票池、参数设置等)。

执行时机:

回测:启动时运行一次。

实盘:每次启动策略时运行一次。

注意事项:

不要在这里执行耗时操作,否则会影响策略启动速度。

2.  before_trading_start(可选)—— 盘前准备

作用:

在每个交易日开始前运行,用于更新数据或计算盘前信号。

执行时机:

回测:每个交易日8:30执行。

实盘:默认每天9:10执行(可配置)。

注意事项:

在实盘时,9:10前行情数据可能未更新,建议用sleep延迟或改用run_daily。

3.  handle_data(必选)—— 盘中交易逻辑

作用:

根据设定的频率(每分钟或每日)执行交易逻辑。

执行时机:

日线策略:每天收盘后执行(回测15:00,实盘时间由券商配置)。

分钟策略:每分钟执行一次(回测9:31-15:00,实盘9:30-14:59)。

注意事项:

非交易日不会触发。高频策略需注意性能问题。

4.  after_trading_end(可选)—— 盘后处理

作用:

每天交易结束后运行,用于数据保存或生成报告。

执行时机:

默认15:30执行(时间可配置)。

注意事项:

适合用于盘后分析,不影响次日交易。

5.  tick_data(可选)—— 高频Tick级交易

作用:

每3秒执行一次,用于Tick级高频策略。

执行时机:

仅实盘可用,执行时间为9:30-14:59。

注意事项:

需要开通Level2行情才能获取逐笔数据。如果策略执行超过3秒,会丢弃中间未处理的Tick。



温馨提示:投资有风险,选择需谨慎。