数据字典

QuantDB 涵盖 A 股量化研究所需的全部数据字段。以下按分类说明每个字段的含义、类型、单位和典型用法。

提示:字段名后标注 可查询 表示可通过元数据接口查询;下载 表示可通过 Parquet 切片下载获取。业务数据(K 线 / Tick / 财务)的查询即下载 Parquet 切片,按下载流量计费。

股票代码格式

QuantDB 统一使用 {6位数字}.{市场后缀} 格式:

市场后缀示例
上海证券交易所.SH600000.SH, 688000.SH
深圳证券交易所.SZ000001.SZ, 300001.SZ
北京证券交易所.BJ830000.BJ, 430000.BJ

复权类型说明

类型API 参数说明适用场景
不复权unadjusted原始成交价,含除权除息缺口分析真实交易成本、分红策略
前复权forward以最新价格为基准,历史价格向下调整回测、技术分析(最常用)
后复权backward以历史价格为基准,最新价格向上调整长期收益计算、累计涨幅
注意:前复权数据会随时间推移而变化(新除权事件导致历史数据调整),回测结果需用对应时点的复权数据重新验证。

单位说明(后端已做全量归一化)

数据类型归一化后单位说明
价格(open/high/low/close/last_price)元(人民币)精确到分/厘
成交量(volume)1 手自动转换为 100 股
成交额(amount)万元自动换算为万元
市值total_mv / float_mv
股本total_capital / circulating_capital
财务数据除特别标注外

1. 行情 K 线数据

日线数据包含三种复权类型(前复权、后复权、不复权),以及 1 分钟/5 分钟分时数据。

1.1 日线字段(daily_unadjusted / daily_forward / daily_backward)

字段类型说明示例
trade_datedatetime交易日日期(北京时间 00:00:00)2026-07-22
openfloat开盘价(元)1500.00
highfloat最高价(元)1520.50
lowfloat最低价(元)1495.00
closefloat收盘价(元)1510.00
volumeint成交量(股,按手×100标准归一化)3200000
amountfloat成交额(万元)48320.00

用法示例

# 查询前复权日线
df = client.query_kline("600519.SH", adj_type="forward",
    start_date="2026-01-01", end_date="2026-07-22")

# 计算 20 日均线
df["ma20"] = df["close"].rolling(20).mean()

# 计算日收益率
df["return"] = df["close"].pct_change()

# 筛选涨停股(涨幅 >= 9.9%)
limit_up = df[df["close"] / df["close"].shift(1) - 1 >= 0.099]

1.2 分钟线字段(min1_kline / min5_kline)

分钟线字段与日线相同,但 trade_date 列包含具体时间(HH:MM:SS)。仅提供不复权数据,复权需自行用除权因子合成。后端已做单位归一化:volume 为股,amount 为万元。

字段类型说明
trade_datedatetime交易时间(YYYY-MM-DD HH:MM:SS)
open / high / low / closefloat同日线
volumeint成交量(股,已归一化)
amountfloat成交额(万元,已归一化)

1.3 指数日线字段(index_daily)

指数行情数据,字段与个股日线类似。

字段类型说明
trade_datedatetime交易日
open / high / low / closefloat指数点开高低收
volumeint成交股数
amountfloat成交金额(元)
preClosefloat前收盘价
suspendFlagint停牌标志(0=正常,1=停牌)
IndexCodestring指数代码
Categorystring指数类别(宽基/风格/行业/主题)

2. Tick 分笔数据

逐笔成交明细,含五档买卖盘。文件名格式:{SYMBOL}_{YYYYMMDD}.parquet

