QMT 极速策略交易系统,以下简称 QMT 系统,内置了 3.6 版本 的 python 运行环境,提供行情数据与交易下单两大核心功能。通过编写 python 脚本,可以完成指标计算,策略编写,策略回测,实盘下单等需求。

QMT 系统支持回测模型实盘模型

回测模型:是在历史 K 线数据基础上,按从左至右的顺序逐根扫描 K 线,通过模拟资金账户来记录每日的交易信号及持仓盈亏情况,最终呈现策略在历史时间段内的净值变化趋势。

实盘模型:是在盘中接收最新的动态行情数据,实时向交易所发送买卖指令,并对委托状态进行判断,需要持续重复进行报单与撤单操作的交易模型

图片

一、QMT回测模型

1、回测是遍历固定的历史数据:

首先需要下载历史行情,首次下载可以在界面左上角,点击操作,选择数据管理补充行情,选择回测的周期,如日线,所需的板块数据,如沪深A股板块,时间范围选择全部,下载完整历史行情。

图片

其次设置每日定时更新,可以点击客户端右下角行情按钮,在批量下载界面选择需要每天更新的数据,勾选定时下载选项,之后每天在指定时间会自动下载行情数据到本地。

图片

2、回测模型取本地数据遍历,不需要向服务器订阅实时行情,应使用 get_market_data_ex函数,指定subscribe参数为False,来读取本地行情数据。

3、回测模型的撮合规则为,指定交易价格在当前k线高低点间的,按指定价格撮合,超过高低点的,按当前 k 线收盘价撮合。委托数量大于可用数量时,按可用数量撮合。

图片

二、QMT实盘模型

当你回测结束,你需要开始实盘模型,注意这里提到的实盘,指的是接收未来 K 线的数据,生成策略信号,进行交易下单。

注意:实盘模型也分模拟柜台模拟交易真实柜台实盘两种

图片

1、你要运行实盘模型,QMT 系统提供两种交易模式:

默认的交易模式为逐 k 线生效 (passorder函数快速交易quicktrade参数填 0 即默认值),适用与需要在盘中模拟历史上逐 k 线的效果需求。

以一分钟周期为例,把下单判断与下单函数放在 handlebar 函数内,盘中主图每 3 秒一次的分笔更新,会触发 handlebar 函数调用,系统会暂存此次调用产生的下单信号。3 秒后下一分笔到达时,如果属于新一分钟 K 线的首个分笔,判定上一分笔是前一根 K 线的最后分笔,会将暂存信号发往交易所完成交易;如果不是新 K 线的分笔,判定当前 K 线未走完,丢弃暂存信号。对于1 分钟 K 线来说,每根 K 线含 20 个分笔,前 19 个分笔产生的信号会被舍弃,最后一个分笔的信号,会在下一根 K 线首个分笔到达时,延迟 3 秒发出。系统内置的 ContextInfo 也做了相同的等待、回退处理,逐 K 线模式的交易记录可存储在 ContextInfo 对象的属性中。

QMT 系统也支持立即下单模式,给 passorder 函数的 quicktrade 参数填 2 ,运行后会立刻发委托,不做信号等待与丢弃操作。此时需用普通全局变量(比如自定义一个Class a ())保存委托状态,无法存到 ContextInfo 的属性里。

2、实盘的撮合规则以交易所为准。股票品种的话,价格不能超过 2% 的价格笼子否则废单。数量超过可用数量时会废单。

3、实盘模型需要在模型交易界面执行。模型交易界面,选择新建策略交易,添加需要的模型。运行模式可以选择模拟实盘

选择模拟信号模式,在策略信号界面显示买卖信号,不实际发出委托。仅会记录交易信号在下方的策略信号栏中

迅投研终端示例

选择实盘交易模式,显示的策略信号会实际发出到交易,同时交易信号会记录在下方的策略信号栏中

迅投研终端示例

三、如何开通QMT和miniQMT

1、开通门槛

目前券商限时入金10万就可以开通

    2、佣金费率

    • 股票无条件万1,根据资金量最低可以做到万0.854

    • 融资无条4.5%,根据资金量,最低可以做到4%

    Logo

    专业量化交易与投资者大本营

    更多推荐