AShareHub API 文档
AShareHub 提供中国 A 股市场数据的 RESTful API,共 29 个数据接口,覆盖沪深两市 5000+ 只股票。 提供日线行情、基本面指标、复权因子、技术因子、涨跌停统计、融资融券、大宗交易、龙虎榜、股东数据、概念板块、北向资金、个股资金流、北向持股、筹码分布、汇率、指数、指数权重、行业分类、交易日历、财务报表、业绩预告、业绩快报和分红送股等数据。
https://asharehub.com
版本: v1
格式: JSON
快速上手
curl -H "X-API-Key: ash_your_key_here" \
"https://asharehub.com/v1/market/daily?ts_code=000001.SZ&limit=5"
pip install asharehub
from asharehub import AShareHub
client = AShareHub(api_key="ash_your_key_here")
df = client.market_daily(ts_code="000001.SZ", limit=5)
print(df)
认证方式
所有数据接口需要通过 X-API-Key 请求头传递 API Key 进行认证。
curl -H "X-API-Key: ash_your_key_here" https://asharehub.com/v1/market/daily
速率限制
每个 API Key 按天计算请求次数。超出限制时返回 429 Too Many Requests。
| 套餐 | 价格 | 每日限额 |
|---|---|---|
| Free | $0 | 100 次 |
| Pro | $49/月 | 10,000 次 |
| Business | $99/月 | 50,000 次 |
日线行情
A 股每日 OHLCV 价格数据。
GET /v1/market/daily
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ts_code | string | 否 | 股票代码,如 000001.SZ |
| start_date | string | 否 | 开始日期(YYYY-MM-DD) |
| end_date | string | 否 | 结束日期(YYYY-MM-DD) |
| limit | int | 否 | 最大行数(默认 100,最大 5000) |
| offset | int | 否 | ��页偏移量(默认 0) |
返回字段
| 字段 | 类型 | 说明 |
|---|---|---|
| ts_code | string | 股票代码 |
| trade_date | string | 交易日期 |
| open / high / low / close | number | 开盘价 / 最高价 / 最低价 / 收盘价 |
| pre_close | number | 昨收价 |
| change / pct_chg | number | 涨跌额 / 涨跌幅(%) |
| vol | number | ��交量(手) |
| amount | number | 成交额(千元) |
每日指标
每日基本面指标,包括市盈率、市净率、换手率、总市值等。
GET /v1/market/fundamentals
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
关键返回字段
| 字段 | 说明 |
|---|---|
| pe / pe_ttm | 市盈率 / 滚动市盈率 |
| pb | 市净率 |
| turnover_rate / turnover_rate_f | 换手率 / 自由流通换手率 |
| total_mv / circ_mv | 总市值 / 流通市值(万元) |
| ps / ps_ttm | 市销率 / 滚动市销率 |
融资融券
每日融资融券明细数据。rzye=融资余额, rqye=融券余额。
GET /v1/market/margin
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ts_code | string | 否 | 股票代码,如 000001.SZ |
| start_date | string | 否 | 开始日期(YYYY-MM-DD) |
| end_date | string | 否 | 结束日期(YYYY-MM-DD) |
| limit | int | 否 | 最大行数(默认 100,最大 5000) |
| offset | int | 否 | 分页偏移量(默认 0) |
返回字段
| 字段 | 说明 |
|---|---|
| trade_date | 交易日期 |
| ts_code | 股票代码 |
| name | 股票名称 |
| rzye | 融资余额 |
| rqye | 融券余额 |
| rzmre | 融资买入额 |
| rqyl | 融券卖出量 |
| rzche | 融资偿还额 |
| rqchl | 融券偿还量 |
| rqmcl | 融券卖出量 |
| rzrqye | 融资融券余额 |
大宗交易
大宗交易(场外协议成交)数据,含买卖方营业部信息。
GET /v1/market/block-trade
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 股票代码 |
| trade_date | 交易日期 |
| price | 成交价 |
| vol | 成交量(万股) |
| amount | 成交额(万元) |
| buyer | 买方营业部 |
| seller | 卖方营业部 |
龙虎榜
龙虎榜数据 — 因异常波动触发交易所信息披露的股票。
GET /v1/market/top-list
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
返回字段
| 字段 | 说明 |
|---|---|
| trade_date | 交易日期 |
| ts_code | 股票代码 |
| name | 股票名称 |
| close | 收盘价 |
| pct_change | 涨跌幅(%) |
| turnover_rate | 换手率(%) |
| amount | 成交额 |
| l_sell | 机构卖出额 |
| l_buy | 机构买入额 |
| l_amount | 机构成交总额 |
股东增减持
重要股东及高管增减持数据。
GET /v1/market/holder-trade
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 股票代码 |
| ann_date | 公告日期 |
| holder_name | 股东名称 |
| holder_type | 股东类型(G=高管 P=个人 C=公司) |
| in_de | 增减持方向(IN=增持 DE=减持) |
| change_vol | 变动股数 |
| change_ratio | 占总股本比例 |
| after_share | 变动后持股 |
| after_ratio | 变动后占比 |
| avg_price | 成交均价 |
| total_share | 公司总股本 |
| begin_date | 变动起始日 |
| close_date | 变动截止日 |
概念板块
概念板块指数数据(AI、新能源、半导体等主题)。
GET /v1/market/concepts
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 板块代码 |
| trade_date | 交易日期 |
| name | 板块名称 |
| leading | 领涨股名称 |
| leading_code | 领涨股代码 |
| pct_change | 涨跌幅(%) |
| leading_pct | 领涨股涨幅 |
| total_mv | 总市值(万元) |
| turnover_rate | 换手率(%) |
| up_num / down_num | 上涨家数 / 下跌家数 |
| idx_type | 指数类型 |
| level | 级别 |
概念成分
概念板块成分股。
GET /v1/market/concept-members
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ts_code | string | 否 | 板块代码 |
| con_code | string | 否 | 股票代码 |
| start_date | string | 否 | 开始日期(YYYY-MM-DD) |
| end_date | string | 否 | 结束日期(YYYY-MM-DD) |
| limit | int | 否 | 最大行数(默认 100,最大 5000) |
| offset | int | 否 | 分页偏移量(默认 0) |
返回字段
| 字段 | 说明 |
|---|---|
| trade_date | 交易日期 |
| ts_code | 板块代码 |
| con_code | 成分股代码 |
| name | 股票名称 |
复权因子
每日复权因子,用于计算前复权/后复权价格。在分红送股等事件后进行历史价格分析的必备数据。
GET /v1/market/adj-factor
请求参数
ts_code, start_date, end_date, limit(最大 5000), offset
返回字段
| 字段 | 类型 | 说明 |
|---|---|---|
| ts_code | string | 股票代码 |
| trade_date | string | 交易日期 |
| adj_factor | number | 复权因子 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/market/adj-factor?ts_code=000001.SZ&start_date=2024-01-01&limit=5"
技术因子
每日技术指标(MACD、KDJ、RSI、布林带、CCI)及前复权/后复权价格。
GET /v1/market/technical-factors
请求参数
ts_code, start_date, end_date, limit(最大 5000), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| close_qfq / close_hfq | 前复权 / 后复权收盘价 |
| macd_dif, macd_dea, macd | MACD 指标(DIF、DEA、柱状图) |
| kdj_k, kdj_d, kdj_j | KDJ 随机指标 |
| rsi_6, rsi_12, rsi_24 | RSI 相对强弱指标(6/12/24 周期) |
| boll_upper, boll_mid, boll_lower | 布林带 |
| cci | 顺势指标 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/market/technical-factors?ts_code=000001.SZ&start_date=2024-01-01&limit=5"
涨跌停统计
每日涨停、跌停股票统计。A 股涨跌幅限制为 ±10%(创业板/科创板 ±20%)。
GET /v1/market/limit-list
请求参数
ts_code, start_date, end_date, limit_type(U=涨停, D=跌停, Z=炸板), limit(最大 5000), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| ts_code / name | 股票代码和名称 |
| close / pct_chg | 收盘价和涨跌幅 |
| first_time / last_time | 首次/末次封板时间 |
| open_times | 开板次数 |
| limit_times | 连板天数 |
| limit | 类型:U=涨停, D=跌停, Z=炸板 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/market/limit-list?limit_type=U&start_date=2024-03-01&limit=10"
北向资金
沪深港通每日资金流向,北向资金是外资投资 A 股的重要指标。
GET /v1/flows/northbound
参数:start_date, end_date, limit, offset
返回字段
| 字段 | 说明 |
|---|---|
| trade_date | 交易日期 |
| north_money | 北向资金净买入(百万元) |
| south_money | 南向资金净买入(百万元) |
| ggt_ss / ggt_sz | 沪股通 / 深股通北向资金(百万元) |
个股资金流
个股资金流向,按订单大小分类。小单(<5万)、中单(5-20万)、大单(20-100万)、特大单(>=100万)。
GET /v1/flows/moneyflow
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 股票代码 |
| trade_date | 交易日期 |
| buy_sm_vol / buy_sm_amount | 小单买入量 / 金额 |
| sell_sm_vol / sell_sm_amount | 小单卖出量 / 金额 |
| buy_md_vol / buy_md_amount | 中单买入量 / 金额 |
| sell_md_vol / sell_md_amount | 中单卖出量 / 金额 |
| buy_lg_vol / buy_lg_amount | 大单买入量 / 金额 |
| sell_lg_vol / sell_lg_amount | 大单卖出量 / 金额 |
| buy_elg_vol / buy_elg_amount | 特大单买入量 / 金额 |
| sell_elg_vol / sell_elg_amount | 特大单卖出量 / 金额 |
| net_mf_vol | 净流入量 |
| net_mf_amount | 净流入额(万元) |
北向持股
北向资金(外资)个股持仓明细。
GET /v1/flows/northbound-holdings
参数与日线行情相同(ts_code, start_date, end_date, limit, offset)。
返回字段
| 字段 | 说明 |
|---|---|
| trade_date | 交易日期 |
| ts_code | 股票代码 |
| name | 股票名称 |
| vol | 持股数量 |
| ratio | 占总股本比例(%) |
| exchange | 交易所 |
财务指标
季度财务指标,包含 ROE、毛利率、净利率、EPS 等 50+ 项指标。
GET /v1/financials/indicators
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ts_code | string | 是 | 股票代码,如 000001.SZ |
| start_date | string | 否 | 开始日期(YYYY-MM-DD) |
| end_date | string | 否 | 结束日期(YYYY-MM-DD) |
| limit | int | 否 | 最大行数(默认 100,最大 1000) |
关键返回字段
| 字段 | 说明 |
|---|---|
| end_date / ann_date | 报告期 / 公告日期 |
| roe / roe_dt | 净资产收益率 / 扣非 ROE |
| grossprofit_margin | 毛利率(%) |
| netprofit_margin | 净利率(%) |
| eps / bps | 每股收益 / 每股净资产 |
| current_ratio / quick_ratio | 流动比率 / 速动比率 |
利润表
季度/年度利润表数据。金额单位为人民币元。
GET /v1/financials/income
请求参数
ts_code, start_date, end_date(报告期), limit(最大 200), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| revenue / total_revenue | 营业收入 / 营业总收入 |
| operate_profit / total_profit | 营业利润 / 利润总额 |
| n_income / n_income_attr_p | 净利润 / 归属母公司净利润 |
| basic_eps / diluted_eps | 基本每股收益 / 稀释每股收益 |
| sell_exp / admin_exp / fin_exp / rd_exp | 销售/管理/财务/研发费用 |
| ebit / ebitda | 息税前利润 / 息税折旧摊销前利润 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/financials/income?ts_code=000001.SZ&start_date=2023-01-01&limit=4"
资产负债表
季度/年度资产负债表数据。金额单位为人民币元。
GET /v1/financials/balance-sheet
请求参数
ts_code, start_date, end_date(报告期), limit(最大 200), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| total_assets | 总资产 |
| total_liab | 总负债 |
| total_hldr_eqy_exc_min_int | 归属母公司股东权益 |
| money_cap | 货币资金 |
| accounts_receiv / inventories | 应收账款 / 存货 |
| goodwill / intan_assets | 商誉 / 无形资产 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/financials/balance-sheet?ts_code=000001.SZ&limit=4"
现金流量表
季度/年度现金流量表。包含经营活动、投资活动和筹资活动三部分。
GET /v1/financials/cash-flow
请求参数
ts_code, start_date, end_date(报告期), limit(最大 200), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| n_cashflow_act | 经营活动现金流量净额 |
| n_cashflow_inv_act | 投资活动现金流量净额 |
| n_cash_flows_fnc_act | 筹资活动现金流量净额 |
| free_cashflow | 自由现金流 |
| c_cash_equ_end_period | 期末现金及现金等价物余额 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/financials/cash-flow?ts_code=600519.SH&limit=4"
业绩预告
业绩预告数据 — 交易所规则要求的提前业绩预告披露。类型包括预增、预减、扭亏、首亏、续亏、略增、略减等。
GET /v1/financials/forecast
请求参数
ts_code, start_date, end_date(公告日期), limit(最大 1000), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| type | 预告类型(预增/预减/扭亏/首亏/续亏/略增/略减) |
| p_change_min / p_change_max | 净利润变动幅度范围(%) |
| net_profit_min / net_profit_max | 预计净利润范围(万元) |
| summary / change_reason | 业绩摘要和变动原因 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/financials/forecast?ts_code=000001.SZ&limit=5"
业绩快报
业绩快报数据 — 在正式财务报告发布前公布的初步业绩数据。
GET /v1/financials/express
请求参数
ts_code, start_date, end_date(公告日期), limit(最大 1000), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| revenue / n_income | 营业收入 / 净利润(元) |
| diluted_eps / diluted_roe | 稀释每股收益 / 稀释净资产收益率 |
| yoy_net_profit | 净利润同比增长(%) |
| perf_summary | 业绩摘要 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/financials/express?ts_code=000001.SZ&limit=5"
分红送股
现金分红和股票分红数据。包含除权除息日、登记日和派发日。
GET /v1/shareholders/dividend
请求参数
ts_code, start_date, end_date(公告日期), limit(最大 1000), offset
关键返回字段
| 字段 | 说明 |
|---|---|
| cash_div | 每股现金分红(税前,元) |
| stk_div | 每股送转股合计 |
| ex_date | 除权除息日 |
| record_date / pay_date | 股权登记日 / 派息日 |
| div_proc | 进度(预案/实施) |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/shareholders/dividend?ts_code=600519.SH&limit=10"
指数日线
主要中国市场指数的日线数据。
GET /v1/indices/daily
参数:ts_code(默认 000001.SH 上证综指), start_date, end_date, limit, offset
常用指数代码
| 代码 | 名称 |
|---|---|
| 000001.SH | 上证综指 |
| 000300.SH | 沪深300 |
| 399001.SZ | 深证成指 |
| 399006.SZ | 创业板指 |
| 000016.SH | 上证50 |
指数权重
主要指数的成分股权重数据。可用于跟踪指数调仓和被动基金资金流向。
GET /v1/indices/index-weight
请求参数
index_code(如 399300.SZ), start_date, end_date, limit(最大 5000), offset
返回字段
| 字段 | 类型 | 说明 |
|---|---|---|
| index_code | string | 指数代码 |
| trade_date | string | 生效日期 |
| con_code | string | 成分股代码 |
| weight | number | 在指数中的权重(%) |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/indices/index-weight?index_code=399300.SZ&limit=10"
筹码分布
筹码分布和胜率数据,展示各价位持仓成本分布和获利比例。
GET /v1/chips/distribution
参数:ts_code(建议必填), start_date, end_date, limit, offset
关键返回字段
| 字段 | 说明 |
|---|---|
| winner_rate | 获利比例 |
| cost_5pct / cost_15pct / cost_50pct / cost_85pct / cost_95pct | 5%/15%/50%/85%/95% 成本分位 |
| weight_avg | 加权平均成本 |
汇率数据
外汇日线行情,默认返回美元兑离岸人民币(USDCNH),跨境投资组合估值必备。
GET /v1/fx/daily
参数:ts_code(默认 USDCNH.FXCM), start_date, end_date, limit, offset
关键返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 外汇对代码 |
| bid_open / bid_close / bid_high / bid_low | 买入价 开/收/高/低 |
| ask_open / ask_close / ask_high / ask_low | 卖出价 开/收/高/低 |
股票列表
A 股股票基本信息列表。
GET /v1/reference/stocks
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ts_code | string | 否 | 股票代码,如 000001.SZ |
| limit | int | 否 | 最大行数(默认 100,最大 5000) |
| offset | int | 否 | 分页偏移量(默认 0) |
返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 股票代码 |
| symbol | 股票代码(纯数字) |
| name | 股票名称 |
| area | 地域 |
| industry | 行业 |
| fullname | 公司全称 |
| enname | 英文名 |
| cnspell | 拼音缩写 |
| market | 市场 |
| exchange | 交易所 |
| curr_type | 币种 |
| list_status | 上市状态(L=上市 D=退市 P=暂停) |
| list_date | 上市日期 |
| delist_date | 退市日期 |
| is_hs | 沪深港通标的(H=沪股通 S=深股通 N=否) |
行业分类
申万行业分类(SW2021标准),三级分类体系。
GET /v1/reference/industries
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ts_code | string | 否 | 股票代码,如 000001.SZ |
| limit | int | 否 | 最大行数(默认 100,最大 5000) |
| offset | int | 否 | 分页偏移量(默认 0) |
返回字段
| 字段 | 说明 |
|---|---|
| ts_code | 股票代码 |
| name | 股票名称 |
| l1_code | 一级行业代码 |
| l1_name | 一级行业名称(共31个) |
| l2_code | 二级行业代码 |
| l2_name | 二级行业名称 |
| l3_code | 三级行业代码 |
| l3_name | 三级行业名称 |
交易日历
上海证券交易所(SSE)和深圳证券交易所(SZSE)的交易日历。可用于定时数据拉取和节假日处理。
GET /v1/reference/trade-calendar
请求参数
exchange(SSE/SZSE), start_date, end_date, is_open(1=交易日, 0=休市), limit(最大 5000), offset
返回字段
| 字段 | 类型 | 说明 |
|---|---|---|
| exchange | string | 交易所代码(SSE / SZSE) |
| cal_date | string | 日历日期 |
| is_open | int | 1=交易日, 0=休市 |
| pretrade_date | string | 上一个交易日 |
curl -H "X-API-Key: YOUR_KEY" \
"https://asharehub.com/v1/reference/trade-calendar?exchange=SSE&is_open=1&start_date=2024-01-01&limit=20"
Python SDK
官方 Python SDK 封装了所有 API 接口,返回 pandas DataFrame。
安装
pip install asharehub
需要 Python 3.8+,依赖:httpx、pydantic。
使用示例
初始化客户端:
from asharehub import AShareHub
client = AShareHub(api_key="ash_your_key_here")
获取日线行情:
df = client.market_daily(ts_code="000001.SZ", start_date="2024-01-01", end_date="2024-03-31")
print(df.head())
获取北向资金:
flows = client.northbound_flows(start_date="2024-01-01", end_date="2024-01-31")
print(flows[["trade_date", "north_money"]].head())
获取财务指标:
fina = client.financial_indicators(ts_code="000001.SZ")
print(fina[["end_date", "roe", "grossprofit_margin", "eps"]].head())
全部方法一览:
| 方法 | 接口 | 说明 |
|---|---|---|
| market_daily() | /v1/market/daily | 日线行情 |
| fundamentals() | /v1/market/fundamentals | 每日指标 |
| northbound_flows() | /v1/flows/northbound | 北向资金 |
| chip_distribution() | /v1/chips/distribution | 筹码分布 |
| fx_daily() | /v1/fx/daily | 外汇行情 |
| index_daily() | /v1/indices/daily | 指数行情 |
| financial_indicators() | /v1/financials/indicators | 财务指标 |