认识PTrade量化程序基本架构

timi
timi 想要稳稳的幸福~

1 人点赞了该文章 · 240 浏览

        通过了解PTrade量化平台的基本架构,大家能更深入地熟悉平台的功能和操作流程,建立基本的策略运行逻辑,系统化考虑策略的特点和运行逻辑,从而更高效地开发和优化量化策略,提升交易体验。
        下面来介绍一下PTrade量化平台策略基本架构中的五大模块:它们分别为initialize初始化模块、before_trading_start盘前处理模块、handle_data(tick_data)周期运行模块和after_trading_end盘后处理模块,它们各自的触发时间及策略中可选或必选条件详见下图:



        


        其中initialize初始化模块在策略回测、交易过程中仅开始运行一次,before_trading_start盘前处理模块和after_trading_end盘后处理模块每日运行一次,handle_data(tick_data)周期运行模块根据设定的周期每tick、每分钟或每日运行一次。
        在设计运行架构时,还有一个非常重要的API就是run_daily函数,该函数只能在初始化阶段initialize函数中调用,可以多次设定,实现多个定时任务的调用。在回测中,当回测周期为分钟时,时间的取值范围需要指定在09:31~11:30与13:00~15:00交易时间段之间,当回测周期为日时,无论设定值是多少都只会在15:00执行,而在交易中不受此时间限制,可定为任意时间触发定时任务。

        通过对比两者的API文档,发现PTrade量化平台和聚宽论坛上的策略代码在initialize初始化模块和handle_data周期运行模块的用法是相同的。两者差异比较大的地方是在聚宽论坛策略中有run_daily每日定时函数、run_weekly每周定时函数和run_monthly每月定时函数,PTrade量化平台中只有run_daily每日定时函数,如需达到原策略中run_weekly和run_monthly的效果,需要引入datetime库进行实现,此处时间判断代码将在后续案例中更新。

        这样经过基本架构分析后,我们就了解了每一篇策略大体是如何运行的,在具体的修改移植过程中就会逻辑清晰,接下来我们将对每个基本模块内的内容就移植细节详细展开讲解。

发布于 2024-03-21 18:03

免责声明:

本文由 timi 原创发布于 百果量化交流平台 ,著作权归作者所有。

登录一下,更多精彩内容等你发现,贡献精彩回答,参与评论互动

登录! 还没有账号?去注册

暂无评论