中使用 MOOTDX库读取通达信的数据,WIN+PYTHON,最新问题排查

news2024/9/22 15:33:13

M项目概述 - MOOTDXicon-default.png?t=N7T8https://www.mootdx.com/zh-cn/latest/帮助文档icon-default.png?t=N7T8https://www.mootdx.com/zh-cn/latest/​​​​​​​​​​​​​​​​​​​​​

  • 库的安装

注:我这的安装过程必须要ROOT权限,所以我用管理员的权限运行了控制台

pip install mootdx==0.3.21

不知道这里为啥要一定要带上版本,不带版本不行。

基于源码安装

python -m pip install git+https://github.com/mootdx/mootdx.git

本机(windows)没有GIT的基于源码安装

(这个过程是成功的,但是使用过程是失败的,所以不建议做,作为研究可以进行)

https://gitee.com/beolee/mootdx/tree/master

用ZIP的方式下载源码,解压到本地,例如 D:\quantization\mootdx-master

mootdx-master目录下建立如下几个空文件

requirements.txt

README.rst

HISTORY.rst

setup.py

setup.cfg

在GITEE中复制上述文件内容,并生成文件(GITEE直接右键另存为是不行的)

修改行情列表:修改文件mootdx-master\mootdx\consts.py(为什么要修改,有什么用,看后面)

注:

MOOTDX无论是源码中还是配置文件中的地址都太老了,不可用,会引起错误

装一个通达信,找到目录下的connect.cfg,可以获得最新的行情服务器列表

将HQ地址替换为

#('银河证券阿里云行情','120.76.1.198',7709),
#('银河证券上证云行情','222.73.48.27',7709),
#('银河证券金融终端阿里云','120.76.4.28',7719),
#('银河证券富丰电信', '1.202.143.37',7709),
#('银河证券富丰联通', '111.203.134.118',7709),
#('银河证券富丰移动', '117.133.128.226',7709),
#('银河证券上证云上海一', '103.251.85.214',7709),
#('银河证券上证云上海二', '114.141.177.40',7709),
#('银河证券上证云福州一', '27.151.2.113',7709),
#('银河证券上证云福州二', '27.151.2.38',7709),
#('银河证券上证云新疆', '202.100.166.12',7709),
#('银河证券上证云上海二', '114.141.177.40',7709),
#('银河证券上证云福州一', '27.151.2.113',7709),
#('银河证券上证云福州二', '27.151.2.38',7709),
#('银河证券上证云新疆', '202.100.166.12',7709)

完成通过源码安装

d:
cd D:\quantization\mootdx-master\mootdx
python setup.py install 

但是,在编写代码的时候,使用源码安装后会出现

ModuleNotFoundError: No module named 'mootdx.quotes'

 这个问题,还没深入去检查并解决,所以这里不推荐源码的方式进行安装

后续通过部分修改,PIP 在线安装的版本可以正常使用

  • 进行线路测试(下面的操作)

mootdx bestip -v

这时候会出现错误

查看磁盘目录发现

C:\Users\turui\.mootdx

C:\Users\turui\mootdx

都存在,并且都有config.json

但是,重点来了,这两个地址,不管哪个config.json如何修改,都不会被读取。

  • 修改行情列表,创造一个可用的在线行情读取环境

找到文件(需要管理员权限)

C:\ProgramData\Anaconda3\lib\site-packages\mootdx\consts.py

修改行情列表

进行服务器测试

mootdx bestip -v 

 经过上面的修改,这个命令一切正常接下来就可以进行程序编写、测试。

  • 本地数据读取
from mootdx.reader import Reader

# market: 参数 `std` 为标准市场(就是股票), `ext` 为扩展市场(期货,黄金等)
# tdxdir: 是通达信的数据目录, 根据自己的情况修改
# 本地要下载的有相应的文件,否则会报错
reader = Reader.factory(market='std', tdxdir='C:\海王星金融终端-中国银河证券')

# 读取日线数据
reader.daily(symbol='300264')

# 读取1分钟数据
reader.minute(symbol='300264')

# 读取5分钟数据
reader.fzline(symbol='300264')
  • 在线数据读取