字段类型说明示例
timeint64成交时刻(毫秒级时间戳)1784511000123
last_pricefloat最新成交价(元)12.50
openfloat当日开盘价(元)12.30
highfloat当日最高价(元)12.80
lowfloat当日最低价(元)12.20
last_closefloat前收盘价(元)12.35
amountfloat累计成交额(元)1234567.89
volumeint累计成交量(股)100000
pvolumeint成交笔数5000
ask_pricearray五档卖价(元)[12.51, 12.52, 12.53, 12.54, 12.55]
bid_pricearray五档买价(元)[12.49, 12.48, 12.47, 12.46, 12.45]
ask_volarray五档卖量(股)[100, 200, 300, 400, 500]
bid_volarray五档买量(股)[150, 250, 350, 450, 550]
transaction_numint成交序号12345

用法示例

# 查询某日 Tick 数据
df = client.query_tick("000001.SZ", trade_date="2026-07-20")

# 计算买卖价差
df["spread"] = df["ask_price"].apply(lambda x: x[0]) - df["bid_price"].apply(lambda x: x[0])

# 计算大单(单笔成交 > 100 万元)
df["big_order"] = df["amount"].diff() > 1000000

3. 基础与板块数据

3.1 合约基础资料(instrument_detail)

字段类型说明
Symbolstring股票代码
Namestring证券简称
J_zgbfloat总股本(万股)
ActiveCapitalfloat流通股本(万股)
ListDatedate上市日期
EstablishDatedate成立日期
Provincestring所属省份
SecurityTypestring证券类型
BelongRZRQstring融资融券标识(1=是)

3.2 板块成分(sector_concept)

字段类型说明
SectorCodestring板块代码(如 880201.SH)
SectorNamestring板块名称
SectorTypestring板块类型(行业/概念/风格/地区)
Symbolstring成分股代码

3.3 指数成分权重(index_weights)

字段类型说明
Symbolstring成分股代码
Weightfloat权重(%)
IndexCodestring指数代码

3.4 交易日历(trading_calendar)

字段类型说明
TradingDatedate日期
IsTradingDayint是否交易日(1=是,0=否)

3.5 融资融券(margin_trading)

字段类型说明单位
trade_datedate交易日期-
Symbolstring股票代码-
finance_balancefloat融资余额万元
slo_volumefloat融券余量
finance_buyfloat融资买入额万元
slo_sell_amountfloat融券卖出额万元
finance_repayfloat融资偿还额万元
slo_repayfloat融券偿还量
finance_netfloat融资净买入万元
slo_netfloat融券净卖出

4. 财务数据

财务数据来自 QMT,字段全部使用业务名(如 revenue, net_profit),无需对照表。

4.1 资产负债表(balance)

字段类型说明
m_timetagdate报告期(YYYY-MM-DD)
m_anntimedate公告日
cash_equivalentsfloat货币资金
account_receivablefloat应收账款
total_current_assetsfloat流动资产合计
fix_assetsfloat固定资产
tot_assetsfloat资产总计
shortterm_loanfloat短期借款
accounts_payablefloat应付账款
total_current_liabilityfloat流动负债合计
long_term_loansfloat长期借款
tot_liabfloat负债合计
cap_stkfloat实收资本(股本)
cap_rsrvfloat资本公积
undistributed_profitfloat未分配利润
tot_shrhldr_eqy_excl_min_intfloat归属于母公司股东权益合计
minority_intfloat少数股东权益
total_equityfloat所有者权益合计

4.2 利润表(income)

字段类型说明
m_timetagdate报告期
m_anntimedate公告日
revenuefloat营业收入
total_operating_costfloat营业总成本
cost_of_goods_soldfloat营业成本
sale_expensefloat销售费用
less_gerl_admin_expfloat管理费用
research_expensesfloat研发费用
oper_profitfloat营业利润
tot_profitfloat利润总额
inc_taxfloat所得税费用
net_profit_incl_min_int_incfloat净利润(含少数股东损益)
net_profit_excl_min_int_incfloat归母净利润(不含少数股东损益)
s_fa_eps_basicfloat基本每股收益(EPS)
s_fa_eps_dilutedfloat稀释每股收益

4.3 现金流量表(cashflow)

