文章目录

  • 前言
  • 一、XtQuant是什么?
  • 二、如何活动XtQuant?
    • 1.引入库
    • 2.批量下载数据
  • 总结

前言

QMT包含了XtQuant,可以方便的获取行情数据,最近碰到一些小问题,自己也琢磨了下,顺便分享出来。


提示:以下是本篇文章正文内容,下面案例可供参考

一、XtQuant是什么?

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

XtQuant运行依赖环境
XtQuant目前提供的库包括64位Python3.6----3.11版本,不同版本的python导入时会自动切换。 在运行使用XtQuant的程序前需要先启动MiniQMT客户端。

二、如何活动XtQuant?

1.引入库

方法1. XtQuant 默认安装在QMT安装目录下bin.x64\Lib\site-packages,如笔者安装在c:\gszqqmt\,则
将如下语句插入需要引用XtQuant的python文件里,就可以随意调用了:

sys.path.append(r'c:\gszqqmt\bin.x64\Lib\site-packages')

方法2. 将bin.x64\Lib\site-packages\xtquant目录复制到python安装环境Lib\site-packages\目录下,即可直接使用本地Python环境直接调用XtQuant。缺点是每次QMT更新XtQuant,需要手动再复制一次。

2.批量下载数据

2.1 找到xtquant目录下xtdata.py中__all__,在末尾增加如下一行:

    , 'download_history_data2'

即可通过调用download_history_data2批量下载数据,具体步骤如下。修改后的结果如下:

__all__ = ['subscribe_quote', 'subscribe_whole_quote', 'unsubscribe_quote', 'run', 'get_market_data', 'get_local_data', 'get_full_tick', 'get_divid_factors', 'get_l2_quote', 'get_l2_order', 'get_l2_transaction', 'download_history_data', 'get_financial_data', 'download_financial_data', 'get_instrument_detail', 'get_instrument_type', 'get_trading_dates', 'get_sector_list', 'get_stock_list_in_sector', 'download_sector_data', 'add_sector', 'remove_sector', 'get_index_weight', 'download_index_weight', 'get_holidays', 'get_trading_calendar', 'get_trade_times'#, 'get_industry'#, 'get_etf_info'#, 'get_main_contract'#, 'download_history_contracts', 'download_cb_data', 'get_cb_info'# 增加如下一行,即可通过download_history_data2下载数据, 'download_history_data2'
]

2.2 批量下载多只股票代码行情数据(源代码)

修改完以上后,将如下代码保存到任意位置,运行即可。注意将c:\gszqqmt替换为自己的QMT安装路径。

#coding=utf-8import pandas as pd
import sys
sys.path.append(r'c:\gszqqmt\bin.x64\Lib\site-packages')# 加载xtquant库
from xtquant.xtdata import *def on_progress(data):'''补充历史数据回调函数'''print(data) if __name__ == "__main__":print("xtdata demo")# 根据stock_list下载数据stock_list = ['603909.SH','300450.SZ','600740.SH','002362.SZ','600750.SH']field_list = ['time','open','close','low','high','volume'] # 提取的字段download_history_data2(stock_list, period='1d', start_time='20230201', end_time='20230223', callback=on_progress)print('download_history_data2 finished')# 获取股票close数据ret = get_market_data(field_list, stock_list, period='1d', start_time='', end_time='', count=5, dividend_type='front', fill_data=True)print(ret['close'].T)

结果如下:

xtdata demo
{'finished': 1, 'total': 5, 'stockcode': '603909.SH', 'message': ''}
{'finished': 2, 'total': 5, 'stockcode': '600740.SH', 'message': ''}
{'finished': 3, 'total': 5, 'stockcode': '600750.SH', 'message': ''}
{'finished': 4, 'total': 5, 'stockcode': '300450.SZ', 'message': ''}
{'finished': 5, 'total': 5, 'stockcode': '002362.SZ', 'message': ''}
download_history_data2 finished603909.SH  300450.SZ  600740.SH  002362.SZ  600750.SH
20230217      12.99      45.08       5.62      37.80      15.66
20230220      13.03      45.56       5.73      38.90      16.13
20230221      13.19      45.40       5.84      36.95      16.14
20230222      13.04      44.85       5.90      37.99      16.25
20230223      13.03      44.45       5.89      34.19      16.36

总结

xtquant是qmtmini的灵魂,这篇文章只是抛砖引玉,后面还有很多用法,以后抽空再分享。感兴趣的童鞋可在评论区留言。