client = Quotes.factory(market='std', multithread=True, heartbeat=True, bestip=False, timeout=15)
# multithread 多线程
# heartbeat 开启心跳包
# bestip 重新测试最快服务器
# server 自行设置服务器IP, 格式 `server=('127.0.0.1', 7727)`
# timeout 设置超时时间
# quiet 日志静默方式, 默认False, 设置为 True 则不打印日志信息
# verbose 日志显示等级 0, 静默模式, 1 一般级别, 2 详细级别


from mootdx.consts import MARKET_SH
#指数 client.index
#股票 client.bars
#分钟 client.minute
#frequency: K线种类
#    0 => 5分钟K线 => 5m 
#    1 => 15分钟K线 => 15m 
#    2 => 30分钟K线 => 30m 
#    3 => 小时K线 => 1h 
#    4 => 日K线 (小数点x100) => days 
#    5 => 周K线 => week 
#    6 => 月K线 => mon 
#    7 => 1分钟K线(好像一样) => 1m 
#    8 => 1分钟K线(好像一样) => 1m 
#    9 => 日K线 => day 
#    10 => 季K线 => 3mon 
#    11 => 年K线 => year
#market: 市场代码. 0 - 深圳, 1 - 上海 (可以使用常量 MARKET_SZ, MARKET_SH 代替)
#start: 开始位置
#offset: 用户要请求的 K 线数目,最大值为 800

client.index(frequency=9, market=MARKET_SH, symbol='000001', start=1, offset=2)

# 读取K线,前复权
client.bars(symbol='300264', adjust='qfq')

# 读取多支票
client.quotes(symbol=["000001", "300264"])

# 读取分时数据
client.minute(symbol='300264')

# 读取历史分时
client.minutes(symbol='300264', date='20240119')



client返回的数据格式为 DataFrame格式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1398251.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OCR识别网络CRNN理解与Pytorch实现

CRNN是2015年的论文“An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition”提出的图像字符识别网络,也是目前工业界使用较为广泛的一个OCR网络。论文地址:https://arxiv.org/…

SCI好看的配图-汇总

文章目录 图源:Sustainable Cities and Society【期刊】条形图2热力图-地图 图源:Sustainable Cities and Society【期刊】 引自:A machine learning-driven spatio-temporal vulnerability appraisal based on socio-economic data for COV…

【Vue】使用 Vuex 作为状态管理

【Vue】使用 Vuex 作为状态管理 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式和库。它使用单一状态树,这意味着这个对象包含了全部的应用层级状态,并且以一种相对集中的方式存在。这也意味着,通常单个项目中只有一个 Vuex store。Vue…

AI大模型开发架构设计(2)——AI绘画技术架构应用实践

文章目录 1 AI绘画整体流程2 AI绘画技术架构文生图核心算法原理文生图工程架构 3 AI绘画的应用实践 1 AI绘画整体流程 第一步:输入 Prompt 提示词:/mj 提示词第二步:文生图(Text-to-Image)构图第三步:图片渲染第四步:…

代码里下毒了,支付下单居然没加幂等

又是一个风和日丽没好的一天,小猫戴着耳机,安逸地听着音乐,撸着代码,这种没有会议的日子真的是巴适得板。 不料祸从天降,组长火急火燎地跑过来找到了小猫。“快排查一下,目前有A公司用户反馈积分被多扣了”…

【咕咕送书 | 第八期】羡慕同学进了大厂核心部门,看懂这本书你也能行!

