给 AI Agent 造了个免费股票数据弹药库 — pip install 装了就能跑

6 月 9 日
 handsomejustin80
量化机构花百万买的毫秒级行情通道,散户连一根日线都得手动截图。

我不想抱怨这事,我直接造了个开源工具把墙拆了。

easy-tdx:免费、无注册、无 API Key 的行情数据源

GitHub: https://github.com/handsomejustin/easy-tdx

一行命令装上,30 秒后你屏幕上的数据和机构看到的是同一份。

pip install easy-tdx

它能干嘛?

拉数据:A 股、港股、美股、期货 —— K 线、实时报价、分时明细、逐笔成交、资金流向、板块轮动,毫秒级返回。

# 茅台日 K 线
easy-tdx kline SH 600519 --count 30 --table

# 港股腾讯
easy-tdx ex kline HK_MAIN_BOARD 00700 --count 30 --table

# 美股苹果
easy-tdx ex kline US_STOCK AAPL --table

# 全 A 股按涨幅排序
easy-tdx quote-list A --count 20 --table

算指标:32 个技术指标开箱即用 —— MACD 、KDJ 、RSI 、BOLL 、DMI 、ATR 、WR 、CCI 、BIAS……连"捉妖大师"和"30 日乖离率信号"都给你算好了。

easy-tdx indicator MACD,KDJ,RSI,BOLL -m SH -c 600519 --count 20 --table

缠论分析:K 线合并→分型→笔→中枢→线段→买卖点→背驰,一键出结果。

easy-tdx chanlun SZ 000001 --table

为什么说它是 AI Agent 的天然弹药?

所有命令默认输出 JSON 。Python API 返回 DataFrame 。你的 Agent 不需要解析网页、不需要处理乱码、不需要折腾 API 鉴权。

from easy_tdx import MacClient, Market

with MacClient.from_best_host() as c:
# K 线 + 4 个指标一步到位
df = c.get_stock_kline_with_indicators(
Market.SH, "600519",
indicators=["MACD", "KDJ", "RSI", "BOLL"],
count=30,
)
# df 直接丢给 LLM 分析,或者喂给 Agent 做决策

# 缠论分析
from easy_tdx.chanlun import ChanlunAnalyser

analyser = ChanlunAnalyser("SH600519", "DAILY")
result = analyser.process_klines(df)
print(result.to_dict()) # JSON 兼容,直接进 Agent pipeline

事实是:Claude Code 、OpenClaw 、Hermes……任何能调 Python 的 Agent 都能直接吃这个数据。

你不需要懂 TCP 协议。你不需要写量化框架。你不需要给任何平台付一分钱。

还有什么?

- 离线读取: 本地装了通达信?直接读 .day 文件,断网也能用
- 数据同步: 一行命令把全市场日线同步到本地 easy-tdx offline sync-all
- 自动选服务器:from_best_host() 自动 ping 最快的通达信服务器
- 同步 + 异步:MacClient 和 AsyncMacClient 随你选
- MIT 协议: 随便用,随便改,随便分发

最后说两句

金融数据的获取门槛,从来不该是散户亏钱的理由。

当量化基金用程序化交易像割草一样收割市场时,普通人至少应该有权利拿一样的武器。

这不是一个帮你"赚钱"的工具。这是让你不再裸奔的工具。

如果觉得有用,来 GitHub 给个 ⭐ star 支持一下,让更多人看到:

https://github.com/handsomejustin/easy-tdx

MIT 全开源,代码干净,ruff + mypy strict ,PR welcome 。
3780 次点击
所在节点    分享创造
14 条回复
flcwk
6 月 9 日
看上去非常厉害
hackpro
6 月 9 日
通达信的数据源吗 有 vip 通道数据吗 好久不研究了😁
另外本地的数据是增量更新的 还是直接覆写?
ovtfkw
6 月 9 日
干他娘的 ai 文
Absofknglutely
6 月 9 日
我让 ai 写的 agent 也挺好用
inostarling
6 月 9 日
非常实用
maximdx
6 月 9 日
不懂就问,大 A 这种 T+1 出售的交易模式,秒级更新有什么价值吗?
coderfee
6 月 9 日
散户亏钱从来不是因为没数据,是因为有了数据也分析不出个屁,或者分析出来了也管不住手。你这工具只会让韭菜更快地把本金亏完,AI Agent 再聪明也救不了追涨杀跌的本能。
kexxxfeng
6 月 9 日
不懂就问,这数据源是哪里的,不用花钱吗?
xuemian
6 月 9 日
woc 牛逼
kuhung
6 月 9 日
数据源和数据质量,才是交易的根基吧。好奇数据源和质量情况。
handsomejustin80
6 月 9 日
@kuhung 数据源来自于通达信。质量很高
handsomejustin80
6 月 10 日
更新一下,距离上次发帖又肝了不少东西。

1. 内置回测引擎

写个 Python 策略文件继承 Strategy 基类,init() 里注册指标,next() 里写买卖逻辑,一行命令跑回测,引擎帮你搞定订单模拟、持仓跟踪、绩效分析。自带 15 个经典策略(双均线、MACD 、布林突破、海龟、捉妖大师共振……),不需要从零开始写。

easy-tdx backtest SZ 300308 --strategy-file strategies/expma_cross.py --count 2000 --adjust QFQ --table

不想一个个跑? run_all_strategies.py 一键跑完全部策略按收益排名,加 --show 弹出资金曲线对比图,买卖点标在图上。

2. 多因子组合回测

单因子策略再强也有盲区。这次加了组合回测,自动遍历所有 2 因子 / 3 因子组合,找到最优搭配。三种信号合并模式:AND (全部同意才动手,保守)、OR (有一个说买就买,激进)、MAJORITY (过半同意才触发,推荐)。

python run_all_strategies.py SZ 300308 --combo 2 --combo 3 --combo-mode majority

跑完给你一张排名表,哪个组合收益最高、回撤最小直接看。Python API 也一样能调,CombinationRunner 几行代码搞定。

原理不复杂:每个因子的买卖信号只提取一次存成遮罩,组合阶段就是 numpy 数组运算,15 个策略遍历 560 种组合,几十秒出结果。

3. 其他

- 修复了 MyTT 里 MFI / CR 指标分母为零的 RuntimeWarning
- 缠论模块修了一个持续趋势中笔丢失的 bug (分型陷阱)
- 离线数据同步现在支持写入扩展市场日线和分钟线

代码 ruff + mypy strict ,328 个测试全过。

欢迎提 PR 、Fork 拿去改、Star 帮忙扩散。策略不够自己写一个 30 行搞定,指标不够加个函数注册进去就行。

GitHub: https://github.com/handsomejustin/easy-tdx
lunare
6 月 14 日
最近在研究通达信,获取资金流向,发现大佬的项目

大佬 这个算是逆向,还是官方的接口,后期需要维护的吗
handsomejustin80
6 月 22 日
@lunare 在原有 pytdx 这个逆向项目增加了不少接口。 基本上你不需要维护。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1218903

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX