基础因子 (cn_stock_factors_base)

数据描述: 不建议使用。早期整理的 A 股基础因子宽表,包含行情、状态、市值股本、上市天数、行业、指数成分与指数行情、融资融券等字段,这些字段都可以从其他数据表获取或直接计算,对应关系见文档。

文档
数据简介

## 一、数据简介 本表是早期整理的 A 股基础因子宽表,把行情、交易状态、市值股本、上市信息、行业分类、指数成分与指数行情、融资融券等字段合并在同一张表里。 不建议使用本表。表里的字段都可以从其他数据表获取,或者用 SQL 直接计算,对应关系见第四部分。直接使用源表,字段口径更清楚,也不受本表字段范围的限制。 - 数据起始时间:2005-01-04 - 数据结束时间:2026-10-28 - 数据更新频率:每个交易日 ## 二、主键说明 | 关键字 | 释意 | | --- | --- | | instrument | 股票代码 | | date | 交易日期 | ## 三、字段说明 本表共 124 个字段,按含义分为下面几组。 | 字段组 | 字段 | | --- | --- | | 上市信息 | list_sector 上市板块(1 主板,2 创业板,3 科创板,4 北交所)、list_date 上市日期、list_days 已上市自然日数、trading_days 已上市交易日数 | | 行情 | adjust_factor、open、high、low、close(后复权价)、volume、amount、upper_limit、lower_limit、price_ampolitude 股价振幅 | | 交易状态 | price_limit_status(1 跌停,2 未涨跌停,3 涨停)、st_status(0 正常,1 ST,2 \*ST)、suspended(0 正常,1 停牌)、margin_trading_status(0 不属于两融标的,1 属于) | | 市值与股本 | total_market_cap、float_market_cap、total_shares、float_total 流通股合计、float_ratio 流通盘比例 | | 融资融券 | financing_balance、securities_lending_balance、financing_net_purchase、financing_purchase、financing_repayment | | 行业分类 | sw2014_level1 至 level3、sw2021_level1 至 level3、cs_level1 至 level3,分别是申万 2014、申万 2021、中信的一至三级行业代码 | | 指数成分标记 | is_szzs、is_sh50、is_hs300、is_kc50、is_zz1000、is_zz100、is_zz500、is_szcz、is_cybz、is_sz100、is_bz50、is_zza500,取值 0 或 1 | | 指数行情 | 12 个指数各 6 个字段,字段名为 指数简称\_open、\_high、\_low、\_close、\_volume、\_amount,如 hs300_close | 字段计算口径: - list_days = 日期 − 上市日期(自然日)+ 1。 - trading_days 是上市日期到当日(含两端)的交易日数量。 - float_ratio = float_total / total_shares。 - price_ampolitude = (high − low) / 昨收盘价(后复权)。昨收盘价来自 cn_stock_bar1d 的 pre_close,本表不包含这个字段。 - 停牌(suspended = 1)的行,open、high、low、close、volume、amount 为空。 - 指数行情字段只有该指数的成分股才有值,非成分股为空。 - 融资融券相关字段在交易日的次一交易日补齐。 ## 四、字段对应的数据表 字段不逐个列出,下面用几个字段举例,同一字段组里的其他字段取自同一张表: | 示例字段 | 对应数据表 | 说明 | | --- | --- | --- | | list_sector、list_date | cn_stock_basic_info | 直接取用,list_days 按上面的口径计算 | | close、volume、upper_limit | cn_stock_bar1d | 后复权价,直接取用 | | st_status、suspended | cn_stock_status | 直接取用 | | total_market_cap | cn_stock_valuation | 直接取用,float_market_cap 同表 | | total_shares、float_total | cn_stock_shares | float_total 对应 total_float_shares。股本以 cn_stock_shares 为准 | | financing_balance | cn_stock_margin_trading_detail | 在该表中有记录的股票,margin_trading_status 为 1 | | sw2021_level1 | cn_stock_industry_component | industry 取 sw2021,industry_level1_code 对应 level1 | | is_hs300 | cn_stock_index_component | instrument 取沪深 300 的 000300.SH,member_code 是成分股代码,当日存在记录即为 1 | | hs300_close | cn_stock_index_bar1d | 取 000300.SH 的 close。其他指数同理,字段前缀是指数简称,如 szzs 对应 000001.SH | ## 五、计算示例 沪深 300 成分股及其指数收盘价: ```sql SELECT c.date, c.member_code AS instrument, k.close AS hs300_close FROM cn_stock_index_component AS c JOIN cn_stock_index_bar1d AS k ON c.date = k.date AND c.instrument = k.instrument WHERE c.instrument = '000300.SH' ``` ## 六、示例数据 字段较多,只展示 7 个字段,取最新数据日期前 7 天的数据,按日期和股票代码排序,展示前 5 行和后 5 行。 | date | instrument | list_sector | close | volume | total_market_cap | sw2021_level1 | |:-----------|:-------------|--------------:|-------------------:|----------:|-------------------:|----------------:| | 2026-10-21 | 000001.SZ | 1 | 1621.02111728051 | 81354137 | 221421526639.18 | 480000 | | 2026-10-21 | 000002.SZ | 1 | 628.695086306005 | 189535800 | 41280254769.66 | 430000 | | 2026-10-21 | 000006.SZ | 1 | 265.858416481018 | 15178055 | 9031466857.74 | 430000 | | 2026-10-21 | 000007.SZ | 1 | 79.687542514801 | 7694715 | 3332830183.28 | 450000 | | 2026-10-21 | 000008.SZ | 1 | 51.5390733718872 | 16442100 | 6247668670.9 | 640000 | | 2026-10-28 | 920978.BJ | 4 | 26.2822550988032 | 4086567 | 3636575053.6 | 280000 | | 2026-10-28 | 920981.BJ | 4 | 38.7969571016228 | 1340229 | 2068459400 | 270000 | | 2026-10-28 | 920982.BJ | 4 | 618.952914842026 | 1899690 | 16569408960 | 770000 | | 2026-10-28 | 920985.BJ | 4 | 7.2773209958174 | 1798848 | 1383358614 | 630000 | | 2026-10-28 | 920992.BJ | 4 | 17.0552391199626 | 572987 | 1097896100.9 | 370000 |

