3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
针对您在 JoinQuant 聚宽平台使用 finance.STK_EXCHANGE_TRADE_INFO 表时遇到的疑问,解答如下:
finance.STK_EXCHANGE_TRADE_INFO 表主要记录的是沪深交易所整体的宏观交易概况。如果该表中没有单独列出科创板的细分数据,通常是因为上交所的数据已经将其汇总在内,或者该表的设计未针对科创板进行独立拆分。
获取科创板数据的替代方式:
通过科创50指数获取整体概况:
您可以直接获取科创50指数(代码:000688.XSHG)的行情数据,这能代表科创板核心资产的成交情况。
df = get_price('000688.XSHG', start_date='2023-09-19', end_date='2023-09-19', fields=['volume', 'money'])
print(df)
汇总所有科创板个股数据(最精确):
如果您需要整个科创板的精确成交金额,可以通过 get_all_securities 获取所有科创板股票(代码以 688 开头),然后获取它们的 money(成交额)进行求和。
# 获取所有股票
all_stocks = get_all_securities(['stock']).index.tolist()
# 筛选科创板股票
star_stocks = [code for code in all_stocks if code.startswith('688')]
# 获取某日成交额并求和
df = get_price(star_stocks, start_date='2023-09-19', end_date='2023-09-19', fields=['money'], panel=False)
total_money = df['money'].sum()
print("科创板总成交额:", total_money)
您观察到 finance.STK_EXCHANGE_TRADE_INFO 中的数据与通达信软件显示的两市总成交金额存在差异,这在量化数据源和传统行情软件之间是非常常见的现象。主要由以下统计规则和口径差异导致:
包含的证券品种不同:
大宗交易与盘后交易的计算:
复权与精度处理:
建议:
在量化回测中,如果您需要计算全市场的真实成交额用于策略信号(如判断市场热度),建议统一使用聚宽的个股 money 字段进行横截面求和。这样不仅能保证与您策略交易的标的完全对应,还能避免因宏观统计口径不明导致的信号偏差。