优秀的编程知识分享平台

网站首页 > 技术文章 正文

是时候介绍一下miniqmt了!

nanyue 2025-01-04 22:15:43 技术文章 3 ℃

miniqmt,比QMT多了一个mini。是哪儿mini了呢?就是只保留了QMT的核心,我们编写代码时导入这个核心,就可以实现获取数据和实现交易的功能了。miniqmt,对于动手能力强的同学简直是神器啊!

1、官方对miniqmt的介绍


官网对miniqmt描述(http://dict.thinktrader.net/nativeApi/start_now.html?id=3WR14v)



XtQuant能提供哪些服务

XtQuant是基于迅投MiniQMT衍生出来的一套完善的Python策略运行框架,对外以Python库的形式提供策略交易所需要的行情和交易相关的API接口。


XtQuant 运行依赖环境

XtQuant 目前提供的库包括 64 位 Python 3.6、3.7、3.8、3.9、3.10、3.11版本,不同版本的 Python 导入时会自动切换。在运行使用 XtQuant 的程序前需要先启动 MiniQMT 客户端。


XtQuant 运行逻辑

Xtdata 作为行情模块,本模块旨在提供精简直接的数据满足量化交易者的数据需求,主要提供行情数据(历史和实时的K线和分笔)、财务数据、合约基础信息、板块和行业分类信息等通用的行情数据。

Xttrader 作为交易模块,封装了策略交易所需要的 Python API 接口,可以和 MiniQMT 客户端交互进行报单、撤单、查询资产、查询委托、查询成交、查询持仓以及接收资金、委托、成交和持仓等变动的主推消息。


我来翻译一下

1、你需要有python3.6-3.11之间的任意python环境,使用miniqmt要一直运行着miniqmt客户端(文章后面会教大家启动miniqmt客户端)。

2、xtdata为miniqmt的行情模块,一切策略所需要的数据由它来获取。

3、xttrader为交易模块,用来进行交易。

2、如何启动miniqmt

并不是所有提供QMT的券商都提供miniqmt的。以下是某两家券商的QMT启动界面。将红框处勾选上,就会启动miniqmt。

启动成功,出现了下图的界面,非常简洁,有点像通达信或同花顺的交易界面。用miniqmt编写策略的时候不需要看着这个界面,所以将其最小化即可。

3、miniqmt使用示例


在本机已安装python环境的前提下,去官方下载最新版本的xtquant(网址:http://dict.thinktrader.net/nativeApi/download_xtquant.html?id=3WR14v)。然后解压缩到Lib\site-packages文件夹下,出现的xtquant文件夹是长这样的:

按照第2步的方法打开miniqmt客户端。

然后我们运行一个官方示例来体验一下吧(网址:http://dict.thinktrader.net/nativeApi/code_examples.html?id=3WR14v#%E8%AE%A2%E9%98%85%E5%85%A8%E6%8E%A8%E6%95%B0%E6%8D%AE-%E4%B8%8B%E8%BD%BD%E5%8E%86%E5%8F%B2%E6%95%B0%E6%8D%AE):

# coding:utf-8
import time


from xtquant import xtdata 


code = '600000.SH'


#取全推数据
full_tick = xtdata.get_full_tick([code])
print('全推数据 日线最新值', full_tick)


#下载历史数据 下载接口本身不返回数据
xtdata.download_history_data(code, period='1m', start_time='20230701')


#订阅最新行情
def callback_func(data):
    print('回调触发', data)


xtdata.subscribe_quote(code, period='1m', count=-1, callback= callback_func)
data = xtdata.get_market_data(['close'], [code], period='1m', start_time='20230701')
print('一次性取数据', data)


#死循环 阻塞主线程退出
xtdata.run()

函数和QMT基本一致,很容易上手的。

今天就介绍到这里,我们下期再见!

Tags:

最近发表
标签列表