🎬 鸽芷咕:个人主页 🔥 个人专栏:《linux深造日志》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! ⛳️ 写在前面参与规则 ✅参与方式:关注博主、点赞、收藏、评论,任意评论(每人最多评论…

100天精通鸿蒙从入门到跳槽——第8天:TypeScript 知识储备:泛型

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通Golang》…

实战纪实 | 某配送平台zabbix 未授权访问 + 弱口令

本文由掌控安全学院 - 17828147368 投稿 找到一个某src的子站,通过信息收集插件wappalyzer,发现ZABBIX-监控系统: 使用谷歌搜索历史漏洞:zabbix漏洞 通过目录扫描扫描到后台,谷歌搜索一下有没有默认弱口令 成功进去了…

nginx配置内网代理,前端+后端分开配置

安装好后nginx,进入配置文件 我这块安装在了home里面,各位根据自身情况选择 打开nginx.conf文件 在底部查看是否包含这段信息:含义是配置文件包含该路径下的配置文件 include /home/nginx/conf/conf.d/*.conf; # 该路径根据自己的安装位置…

【从0到1学Python】第二讲:Python中的各种“量”(一)

也许你知道学习一门语言的第一件事就是在屏幕上输出"Hello world!"。 但是请别着急!在本系列文章中,我希望在讲如何输出之前,先谈谈Python中的各种量。因为,输出、输入语句也是基于各种“量”来完成的。我想&#xff0c…

基于springboot+vue的宠物领养系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 背景及意…

Three.JS教程1 环境搭建、场景与相机

Three.JS教程1 环境搭建、场景与相机 一、Three.JS简介二、环境搭建1. 开发准备2. 安装 three.js3. 新建文件index.htmlmain.js 4. 关于附加组件5. 启动 三、创建场景1. 场景的概念2. 相机的概念3. 相机的几个相关概念(1)视点(Position&#…

【机器学习】四大类监督学习_模型选择与模型原理和场景应用_第03课

监督学习中模型选择原理及场景应用 监督学习应用场景 文本分类场景: o 邮件过滤:训练模型识别垃圾邮件和非垃圾邮件。 o 情感分析:根据评论或社交媒体内容的情感倾向将其分类为正面、负面或中性评价。 o 新闻分类:将新闻文章自动…

第一篇【传奇开心果】Vant 开发移动应用:从helloworld开始

传奇开心果系列博文 博文系列目录Vant of Vue 开发移动应用示例博文目录一、从helloworld开始二、添加几个常用组件三、添加组件事件处理四、添加页面和跳转切换路由五、归纳总结知识点六、知识点示例代码 博文系列目录 Vant of Vue 开发移动应用示例 博文目录 一、从hellow…

二、简单控件

二、简单控件 #mermaid-svg-TR8KwIeb54zOjfmt {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-TR8KwIeb54zOjfmt .error-icon{fill:#552222;}#mermaid-svg-TR8KwIeb54zOjfmt .error-text{fill:#552222;stroke:#55222…

45 mount 文件系统

前言 在 linux 中常见的文件系统 有很多, 如下 基于磁盘的文件系统, ext2, ext3, ext4, xfs, btrfs, jfs, ntfs 内存文件系统, procfs, sysfs, tmpfs, squashfs, debugfs 闪存文件系统, ubifs, jffs2, yaffs 文件系统这一套体系在 linux 有一层 vfs 抽象, 用户程序不用…

1.php开发-个人博客项目文章功能显示数据库操作数据接收

(2022-day12) #知识点 1-php入门,语法,提交 2-mysql 3-HTMLcss ​ 演示案例 博客-文章阅读功能初步实现 实现功能: 前端文章导航,点入内容显示,更改ID显示不同内容 实现步骤&#xff1…

04 MyBatisPlus之逻辑删除+锁+防全表更新/删除+代码生成插件

1 逻辑删除 1. 1 什么是逻辑删除 , 以及逻辑删除和物理删除的区别? 逻辑删除,可以方便地实现对数据库记录的逻辑删除而不是物理删除。逻辑删除是指通过更改记录的状态或添加标记字段来模拟删除操作,从而保留了删除前的数据,便于后续的数据…

P1059 [NOIP2006 普及组] 明明的随机数————C++、Python

目录 [NOIP2006 普及组] 明明的随机数题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示 解题思路Code——CCode——Python运行结果 [NOIP2006 普及组] 明明的随机数 题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性&#xff0…

uniapp的IOS证书(.p12)和描述文件(.mobileprovision)申请 2024年最新教程

文章目录 准备环境登录 iOS Dev Center 下面我们从头开始学习一下如何申请开发证书、发布证书及相对应的描述文件。首先需要申请苹果 App ID (App的唯一标识)生成证书请求文件申请开发(Development)证书和描述文件申请开发(Development)证书添加调试设备…