日线行情
获取日K线行情, 支持区间与前/后复权, 一次可取全部历史(最多10000根); 另支持 date 全市场单日截面
接口说明
获取单只证券的日K线序列:开高低收、成交量额、换手率,可选前/后复权,适合趋势分析、回测取价、绘制K线图。涨跌幅、均线、MACD 等技术指标请基于返回的 OHLC 在本地计算,口径更可控。
全历史一次可取:单次最多 10000 根(约40年)
date= 全市场单日截面(~8700行一次到位),每日盘后落库专用
一批股票(≤100码)走 day_batch;周/月/年线不在API面,SDK pro.period_kline() 本地聚合(先复权再聚合保证正确)
快速调用
同一调用的三种等价写法,按接入习惯任选其一,复制即可运行。
单票区间历史(前复权)
import top369 as gp
pro = gp.pro_api("sk-xxxxxxxxxxxx") # 安装: pip install top369
df = pro.day_kline(code="sz000001",
start_date="2024-01-01", adjust="qfq")
print(df.tail())
最新250根(截尾)
import top369 as gp
pro = gp.pro_api("sk-xxxxxxxxxxxx") # 安装: pip install top369
df = pro.day_kline(code="000001", limit=250)
全市场单日截面(调度落库)
import top369 as gp
pro = gp.pro_api("sk-xxxxxxxxxxxx") # 安装: pip install top369
df = pro.day_kline(date="2026-10-09") # ~8700行一次拉全市场当日行情
print(df.head())
批量取股票池(一次HTTP往返)
import top369 as gp
pro = gp.pro_api("sk-xxxxxxxxxxxx") # 安装: pip install top369
df = pro.day_batch(codes="sz000911,sh600519",
start_date="2026-09-01", limit=10)
print(df.groupby("code").size())
周/月/年线(SDK本地聚合, 复权次序保证正确)
import top369 as gp
pro = gp.pro_api("sk-xxxxxxxxxxxx") # 安装: pip install top369
w = pro.period_kline("sz000911", freq="weekly",
adjust="qfq", limit=52) # 最近52周
print(w.tail()) # open=首日/high=最高/low=最低/close=末日, 量额加总
单票区间历史(前复权)
import requests
API = "https://api.369.top/api"
KEY = "sk-xxxxxxxxxxxx"
r = requests.get(f"{API}/a/stock/day_kline",
headers={"X-API-Key": KEY},
params={"code": "sz000001", "start_date": "2024-01-01",
"adjust": "qfq"},
timeout=30)
r.raise_for_status()
data = r.json()["data"] # 信封解包, 本接口数据在 data["rows"]
最新250根(截尾)
import requests
API = "https://api.369.top/api"
KEY = "sk-xxxxxxxxxxxx"
r = requests.get(f"{API}/a/stock/day_kline",
headers={"X-API-Key": KEY},
params={"code": "000001", "limit": 250},
timeout=30)
r.raise_for_status()
data = r.json()["data"] # 信封解包, 本接口数据在 data["rows"]
全市场单日截面(调度落库)
import requests
API = "https://api.369.top/api"
KEY = "sk-xxxxxxxxxxxx"
r = requests.get(f"{API}/a/stock/day_kline",
headers={"X-API-Key": KEY},
params={"date": "2026-10-09"},
timeout=30)
r.raise_for_status()
data = r.json()["data"] # 信封解包, 本接口数据在 data["rows"]
批量取股票池(一次HTTP往返)
import requests
API = "https://api.369.top/api"
KEY = "sk-xxxxxxxxxxxx"
r = requests.get(f"{API}/a/stock/day_kline",
headers={"X-API-Key": KEY},
params={"codes": "sz000911,sh600519", "start_date": "2026-09-01",
"limit": 10},
timeout=30)
r.raise_for_status()
data = r.json()["data"] # 信封解包, 本接口数据在 data["rows"]
单票区间历史(前复权)
curl -H "X-API-Key: sk-xxxxxxxxxxxx" \ "https://api.369.top/api/a/stock/day_kline?code=sz000001&start_date=2024-01-01&adjust=qfq"
最新250根(截尾)
curl -H "X-API-Key: sk-xxxxxxxxxxxx" \ "https://api.369.top/api/a/stock/day_kline?code=000001&limit=250"
全市场单日截面(调度落库)
curl -H "X-API-Key: sk-xxxxxxxxxxxx" \ "https://api.369.top/api/a/stock/day_kline?date=2026-10-09"
批量取股票池(一次HTTP往返)
curl -H "X-API-Key: sk-xxxxxxxxxxxx" \ "https://api.369.top/api/a/stock/day_kline?codes=sz000911%2Csh600519&start_date=2026-09-01&limit=10"
输入参数
| 名称 | 类型 | 必选 | 描述 |
|---|---|---|---|
| code | str | False | 证券代码(见代码规范); 与date二选一 |
| date | str | False | 单日截面模式: 不传code时传date=全市场当日行情(~8700行); 不支持adjust/limit/include_today |
| start_date | str | False | 起始日期 YYYY-MM-DD, 缺省全历史 |
| end_date | str | False | 结束日期 YYYY-MM-DD, 缺省最新 |
| adjust | str | False | 复权: qfq前复权 / hfq后复权, 缺省不复权 |
| limit | int | False | 响应截尾: 只返回区间内最新N根(≤10000) |
| include_today | bool | False | 盘中追加当日实时行(is_realtime标记), 实盘冲高基准用; 收盘回填后以库为准; 复权序列不支持 |
返回字段
| 名称 | 类型 | 描述 |
|---|---|---|
| code | str | 证券代码(带市场前缀) |
| name | str | 证券名称 |
| adjust | str | 本次请求生效的复权方式: none/qfq/hfq |
| rows[].date | str | 交易日期 YYYY-MM-DD, 升序; date截面模式每行额外带 code 字段(8700行逐一识别) |
| rows[].open/high/low/close | float | 开高低收(元), 复权后为复权价 |
| rows[].volume | int | 成交量(股) — 见单位约定 |
| rows[].amount | float | 成交额(元) |
| rows[].turnover | float | 换手率(%) |
返回数据样例
{
"code": "sz000911",
"name": "*ST广糖",
"adjust": "none",
"rows": [
{
"date": "2026-09-30",
"open": 5.07,
"high": 5.4,
"low": 5.03,
"close": 5.4,
"volume": 11133100,
"amount": 58329028.0,
"turnover": 2.78
},
{
"date": "2026-10-08",
"open": 5.62,
"high": 5.89,
"low": 5.51,
"close": 5.65,
"volume": 15484500,
"amount": 88080064.0,
"turnover": 3.87
},
{
"date": "2026-10-09",
"open": 5.65,
"high": 6.08,
"low": 5.48,
"close": 6.06,
"volume": 21124400,
"amount": 123048376.0,
"turnover": 5.28
}
]
}
最佳实践:每日盘后全市场落库用 date 截面: 一次调用拉全市场当日行, 5400次逐码调用变成1次; 一批研究标的(≤100码)用 day_batch (按码数计点); 单票全历史仍按 code 一次取完(≤10000根)。