【QMT之xtquant】活用xtdata,激活download_history_data2批量高效获取行情数据相关推荐

  1. [QMT]09-下载历史行情数据到本地

    下载历史行情数据 download_history_data(stock_code, period, start_time='', end_time='') 1 释义 补充历史行情数据 参数 stoc ...

  2. python解密(LinkedIn)领英邮箱激活链接验证并获取真实验证链接

    在我们抓取领英(LinkedIn)数据的时候,可能需要账号注册. 通过邮箱注册的时候,领英官网会发送激活链接 我们需要通过程序自动拿到此激活链接, 拿到以后在此激活页面访问,即可激活邮箱账户, 但是通 ...

  3. 从甜心教主“炸”活中年男粉看企业如何让“沉睡数据醒来说话”?

    "你一票,我一票,心凌80还唱跳."随着综艺某综艺的正式开播,如今已年近40的"甜心教主"用一首<爱你>,不仅让自己翻红,也让无数网友大声呼喊着&q ...

  4. 逻辑漏洞挖掘——任意账号密码(用户名/前端验证/激活验证/批量注册)

    目录 1.未验证邮箱/手机号 2. 批量注册 3.前端验证审核绕过

  5. QMT vs Ptrade 速度对比 (一) 历史行情获取速度

    QMT vs Ptrade 速度对比 (一) 历史行情获取速度 众所周知(狗头),QMT是在你本地电脑运行的,包括行情获取,计算指标,选股选债,下单都在你的本地电脑执行.行情数据通过网络去券商服务器或 ...

  6. QMT vs Ptrade 速度对比 (二)实时行情速度对比

    QMT vs Ptrade 速度对比 (二)实时行情速度对比 上一篇文章对了了QMT和Ptrade的获取历史行情速度,本篇文章继续对它俩的实时行情速度. 本文以获取市场所有可转债的实时行情为例子,比较 ...

  7. mysql 计算近30天总金额_电商网站销售数据分析(MYSQL)

    1.背景及目的 数据来源于某CD电商网站的用户订单记录,共23570名用户.69659条数据. 通过分析数据,了解该网站的用户行为.忠诚度.生命周期价值等内容,为营销策略及方案提供一定的依据. 2.数 ...

  8. Android进阶笔记07:Android之MVC 理解

     1. 为什么需要MVC ? 软件中最核心的,最基本的东西是什么?  答:是的,是数据.我们写的所有代码,都是围绕数据的.      围绕着数据的产生.修改等变化,出现了业务逻辑.      围绕着数 ...

  9. 0基础如何入门Python编程

    Python目前已经成为最受欢迎的编程语言之一,吸引了一大批粉丝,但是很多人在要跨入的时候犹豫了,原因竟然是觉得零基础学习Python太难了,真的是这样吗?零基础入门Python编程学习有什么好的技巧 ...

最新文章

  1. 欧式期权matlab编码蒙特卡罗方法,基于MATLAB的金融工程方法与实践第七章 基于蒙特卡洛方法的期权定价.ppt...
  2. 一图看懂云栖大会「云原生」重磅发布
  3. UTF-8 可变编码格式
  4. 【转】itk、vtk、qt 显示dicom 数据
  5. 高级GIT教程-如何使用GIT调试代码?
  6. 宾夕法尼亚在线计算机硕士,申请访谈:宾夕法尼亚大学(Upenn)计算机科学(CS)的录取攻略...
  7. 关于Lazarus下PowerPDF控件的使用
  8. 华硕A55V,终于解决了无线网指示灯不亮的问题。
  9. java subject类的作用_RxJava2 系列-3:使用 Subject
  10. dumprep 0 -u 到底是什么东西?
  11. play框架用起来(3)
  12. c++ string assign和operator=
  13. java后台发送post请求 MultipartFile、json
  14. 活体检测论文笔记2——Deep Spatial Gradient and Temporal Depth Learning for Face Anti-spoofing
  15. 日常英语---八、REBOOT - What is the difference? -MapleStory
  16. 山特UPS不间断电源的主要技术参数
  17. 国科大学习资料--最优化计算方法(王晓)--期末考试试卷1
  18. 简要分析一年期人民币零存整取
  19. Nacos系列(12)-Nacos1.3.2注册中心nacos.discovery配置参数详解
  20. mysql主备的工作原理是_mysql主从备份及原理分析

热门文章

  1. 计算机模拟考试系统(excel2003),用Excel建立模拟考试系统(下)
  2. 18.企业信息化战略与实施
  3. 9-visual_feature_VINS-Mono
  4. 如何做好服务器的防御工作
  5. HarmonyOS和LiteOS的关系,关于harmonyos:科普干货|漫谈鸿蒙LiteOSM与HUAWEI-LiteOS内核的几大不同...
  6. 如何选择适合你的兴趣爱好(六十六),折纸
  7. 1.8 faker简单应用
  8. px,in,mm,pt,dp,dip,sp 之间的换算公式以及区别 屏幕密度
  9. html密码款初始默认点,tplogin.cn默认(初始)密码是多少?
  10. Mongodb之(初出茅庐)