字段类型说明
m_timetagdate报告期
m_anntimedate公告日
net_cash_flows_oper_actfloat经营活动产生的现金流量净额
net_cash_flows_inv_actfloat投资活动产生的现金流量净额
net_cash_flows_fnc_actfloat筹资活动产生的现金流量净额
net_incr_cash_cash_equfloat现金及现金等价物净增加额

4.4 股本表(capital)

字段类型说明
m_timetagdate报告期
total_capitalfloat总股本(股)
circulating_capitalfloat流通股本(股)

4.5 每股指标(pershare_index)

字段类型说明
m_timetagdate报告期
s_fa_bpsfloat每股净资产(BPS)
s_fa_eps_basicfloat基本每股收益(EPS)
s_fa_eps_dilutedfloat稀释每股收益
du_return_on_equityfloat净资产收益率 ROE(摊薄)
equity_roefloat净资产收益率
gear_ratiofloat资产负债率
du_profit_ratefloat销售净利率
inc_revenue_ratefloat营业收入同比增长率
inc_net_profit_ratefloat净利润同比增长率

4.6 除权复权因子(dividend_factors)

字段类型说明
trade_datedatetime除权日
interestfloat每股分红(元)
stockBonusfloat每股送股
stockGiftfloat每股转增
allotNumfloat配股比例
allotPricefloat配股价
drfloat累计复权因子

用法示例

# 读取财务数据
df = client.load_as_df("3", "balance", symbol="600519.SH")

# 计算资产负债率
df["debt_ratio"] = df["tot_liab"] / df["tot_assets"]

# 筛选高 ROE 股票
roe_df = client.load_as_df("3", "pershare_index", symbol="600519.SH")
high_roe = roe_df[roe_df["du_return_on_equity"] > 0.15]  # ROE > 15%

5. ETF / 可转债

5.1 ETF 申赎清单(etf_pcf)

字段类型说明
EtfCodestringETF 代码
namestringETF 名称
navfloat单位净值
cashBalancefloat现金差额
navPerCUfloat每份净值
eccfloat预估现金

5.2 ETF 成分股(etf_components)

字段类型说明
EtfCodestringETF 代码
ComponentCodestring成分股代码
componentExchIDstring交易所 ID
componentVolumeint成分股数量
ReplaceFlagint替代标志

5.3 可转债(convertible_bond)

字段类型说明
BondCodestring可转债代码
bondNamestring可转债名称
stockCodestring正股代码
bondConvPricefloat转股价
bondCouponRatefloat票面利率(%)
bondRestScopefloat剩余规模(万元)
conversionPremiumfloat转股溢价率(%)
bondValuefloat纯债价值
expireYieldfloat到期收益率(%)
bondMaturityDatedate到期日
convStartDatedate转股起始日

6. 技术衍生指标

6.1 技术指标(technical_indicators)

基于前复权日线计算的技术指标,每只股票一个文件。指标口径对齐通达信: RSI/KDJ/MACD 平滑用 ewm(adjust=False)(种子=首值),MACD 柱 = 2×(DIF-DEA); 前 ~2-3×period 根为 warmup 期(指标为 NaN 或不稳定),下游使用建议丢弃。

字段类型说明
timedatetime交易日
Symbolstring股票代码
closefloat收盘价(前复权)
ma5 / ma10 / ma20 / ma60float5/10/20/60 日均线
ma_gap_5 / ma_gap_10 / ma_gap_20float价格与均线偏离度(%)
rsi_6 / rsi_14float6日/14日 RSI(0-100,通达信 SMA 平滑)
kdj_k / kdj_d / kdj_jfloatKDJ 指标(通达信 SMA(RSV,3,1))
macd_dif / macd_dea / macd_histfloatMACD 指标(hist = 2×(DIF-DEA),通达信口径)
vol_std_5 / vol_std_20 / vol_std_60float5/20/60 日收益率标准差(%)
vol_atr_14float14日 ATR(平均真实波幅,Wilder RMA)
vol_to_ma5 / vol_to_ma20float当日量 / 过去N日均量(含当日),非通达信盘口量比
volume_ma_3 / amount_ma_5 / volume_trend_3dfloat成交量均线 / 成交额均线 / 量能趋势
return_1d / return_3d / return_5d / return_10d / return_20d / return_60dfloat未来 N 日收益率(%,ML label,非特征)
pct_changefloat当日涨跌幅(%,过去1日)
beta_20float20日 CAPM Beta(相对沪深300)

