【QMT】给QMT量化交易软件安装和调用第三方库(举例通达信pytdx,MyTT,含代码)

给QMT量化交易软件安装和调用第三方库(举例通达信pytdx,MyTT,含代码)

  • 一、安装QMT
  • 二、给QMT安装python
  • 三、给QMT的python环境安装第三方库
      • 1.准备python虚拟环境
      • 2.安装第三方库到指定目录
  • 四、在QMT里调用第三方库(代码)
      • 1.第三方库pytdx在QMT里的调用方法
      • 2.单个文件第三方库调用方法
  • 五、QMT内置库

一、安装QMT

下载后安装QMT,假定安装在D:\qmt。目录最好不要有中文或者空格。

二、给QMT安装python

登录后选择“设置”菜单进入系统设置,选择交易设置->模型设置,点击Python库下载。如果安装目录为D:\qmt,则python默认安装在目录D:\qmt\bin.x64
【QMT】给QMT量化交易软件安装和调用第三方库(举例通达信pytdx,MyTT,含代码)_第1张图片

三、给QMT的python环境安装第三方库

注意:安装三方库前,请备份 QMT安装目录\bin.x64\ 目录下的 DLLs 和 Lib 这两个文件夹,以便在安装三方库引起系统错误后,可以恢复系统默认的库文件。

如果你本地有其他python版本的话,建议使用虚拟环境来操作。这样不会影响你原有的python版本以及已经安装的第三方库。如果你的电脑只是做交易,是按照QMT要求只安装了Python 3. 6. 8版本,本机也不经常使用python的话,可以跳过虚拟环境这一步骤。

1.准备python虚拟环境

由于QMT使用python版本为3.6.8,为了兼容性更好,我们通过Anaconda在本地虚拟一个python3.6.8环境。
1.Anaconda的安装及环境配置(自己百度,csdn里指导文章很多)
2.创建虚拟环境
建立一次即可,已建立不用重复建立,name 后的qmt是环境名称,自己起名,以后用这个激活虚拟环境

conda create --name qmt python=3.6.8

3.激活虚拟环境
以后均要先激活,再通过pip安装第三方包

conda activate qmt

2.安装第三方库到指定目录

以上准备妥当后,先激活虚拟环境
假设QMT我安装在D:\qmt,那么第三方库需要安装到这里
D:\qmt\bin.x64\Lib\site-packages
安装第三方包,以安装pytdx 为例,注意指定目录

pip install pytdx --target=D:\qmt\bin.x64\Lib\site-packages

如果安装第三方库,感觉有些慢,还可以在命令行临时添加一下参数,使用清华源,这样速度会快很多。

pip install pytdx --target=D:\qmt\bin.x64\Lib\site-packages -i https://pypi.tuna.tsinghua.edu.cn/simple

四、在QMT里调用第三方库(代码)

1.第三方库pytdx在QMT里的调用方法

以下已pytdx为例,展示如何调用第三方库文件,关于pytdx的介绍请自行参考相关文档学习。

#encoding:gbk
# 加载pytdx库
from pytdx.hq import TdxHq_API
# 实例化tdx行情对象
api = TdxHq_API()

def init(ContextInfo):
    pass

def handlebar(ContextInfo):
    # 数据获取接口一般返回list结构,如果需要转化为pandas Dataframe接口,可以使用 api.to_df 进行转化
    with api.connect('119.147.212.81', 7709):
        df = api.to_df(api.get_security_bars(9, 0, '300750', 0, 50)) 
        print('pytdx行情获取\n',df)

备注: pytdx说明文档
https://rainx.gitbooks.io/pytdx/content/

2.单个文件第三方库调用方法

MyTT将通达信,同花顺,文华麦语言等指标公式indicators,最简移植到Python中,核心库单个文件,仅百行代码,实现和转换同花顺通达信所有常见指标MACD,RSI,BOLL,ATR,KDJ,CCI,PSY等,全部基于numpy和pandas的函数封装,简洁且高性能,能非常方便的应用在各自股票股市技术分析,股票自动程序化交易。

我们假定下载MyTT库文件MyTT.py,并放在D:\common下。调用该第三方库文件在策略文件开头添加如下代码,在QMT代码里即可实现对库函数的调用。其它同上。

import sys
sys.path.append(r"D:\common")
from MyTT import *

MyTT库介绍:
https://github.com/mpquant/MyTT

五、QMT内置库

QMT的python环境内置了很多官方库文件,我们不安装也可以使用。如和数据库连接的库,pymongo,pymysql,redis(内存数据库),使用这些可以直接在QMT里面调用自己的数据库数据,将必要的QMT数据保存到自己的数据库。

我们还可以使用内置的requests库实时爬取一些网站的数据,比如集思录,东方财富网等。所以在QMT的自带数据不满足的情况下,还可以使用外面的数据来补充。

各位还有其它需求,欢迎在评论区里补充,有空的话我将更新补充到文章内。

拓展阅读:
【量化交易行情不够快?】一文搞定通过Win10 wsl2 +Ubuntu+redis+pickle实现股票行情极速读写_IT里的交易员的博客-CSDN博客 https://blog.csdn.net/popboy29/article/details/126189105

你可能感兴趣的:(量化交易,python,金融)