企业微信

为什么你需要一个tushare token

做股票或者期货的程序化交易,第一道坎就是数据从哪来。手动下载Excel表格,每天重复劳动,盘中根本来不及。tushare这类开源数据接口就是给普通人准备的省钱方案。它把股票行情、期货合约、财务指标、宏观经济数据打包成标准格式,你写几行代码就能拿到。

tushare的调用方式很简单,核心就是一个叫token的字符串。这个字符串相当于你的身份证,每次向服务器要数据,服务器先看token对不对。没有token,接口直接拒绝。

tushare token到底长什么样

token是一串由数字和小写字母组成的乱码,长度大概32位。比方说a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6这种形态。它跟你的账号绑定,一个账号只有一个有效token。

tushare token怎么获取?股票期货量化数据接口的入门第一关

有人把token直接写在代码里上传到GitHub,结果被人盗用刷流量,账号被封。token不能给别人,更不能公开。

获取token的具体步骤

第一步 打开tushare官网注册账号

浏览器访问tushare.pro。点击右上角注册,用手机号或者邮箱都行。注册过程跟普通网站没区别,收个验证码就完事。

第二步 登录后进入个人中心

登录成功,鼠标移到右上角头像,下拉菜单里找“个人中心”。点进去,页面左侧有一列菜单,找到“接口TOKEN”这个选项。

第三步 复制你的token

点击“接口TOKEN”,右边会显示一串乱码,那就是你的token。旁边有个复制按钮,点一下就能复制到剪贴板。

如果token显示为空,说明账号还没激活数据权限。tushare从2020年开始改版,新注册用户需要积累积分才能调用大部分接口。获取积分的方式很简单,在“个人中心”里找到“积分获取”,看广告、填问卷、邀请好友都能加分。120积分就能调用日线行情,500积分以上能调期货和分钟数据。

第四步 把token放进代码

拿到token后,在你的Python脚本里这样写:


import tushare as ts

ts.set_token('你的token字符串')

pro = ts.pro_api()

# 获取股票日线数据

df = pro.daily(ts_code='000001.SZ', start_date='20240101', end_date='20241231')

print(df.head())

set_token只需要执行一次,之后同一进程里所有接口调用都会自动带上这个token。

获取token时容易踩的坑

积分不够导致接口报错

拿到token不等于万能。调用pro.daily()需要120积分,调用pro.fut_daily()需要2000积分。积分不够的时候,接口返回的不是数据,而是一段错误提示,写着“抱歉,您没有访问该接口的权限”。

解决办法就是做积分任务。每天签到加5分,看一个广告加10分,邀请一个新用户加50分。急用的话,充200块钱直接给5000积分,相当于买一年期货数据权限。

token泄露后的补救

token不小心发到群里或者提交到公开仓库,赶紧回个人中心重置token。旧token立刻失效,新token重新生成。重置不影响账号积分和历史数据。

不同版本接口的token通用吗

tushare有旧版ts.get_k_data()和新版pro_api()。两者共用同一个token。旧版接口逐渐下线,新代码直接用pro_api()。

没有token也能拿数据吗

tushare早期版本不需要token,直接ts.get_hist_data('600000')就能跑。现在不行了,服务器强制校验token。网上有些教程说“改个参数绕过token”,全是骗人的。老老实实注册、攒积分、复制token,这是唯一正路。

期货数据对token的特殊要求

股票日线数据门槛低,120积分就能用。期货数据不一样。pro.fut_daily()需要2000积分,pro.fut_mapping()需要5000积分。想拿主力合约连续数据,还得用pro.fut_wsr(),积分要求更高。

做期货量化的人,建议直接充值。200块钱换5000积分,够用一年。比买Wind或者同花顺数据接口便宜太多,那些一年收费几万块。

token之外你还得知道的事

tushare只是数据搬运工,不保证数据绝对准确。期货夜盘数据偶尔延迟,股票除权除息处理需要自己写复权逻辑。拿到token只是第一步,真正做策略还得处理缺失值、对齐时间戳、过滤涨跌停。

有人拿到token后兴奋地回测螺纹钢主力合约,发现2016年之前的分钟数据全是空的。tushare的分钟数据从2019年才开始覆盖,更早的数据得去别的渠道找。

一个完整的token使用流程

  1. 注册tushare账号

  2. 登录后看广告攒到120积分(股票)或2000积分(期货)

  3. 复制个人中心里的token字符串

  4. 在Python里ts.set_token('你的token')

  5. 调用pro.daily()或pro.fut_daily()获取数据

  6. 把数据存成CSV或者SQLite,供回测引擎使用

整个流程走下来,新手大概花20分钟。最难的部分不是拿token,是理解积分规则和接口权限。tushare的官方文档写得很细,每个接口都标注了所需积分。动手之前先翻文档,能省掉大量试错时间。

token就像一把钥匙,拿到手不意味着你会开车。股票期货量化交易的核心是策略逻辑和风险管理,数据只是燃料。不过没有燃料,再好的发动机也转不起来。先把token搞到手,再一步步搭建你的交易系统。