迁移总览

agushuju Python SDK 从设计之初就对齐 tushare pro 的使用习惯:同样的 pro_api(token) 入口、同样的「方法名即接口」调用方式,v0.2.0 起查询参数也自动兼容——大多数存量代码只需改两行(安装包名与 token),其余原样可跑。

第一步:替换安装与导入(约 1 分钟)

pip uninstall tushare
pip install agushuju   # 或 pip install -e sdk/python(仓库安装)
# import tushare as ts
import agushuju as agu

第二步:替换入口与 token(约 1 分钟)

# pro = ts.pro_api('你的tushare token')
pro = agu.pro_api('你的爱股数据token')   # https://www.agushuju.com/userapikey

第三步:检查方法名(约 1 分钟)

stock_ 前缀的接口自动省略前缀,与 tushare 一致:

df = pro.daily(ts_code='000001.SZ', start_date='20260101')   # 与 tushare 写法相同
df = pro.trade_cal(exchange='SSE')
df = pro.fina_indicator(ts_code='000001.SZ')

指数 / 基金 / 期货等非 stock_ 前缀接口用端点全名:pro.index_daily()pro.fund_daily()pro.futures_daily()。任意新端点也可经 pro.query('端点path', ...) 直达,无需 SDK 发版。

参数自动兼容(v0.2.0 起,无需改代码)

tushare 写法SDK 自动翻译为
ts_code='000001.SZ'stock_code(指数/基金/期货端点分别路由为 index_code / fund_code / futures_code)
start_date='20260101'端点主日期列的 列名_start(如 trade_date_start),日期值自动转 YYYY-MM-DD
end_date='20260901'同上,映射为 列名_end

平台原生参数(stock_code / trade_date_start 等)同样支持,与方言可混用;同时显式传入时原生参数优先。唯一需要手动调整的是 period(财务指标报告期),请改写为 end_date_start='2026-06-30', end_date_end='2026-06-30'

第四步:验证(约 2 分钟)

df = pro.daily(ts_code='000001.SZ', start_date='20260101', end_date='20260901')
print(df.head())          # pandas DataFrame,与 tushare 返回形态一致
print(df.attrs['count'])  # 符合条件的数据总数(分页用)

免费额度为每接口 200 次/日(定价页);报错码 401=token 无效、402=余额不足、429=触发限流,SDK 均以中文 ApiError 抛出,网络错误与 5xx 自动重试(401/402/429 不重试)。

常见问题

查询返回空? 多半是参数不在端点 schema 内(服务端会静默忽略未知参数):请到接口文档核对参数名,或升级 SDK 至 v0.2.0 以上获得方言自动翻译。需要高频/批量? 分页参数 limit(最大 10000)与 offset 配合 df.attrs['count'] 循环拉取。