3 行代码拉出 A 股 K 线:mootdx 通达信数据读取上手指南
3 行代码拉出 A 股 K 线mootdx 通达信数据读取上手指南【免费下载链接】mootdx通达信数据读取的一个简便使用封装项目地址: https://gitcode.com/GitHub_Trending/mo/mootdx要跑回测你得先有 200 天干净的 A 股日线。mootdx 是通达信数据读取的 Python 封装建一个行情客户端bars一调K 线数据就成了 DataFrame本地装过通达信的话离线文件也能直接读。先定位mootdx 是量化数据获取的那一层量化数据链路里最烦人的往往不是策略计算而是把数据拿回来。mootdx 把通达信数据的两条来源——线上行情协议和本地 vipdoc 文件——都封了一层你不用自己解析二进制格式。能力大致这么几项K 线数据日/周/月线、分钟线、分时线frequency参数切换周期实时 A 股行情多只股票一次拉取返回 DataFrame财务数据Affair类下载并解析远程财务文件离线读取Reader直接读本地通达信文件不产生网络请求Quotes/Reader两个入口同一套调用风格返回的都是 pandas 对象装完包先把第一段行情跑通 ⚡安装就一行Python 3.8pip install mootdx[all]环境就绪后先跑python -m mootdx bestip -vv测一轮最快的行情服务器结果会自动写进本地配置。然后写第一段脚本——它做了三件事建标准市场客户端、拉平安银行的实时行情、再拉 200 根日 K 线from mootdx.quotes import Quotes client Quotes.factory(marketstd) quote client.quotes(symbol[000001]) # 实时行情 df client.bars(symbol000001, frequency9, offset200) print(quote) print(df.tail(3))frequency9是日线0 是 5 分钟线、5 是周线照传就行。如果你机器上装过通达信其实可以完全不走网络——把tdxdir指到安装目录走Reader入口读日线from mootdx.reader import Reader reader Reader.factory(marketstd, tdxdirC:/new_tdx) daily reader.daily(symbol600036)tdxdir不存在时构造函数会直接抛异常早失败总比事后查不到数据好。K 线数据到手之后 200 天日线算 MA5 和 MA20bars拿回来就是 DataFrame均线就是一行 rolling不用手动对齐日期from mootdx.quotes import Quotes client Quotes.factory(marketstd) df client.bars(symbol000001, frequency9, offset200) df[MA5] df[close].rolling(5).mean() df[MA20] df[close].rolling(20).mean() print(df[[close, MA5, MA20]].tail(5))表格里 datetime/open/high/low/close/volume 这些列已经规范化过pct_change、cumprod 之类的操作可以直接往上挂。一批股票跑同一段逻辑股票池有几十只的时候别复制五十份代码循环里对每个 symbol 调reader.daily取最新收盘价和均量 append 进列表最后pd.DataFrame合成一张横截面总表。同一个循环稍微改一下轮询间隔就是每 30 秒打印一次最新价的监控脚本财务数据则是Affair.files()列出远程文件Affair.fetch(downdirtmp)下载并解析路子一样。进阶网络抖动、重复请求与框架衔接网络抖了怎么办Quotes.factory默认auto_retryTrue失败内部会重试长驻进程里再包一层异常捕获失败时调client.reconnect()重建连接配合 2^n 秒指数退避基本不会中断。行情服务器偏慢时跑一次python -m mootdx bestip重新选最快节点或者建客户端时直接传server(ip, port)钉死。数据拉多了怎么不重复请求实时行情天然重复率很高最简单的做法是自己维护一个 dict 缓存key 是 symbolvalue 存数据, 时间戳5 分钟窗口内直接返回旧值。日线这类低频数据更进一步——用Reader从本地文件读数据落盘一次之后零线上请求。接进 Pandas 和 Backtradermootdx 所有入口返回的都是 pandas 对象指标栈开箱即用。要接回测框架时写一个自定义 data loader把bars或daily的返回值直接喂给数据源接口中间不需要额外的转换层。仓库里值得收藏的入口 快速入门bestip、离线读取、线上行情的最短路径标准行情 API 参考quotes / bars / minute 的完整参数说明示例代码行情、Reader、财务数据的可运行脚本TDX 转 CSV 工具离线数据批量导出成表格复权计算前复权/后复权交易日历在mootdx/utils/holiday.py跑通第一段bars调用之后剩下的只是你想知道什么数据——指数、分钟线、财务文件仓库里都有对应入口。先把 symbol 换成你手里的股票跑一遍跑通了后面就顺了。【免费下载链接】mootdx通达信数据读取的一个简便使用封装项目地址: https://gitcode.com/GitHub_Trending/mo/mootdx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考