用法示例

# 读取技术指标
df = client.load_as_df("5", "technical_indicators", symbol="600519.SH")

# 金叉策略:MA5 上穿 MA20
df["golden_cross"] = (df["ma5"] > df["ma20"]) & (df["ma5"].shift(1) <= df["ma20"].shift(1))

# RSI 超卖策略
oversold = df[df["rsi_14"] < 30]

# MACD 金叉
df["macd_golden"] = (df["macd_dif"] > df["macd_dea"]) & (df["macd_dif"].shift(1) <= df["macd_dea"].shift(1))

6.2 盘口情绪(market_sentiment)

字段类型说明
trade_datedatetime交易日
Symbolstring股票代码
price_rangefloat日内振幅((High-Low)/Close)
upper_shadowfloat上影线长度
lower_shadowfloat下影线长度
body_ratiofloat实体比例
amount_per_tradefloat单笔均额
liquidity_scorefloat流动性评分
intraday_volfloat日内波动
gap_up_downfloat跳空幅度
buy_pressurefloat买方压力(0-1)
sell_pressurefloat卖方压力(0-1)
momentum_1d / momentum_3dfloat1日/3日动量

7. 估值指标

基于财务数据和行情数据预计算的估值指标,日线粒度。

字段类型说明计算公式
trade_datedatetime交易日-
Symbolstring股票代码-
closefloat收盘价-
total_capitalfloat总股本(股)-
circulating_capitalfloat流通股本(股)-
total_mvfloat总市值(元)total_capital x close
float_mvfloat流通市值(元)circulating_capital x close
net_profit_ttmfloat归母净利润 TTM(元)近4季度滚动求和
revenue_ttmfloat营收 TTM(元)近4季度滚动求和
equityfloat归母权益(元)最新一期资产负债表
annual_net_profitfloat年报归母净利润(元)当年Q4累计值
pe_ttmfloat市盈率 TTMtotal_mv / net_profit_ttm
pe_staticfloat静态市盈率total_mv / annual_net_profit
pbfloat市净率total_mv / equity
ps_ttmfloat市销率 TTMtotal_mv / revenue_ttm
dividend_ratefloat股息率近12个月每股分红 / close

用法示例

# 读取估值数据
df = client.load_as_df("5", "valuation", symbol="600519.SH")

# 筛选低估值股票
low_pe = df[df["pe_ttm"] < 20]

# 计算估值分位数
df["pe_percentile"] = df["pe_ttm"].rolling(252).apply(lambda x: x.rank(pct=True).iloc[-1])

# 高股息策略
high_dividend = df[df["dividend_rate"] > 0.03]  # 股息率 > 3%
提示:估值指标采用 公告日 forward fill 机制,确保避免 lookahead bias。TTM 计算使用单季差分再滚动求和,更准确反映最新业绩。

8. 365 维模型训练数据集

专为 AI / ML 量化研究打造的模型训练宽表,按 (symbol, date) 索引对齐,包含 Features Daily 日线因子宽表 50 维、L1 日频 100 维因子与 L2 高频 215 维因子,合计 365 维特征。数据以 V2 按日分区存储,支持 layout="v2" 高效范围查询。

8.1 Features Daily 日线因子宽表(features_daily)

基于日线 OHLCV + 资本结构 + TTM 财务衍生的日线基础因子宽表,覆盖全 A 股(约 5200 只),逐股存储,共 50 维。该宽表是 L1 因子工程的底层输入,亦可直接用于轻量模型训练与快速特征工程。所有收益列均为过去收益(已从未来收益改为过去 N 日累计收益,杜绝前视);与 L1 宽表重叠的 3 列(vol_std_5/20、vol_atr_14)已删除让位 L1。

