• 请不要在回答技术问题时复制粘贴 AI 生成的内容
123128xyz
V2EX  ›  程序员

实在受不了 tushare 了!自己写了一个!日 k 数据+分时本地数据库,每日自动更新,免费送给需要的人了

  •  1
     
  •   123128xyz · Jun 29 · 3719 views

    前言:实在看不惯 tushare 一分钟只能调用一次,实际还有计时 bug ,根本没想让人用。

    实在费劲!

    自己做了一个,不仅自带 9GB+数据,甚至底层重构了一个 c++数据库。

    ,每日自动更新,免费使用!送给需要的人了.

    打开就能用,并发无压力。日 k 分钟 k 无限调用,本地数据无延迟

    2000 年到 2026-06-29 (今日)数据,+后续自带更新

    每日更新,无需网盘,3 、5 千并发调用无压力。

    自带四种接口。

    ai-mcp
    python 接口
    excel js 宏
    http 接口
    

    9000 万条数据+每日更新。

    包含 1 分钟分时,5 分钟分时,15 分钟分时,30 分钟分时 包含日 k ,周 k ,月 k ,均为前复权

    使用方式:

    1 、双击 更新.exe 2 、开始无限制调用

    尴尬 刚才忘了放下载链接了::: https://a.123128.xyz/downloads/stockdb.zip

    Supplement 1  ·  15h 18m ago
    重大变更提醒!数据更精确 0 误差!
    经过大家讨论之后:
    修改:原始数据为不复权存储
    并在 stock_sdk 增加 fq 复权选项(默认前复权,接口使用均不变)
    改动文件 stock_sdk.py 下载覆盖即可
    58 replies    2026-07-01 15:55:20 +08:00
    123128xyz
        1
    123128xyz  
    OP
       Jun 29
    补充:忘了说股票数量,总共是 7400+股票数据,包含 etf ,沪深大约 5400 只吧。两千多只是 1 、5 开头的。分钟 k+日 k
    123128xyz
        2
    123128xyz  
    OP
       Jun 29
    0x0x
        3
    0x0x  
       Jun 30 via iPhone
    赞一个,刚好最近需要,拉 akshare 被限流了
    ddup
        4
    ddup  
       Jun 30
    leveldb 是吧。请问数据是从哪里搞来的呢?
    Newb1e
        5
    Newb1e  
       Jun 30
    raycloud
        6
    raycloud  
       Jun 30 via Android
    老哥牛逼,先赞为敬
    Overfill3641
        7
    Overfill3641  
       Jun 30
    每次运行都要强制联网授权🤣。
    NaSuiBian
        8
    NaSuiBian  
       Jun 30
    多谢 收藏先
    xe2vforesu
        9
    xe2vforesu  
       Jun 30
    好人啊
    jazzg62
        10
    jazzg62  
       Jun 30
    下载始终提示:
    [^]自检发现有 1 个文件未完成,正在自动补齐下载...
    retry 1/3
    LOGretry 2/3
    LOGretry 3/3
    LOGfailed LOG
    jazzg62
        11
    jazzg62  
       Jun 30
    @jazzg62 没问题了,多尝试几遍就好了
    lavvrence
        12
    lavvrence  
       Jun 30
    有前复权数据么?
    defunct9
        13
    defunct9  
       Jun 30
    没有 linux 的么
    busuzhike
        14
    busuzhike  
       Jun 30
    赞,exe 能让用户放心吧?
    foryou2023
        15
    foryou2023  
       Jun 30
    感谢提供,有服务器部署方案吗?
    kyj
        16
    kyj  
       Jun 30
    好牛,mac 可以用吗?
    Rorysky
        17
    Rorysky  
       Jun 30
    关注,楼主数据是清洗得来的么?
    123128xyz
        18
    123128xyz  
    OP
       Jun 30
    @jazzg62 这个是因为你的 stockdb.exe 开着,这个文件被占用了。你退出 stockdb.exe 就能写入了。
    123128xyz
        19
    123128xyz  
    OP
       Jun 30
    @busuzhike 放心吧,随便检测绝对安全,主要我也不会写不安全的。。。
    123128xyz
        20
    123128xyz  
    OP
       Jun 30
    @ddup 其实我全协议都有,ths,dfcf,tx,tdx,xl,cq,交易+实时 l2 也能做。关键是这些东西不能放出来。
    Gamespark
        21
    Gamespark  
       Jun 30
    感谢老哥, 有空加下 mac 的吗?
    123128xyz
        22
    123128xyz  
    OP
       Jun 30
    @Gamespark mac 能交叉编译的话没什么问题,本身有 linux arm 和 x86 ,一直在手机上面跑,5g 手机自带的磁盘速度挺快的,主要不知道 mac 占比多少。
    niubee1
        23
    niubee1  
       Jun 30
    exe 放开源 repo 就是开源了?
    123128xyz
        24
    123128xyz  
    OP
       Jun 30
    @lavvrence 这个就是前复权数据,我也想的是开箱即用,后面发现遇到某只除权需要覆盖历史。正在考虑如何修正,即要:开箱即用,又要减少 update ,既要又要真不好搞。有解决方案,也求一个。
    123128xyz
        25
    123128xyz  
    OP
       Jun 30
    @niubee1 这个开源怎么说呢,我没弄懂开源的意义,调试几千上万次,自己用了两年无数修复,让他们拿去倒卖的话确实不符合我自私的人性。
    123128xyz
        26
    123128xyz  
    OP
       Jun 30
    关键的是:哪个数据库能做到下面的?

    同步异步单文件+链式调用+横\纵列混合存储+高并发读写+http/pysdk 同时支持+通配符+正反排序+截取+多横/列同取+最新 zstd 压缩+单文件 1.xmb 大小

    get()
    set()
    极简接口免除 sql
    get("日 k",code,date).get("open,close,high").get("open,close").get("open")[n:]
    更夸张的混合调用
    get("日 k",code,date).set().lens().get().mset().mlens().mget().delete()
    灵活到我自己都看不懂。
    zhcode
        27
    zhcode  
       Jun 30
    求个 linux 端,想放到 NAS 上面
    123128xyz
        28
    123128xyz  
    OP
       Jun 30
    @zhcode arm 吗?
    piksou
        29
    piksou  
       Jun 30
    老哥,如果是前复权,是不是每次用的时候要全量更新?
    ipwx
        30
    ipwx  
       Jun 30
    @123128xyz

    > 这个就是前复权数据,我也想的是开箱即用,后面发现遇到某只除权需要覆盖历史。
    一般而言,存原始量价+adj 表。读取的时候直接读取 K 线然后应用 adj 。python 上就一个 DataFrame join(on=date) 然后 df['close'] = df['close'] * (df['adj_factor'] / df['adj_factor'].iloc[-1])

    > 关键的是:哪个数据库能做到下面的?
    建议用 duckdb ,readonly 模式多进程可读;写入只能单线程。但是速度快、列存、单文件、支持 sql 。
    123128xyz
        31
    123128xyz  
    OP
       Jun 30
    @piksou 都是增量更新,今天 06-30 按我这里 10-20mb/s 的话,也就是 30 秒,最慢 2 分钟完成。

    前复权一天只会有几个股需要计算 factor ,这个我再考虑换成不复权,本地自己算,但感觉不是一个好的思路。或者每天更新那几只需要重算的,这个压力在我了。。。也不是很好。
    zhcode
        32
    zhcode  
       Jun 30
    @123128xyz x86 的
    PrfWong
        33
    PrfWong  
       Jun 30
    说实话,感觉有坑
    zljklang
        34
    zljklang  
       Jun 30
    你那个拉数据的 ip 绑过的域名全是黄色网站
    123128xyz
        35
    123128xyz  
    OP
       Jun 30
    @ipwx duckdb 技术上来说:
    最大的问题是,.duckdb 单文件无法增量更新,使用外部 Parquet 劣势放大,会慢 3 ~ 5 倍;那么每天都要下载 10 个 gb 数据。。。
    另外写入:sql 需要先创建表。再写入表。写入内存缓冲。实时多进程取不到值。多并发写入死锁。单文件无法增量更新。
    123128xyz
        36
    123128xyz  
    OP
       Jun 30
    @zljklang cf 的 ip 怎么变黄色网址了,估计是上次浏览过,所以又分给你了(纯猜测)
    123128xyz
        37
    123128xyz  
    OP
       Jun 30
    @zhcode 好的,x86 的有,但是现在这个前复权的问题,我还没有想到最干净的解决办法,py 到 c 有转换开销,所以没有分发可能会改底层。我希望极速+简单+打开即用,没有乱七八糟的,否则又变成 xxxxshare 这种了。
    xiejc
        38
    xiejc  
       Jun 30
    好人 话说现在看 K 线还有用吗
    prudence
        39
    prudence  
       Jun 30
    刚才有个群友也是问,我说不卖,不合规啊,不敢公开
    lxxzml
        40
    lxxzml  
       Jun 30
    我也有,找接口和 ai 搓的
    goudanli
        41
    goudanli  
       Jun 30
    想要实时数据的,虽然知道有点异想天开了
    ykk
        42
    ykk  
       Jun 30
    etf lof 都有吗
    Valid
        43
    Valid  
       Jun 30
    @goudanli 众筹个彭博
    littlepanic72
        44
    littlepanic72  
       Jun 30
    @123128xyz 能详细说下交易吗~~
    zhouzoki
        45
    zhouzoki  
       Jun 30
    这是做啥用的。量化吗
    123128xyz
        46
    123128xyz  
    OP
       Jun 30
    @littlepanic72 实时 websocket 推送 + 交易 api 才会用到。本身也是自己在用,不限订阅数+可订阅 5000 只+0 延迟推流+自带交易 api+本地版+单文件打开即用。
    123128xyz
        47
    123128xyz  
    OP
       23h 56m ago
    @goudanli 下一个版本 free-stockhq.实时+交易
    ala2008
        48
    ala2008  
       22h 45m ago
    每分钟更新?
    syyyyy
        49
    syyyyy  
       13h 14m ago via iPhone
    直接咸鱼买 api ,让 ai 调取的同时还能核对,也不贵
    kingmo888
        50
    kingmo888  
       12h 27m ago
    前复权数据是有问题的(某些投研逻辑,不是数据质量问题),标准通用做法是价格的原始数据列+除权因子列,
    底层做法是原始数据列+除权信息,计算工作放在本地,弄个脚本自动按需复权。
    lucifer8900
        51
    lucifer8900  
       11h 26m ago
    好人大富大贵,一生平安
    zeldalyc
        52
    zeldalyc  
       10h 57m ago
    日更的话。tdx 官网有每天数据下载,我也是自己下载处理的
    jimrok
        53
    jimrok  
       9h 24m ago
    @goudanli mootdx 模块可以
    jimrok
        54
    jimrok  
       9h 22m ago
    个人量化,可以问券商,大概能接个人客户的平台是 qmt ,资金要求 5 万起。没那么多资金的人还是研究 ETF 吧。
    goudanli
        55
    goudanli  
       9h 2m ago
    @123128xyz 好人一生平安,坐等坐等
    ykrank
        56
    ykrank  
       7h 53m ago
    自动更新有点厉害,有财务数据吗
    123128xyz
        57
    123128xyz  
    OP
       6h 51m ago via Android
    @kingmo888 前复权数据是有问题的,所以原始已经改成不复权了,自动复权。
    123128xyz
        58
    123128xyz  
    OP
       6h 49m ago via Android
    @zeldalyc 这个是自带 api ,sdk+自带分钟 k+自动复权,自带更新
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3078 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 208ms · UTC 14:45 · PVG 22:45 · LAX 07:45 · JFK 10:45
    ♥ Do have faith in what you're doing.