QMT量化策略开发全流程详解:从Init初始化到HandleBar循环再到PassOrder下单

QUANT 2025-11-10 16:42:19 37 举报

本文共计828个字,预计阅读时长3.3分钟。

每一个 QMT Python 策略,无论多复杂,都建立在一个简单的骨架之上。这个骨架由两个必须存在的函数构成:init() handlebar()。你可以将它们想象成一个人的大脑和心脏。


简单来说:

init()是你的策略启动的基础

handlebar()是判断你的交易策略在这里执行

passorder()策略下单



下面是一个最基础的策略模板,你可以复制它作为你所有策略的起点: (qmt的编码声明,导入的python库,init函数初始化函数的使用,handlebar函数在盘中执行策略)


注意事项

       # coding: gbk 是必须的,请务必放在代码的第一行。

       ContextInfo 是一个非常重要的上下文对象,策略的所有信息和功能都通过它来传递和调用。


理解了策略的骨架后,我们就要学习如何让策略真正地去。在 QMT 中,所有交易指令都通过一个名为 passorder() 函数来完成。我们在策略开启并实时监控后, 当达到 我们的自动下单条件,就需要使用passorder()函数,帮我们执行自动下单。




案例:假设我们想在最新的 K 线上,以最新价买入 100 股中信证券(600030.SH


注意事项:

passorder 后面的几个参数(如策略名、是否立即下单等)在初学阶段可以暂时使用默认值。strategyName可以随便填,quickTrade2表示立即下单,userOrderId''空字符串即可,最后一个ContextInfo是固定要传的。


现在,策略已经学会了最基本结构框架和下单方式,接下来我直接把结合框架+ 下单 完整的代码分享给大家参考,一起在QMT里面动起来:


关注点赞 后续将会继续呈现更多的函数用法,以及实操代码案例,并结合实际运用!



这家伙太懒了,什么也没留下。

著作权归文章作者所有。

最新回复 ( 0 )
发新帖

目录

0
Error

500

服务器君不小心绊了一跤,导致这次请求没能顺利完成。

别担心,这绝不是您的错,而是我们后台的小伙伴需要赶紧来修复的小bug。

addslashes(): Passing null to parameter #1 ($string) of type string is deprecated/8192/48

回到首页 Back to home
page-misc-error-light