分类维度数特征列说明计算与防前视处理
均线与技术15 维MA5/10/20/60、MA gap、RSI6/14、KDJ、MACD 三线基于前复权日线收盘价序列
波动率1 维vol_std_60(60 日收益标准差;5/20 日及 ATR 已让位 L1)基于日线收益率序列
量价5 维量比 MA5/20、量 MA3、额 MA5、3 日量趋势量与额归一化
过去收益8 维过去 1/3/5/10/20/60 日累计收益、pct_change、Beta20shift(+d) 过去收益,末 N 日 NaN(无未来函数)
市值与估值13 维总/流通股本、总/流通市值、TTM 净利润/营收、净资产、年净利润、PE/PB/PS、股息率市值 = 真实价 × 股本;TTM 单季差分滚动求和
高阶统计与新因子8 维20 日振幅、距高点回撤、量偏度、额 Z-Score、收益偏度/峰度、量能短期比、最大回撤基于后复权 OHLCV,20 日滚动窗口

8.2 L1 日频因子(l1_factors)

基于后复权 OHLCV + 财务 + 行业/概念计算的日频因子,覆盖 2016-01-04 至今全 A 股(约 5200 只),共 2565 个交易日分区,100 维。

分类维度数特征列说明计算与防前视处理
动量因子20 维5D / 10D / 20D / 60D 收益率、超额收益、动量震荡基于后复权 (backward) 价格序列
波动率因子10 维Rolling 20D / 60D 年化波动率、下行标准差、ATR基于后复权价格序列
量价与技术16 维换手率、量价相关系数、MACD、RSI、Boll 带位置量与额归一化,剔除停牌干扰
财务基本面13 维ROE、ROA、毛利率、资产负债率、TTM 净利润同比严格按公告日 (m_anntime) 索引,零未来函数
截面行业23 维申万行业分类 Relative Rank、Z-Score、行业相对动量每日截面去极值 (Winsorize) 与标准化
筹码分布8 维获利盘比例、筹码集中度、主力套牢盘基于换手率历史衰减衰退模型
概念暴露10 维热门概念(半导体、人工智能、新能源等)暴露度按概念板块成分股加权归一化

8.3 L2 高频因子(l2_factors)

从 7z 逐笔/快照按日日频化聚合的高频因子,覆盖 2026-01-05 ~ 2026-02-27 共 34 个交易日,约 5169 只股票,215 维。

分类维度数特征列说明计算与防前视处理
L2 高频因子215 维买卖盘口深度、大单流向、主买比例、微观波动从 7z 逐笔/快照按日日频化聚合

8.4 合并训练宽表(l1_l2_factors)

Features Daily + L1 + L2 按 (symbol, date) inner join 合并,产出 175,217 行 × 365 因子的训练宽表 train_factors_2026q1.parquet,可直接供 LightGBM / XGBoost 使用。三路数据均从 V2 按日分区读取,统一 symbol 标准格式对齐。

用法示例

# 快速拉取 365 维训练宽表 Parquet 切片
df_factors = client.load_as_df(category_id="6", sub_category="l1_l2_factors", symbol="train_factors_2026q1")

# 提取特征矩阵与目标标签(直接供 LightGBM 使用)
feature_cols = [c for c in df_factors.columns if c not in ["wind_code", "date", "target_5d"]]
X = df_factors[feature_cols]
y = df_factors["target_5d"]

import lightgbm as lgb
train_data = lgb.Dataset(X, label=y)
model = lgb.train({}, train_data, num_boost_round=100)

# V2 按日范围查询 L1 因子(高效,只下载所需日期分区)
df_l1 = client.query_kline("600519.SH",
    category_id="6", sub_category="l1_factors",
    start_date="2026-01-01", end_date="2026-03-31",
    layout="v2")