用例
* 用例1:查询特定日期的基础因子 ``` import dai df = dai.query(""" SELECT * FROM cn_stock_factors_base """, filters={"date": ["2020-06-01"]} ).df() ``` * 用例2:比较沪深300指数和中证500指数所包含股票的平均成交额和涨跌幅 ``` import dai df = dai.query(""" SELECT is_hs300,is_zz500, AVG(amount) AS avg_amount, AVG((close - open) / open) AS avg_change_ratio FROM cn_stock_factors_base GROUP BY is_hs300, is_zz500""", filters={"date": ["2020-01-01","2020-12-31"]} ).df() ``` * 用例3:分析某一行业在一定时期内的股票表现,如查看平均涨跌幅和总成交量 ``` import dai df = dai.query(""" SELECT date, AVG((close - open) / open) AS avg_change_ratio, SUM(volume) AS total_volume FROM cn_stock_factors_base WHERE sw2021_level1 = '510000' GROUP BY date ORDER BY date""", filters = {"date": ["2020-01-01","2020-12-31"]} ).df() ``` * 用例4:分析某一日期涨停或跌停的股票数量 ``` import dai df = dai.query(""" SELECT date, COUNT(instrument) AS num_limit_up FROM cn_stock_factors_base WHERE price_limit_status = 3 OR price_limit_status = 1 GROUP BY date ORDER BY date""", filters = {"date": ["2020-01-01","2020-12-31"]} ).df() ```
表结构
字段 字段类型 字段描述
is_kc50 int8 是否属于科创50指数 (0-不属于, 1-属于)
is_sh50 int8 是否属于上证50指数 (0-不属于, 1-属于)
is_szcz int8 是否属于深证成指数 (0-不属于, 1-属于)
is_szzs int8 是否属于上证指数 (0-不属于, 1-属于)
bz50_low double 北证50指数最低价
cybz_low double 创业板指指数最低价
is_hs300 int8 是否属于沪深300指数 (0-不属于, 1-属于)
is_sz100 int8 是否属于深证100指数 (0-不属于, 1-属于)
is_zz100 int8 是否属于中证100指数 (0-不属于, 1-属于)
is_zz500 int8 是否属于中证500指数 (0-不属于, 1-属于)
kc50_low double 科创50指数最低价
sh50_low double 上证指数50最低价
szcz_low double 深证成指指数最低价
szzs_low double 上证指数最低价
bz50_high double 北证50指数最高价
bz50_open double 北证50指数开盘价
cs_level1 string 中信一级行业代码
cs_level2 string 中信二级行业代码
close double 收盘价(后复权)
cybz_high double 创业板指指数最高价
cybz_open double 创业板指指数开盘价
hs300_low double 沪深300指数最低价
is_zz1000 int8 是否属于中证1000指数 (0-不属于, 1-属于)
is_zza500 int8 是否属于上证50指数 (0-不属于, 1-属于)
kc50_high double 科创50指数最高价
kc50_open double 科创50指数开盘价
open double 开盘价(后复权)
list_days int64 已经上市的天数, 按自然日计算, -1表示未知
sh50_high double 上证指数50最高价
sh50_open double 上证指数50开盘价
st_status int8 ST状态, 可选值: 0-正常, 1-ST, 2-*ST
sz100_low double 深证100指数最低价
szcz_high double 深证成指指数最高价
szcz_open double 深证成指指数开盘价
szzs_high double 上证指数最高价
szzs_open double 上证指数开盘价
zz100_low double 中证100指数最低价
zz500_low double 中证500指数最低价
amount double 成交金额
cybz_close double 创业板指指数收盘价
hs300_high double 沪深300指数最高价
date timestamp[ns] 日期
kc50_close double 科创50指数收盘价
sh50_close double 上证指数50收盘价
sz100_high double 深证100指数最高价
sz100_open double 深证100指数开盘价
szcz_close double 深证成指指数收盘价
szzs_close double 上证指数收盘价
zz1000_low double 中证1000指数最低价
zz100_high double 中证100指数最高价
instrument string 证券代码
financing_net_purchase double 融资净买入金额
securities_lending_balance double 融券余额
margin_trading_status int8 是否是两融标的 (0-不属于, 1-属于)
financing_repayment double 融资偿还金额
price_limit_status int8 股价在收盘时的涨跌停状态:1表示跌停, 2表示未涨跌停, 3则表示涨停
financing_purchase double 融资买入金额
financing_balance double 融资余额
total_market_cap double 总市值
price_ampolitude double 股价振幅
float_market_cap double 流通市值
zza500_volume double 中证A500指数成交量
zza500_amount double 中证A500指数成交额
zz1000_volume double 中证1000指数成交量
zz1000_amount double 中证1000指数成交额
sw2021_level3 string 申万三级行业代码(2021)
sw2021_level2 string 申万二级行业代码(2021)
sw2021_level1 string 申万一级行业代码(2021)
sw2014_level3 string 申万三级行业代码(2014)
sw2014_level2 string 申万二级行业代码(2014)
sw2014_level1 string 申万一级行业代码(2014)
adjust_factor double 累计后复权因子
hs300_volume double 沪深300指数成交量
zza500_close double 中证A500指数收盘价
zz500_volume double 中证500指数成交量
zz500_amount double 中证500指数成交额
zz100_volume double 中证100指数成交量
zz100_amount double 中证100指数成交额
zz1000_close double 中证1000指数收盘价
suspended int8 停牌标记 (0-正常, 1-停牌)
trading_days int64 已经上市的交易天数, -1表示未知
total_shares double 总股本
zz500_high double 中证500指数最高价
zz500_open double 中证500指数开盘价
zza500_low double 中证A500指数最低价
bz50_amount double 北证50指数成交额
bz50_volume double 北证50指数成交量
cybz_amount double 创业板指指数成交额
cybz_volume double 创业板指指数成交量
float_ratio double 流通盘比例
float_total double 流通股合计
sz100_volume double 深证100指数成交量
sz100_amount double 深证100指数成交额
__PARTITION__ int64 -
hs300_amount double 沪深300指数成交额
zza500_open double 中证A500指数开盘价
zza500_high double 中证A500指数最高价
zz500_close double 中证500指数收盘价
zz100_close double 中证100指数收盘价
zz1000_open double 中证1000指数开盘价
zz1000_high double 中证1000指数最高价
upper_limit double 涨停价
szzs_volume double 上证指数成交量
szzs_amount double 上证指数成交额
szcz_volume double 深证成指指数成交量
szcz_amount double 深证成指指数成交额
sz100_close double 深证100指数收盘价
sh50_volume double 上证指数50成交量
sh50_amount double 上证指数50成交额
lower_limit double 跌停价
list_sector int8 上市板块代码:0-未知;1-主板;2-创业板;3-科创板;4-北交所
kc50_volume double 科创50指数成交量
kc50_amount double 科创50指数成交额
hs300_close double 沪深300指数收盘价
zz100_open double 中证100指数开盘价
cs_level3 string 中信三级行业代码
bz50_close double 北证50指数收盘价
list_date timestamp[ns] 上市日期
low double 最低价(后复权)
high double 最高价(后复权)
volume int64 成交量
is_bz50 int8 是否属于北证50指数 (0-不属于, 1-属于)
hs300_open double 沪深300指数开盘价
is_cybz int8 是否属于创业板指数 (0-不属于, 1-属于)

表名:cn_stock_factors_base

起始时间:

最近更新时间: