A股的交易时间和集合竞价:一天从公平的开盘价开始
我的掌握程度:
先掌握这个答案
A股日程:①9:15-9:20开盘集合竞价(可挂可撤);②9:20-9:25集合竞价(可挂不可撤——防虚假申报的最后阶段);③9:25出开盘价;④9:30-11:30、13:00-14:57连续竞价(逐笔撮合,价格优先时间优先);⑤14:57-15:00收盘集合竞价出收盘价。周末节假日休市,一年约242-252个交易日。
先读结论,再核对下方使用边界;数字例题为教学情景,涉及实际行情与规则时请核对原始来源。
从理解到使用
本阶段实战方法 · 把行情数字变成可比较的收益
看股票、基金或策略业绩时,先对齐本金、起止日期、现金流与费用。
- 选一个固定区间,记录期初价值、期末价值、分红、出入金和交易费用。
- 没有中途出入金时,用(期末价值+已取出分红-期初价值-费用)÷期初价值计算收益;有出入金时先区分时间加权与资金加权。
- 用相同区间的基准作比较,同时记录最大亏损;不要单凭一次盈利评价能力。
使用边界
- 不同期限的收益不可直接排名;年化只是换算,不是未来收益承诺。
- 模拟价格不是实时行情。普通股票交易手数、T+1和费用应按具体市场规则核对。
打开术语词典,随时查阅基础概念。
背景 · 从一个困惑说起
如果没有开盘机制,每天第一笔成交由「谁手快」决定,凌晨挂单党和消息抢跑党互相踩踏。现代交易所用集合竞价解决:开盘前先收集所有委托,9:25统一撮合出能让成交量最大的价格。
由此产生的问题
A股一天的交易日程怎么安排?集合竞价和连续竞价的区别是什么?为什么量化系统要对着这个时间表编程?
核心概念
A股日程:①9:15-9:20开盘集合竞价(可挂可撤);②9:20-9:25集合竞价(可挂不可撤——防虚假申报的最后阶段);③9:25出开盘价;④9:30-11:30、13:00-14:57连续竞价(逐笔撮合,价格优先时间优先);⑤14:57-15:00收盘集合竞价出收盘价。周末节假日休市,一年约242-252个交易日。
为什么需要它
①执行时点选择:开盘价波动大(隔夜信息集中释放)、收盘前流动性好(指数调仓都在收盘执行);②数据口径:日线开盘价=集合竞价价,你的回测若用「开盘价成交」假设,就隐含了在9:25前已知因子的约束;③系统调度:数据更新、信号计算、下单都要卡在时间表内(盘后更新数据→次日开盘执行)。
实际应用场景
量化日历:15:30收盘后拉数据→夜里算因子→次日9:15前生成订单→参与集合竞价或开盘后执行。年度化换算用252,季度财报披露窗口(4月底等)是事件策略的高峰。
与之前知识的联系
q-030的撮合机制(价格优先时间优先)在连续竞价阶段运转;集合竞价是它的特殊形态(一次性全局撮合)。下一题的T+1从收盘价延伸出一条影响所有A股策略的规则。
⚠ 常见误解
- 9:15-9:25看到的"开盘价"是确定的:9:20前可撤单,显示的撮合价可能被虚假申报操纵(9:20后才真实)
- 收盘价是最后一笔成交:A股收盘价由14:57-15:00集合竞价产生,尾盘抢筹/砸盘都在博弈这个价
- 全球市场时间一样:美股夏令时21:30-4:00(北京时间)、加密7×24——跨市场策略的第一课是时区日历
🛠 本题实践任务
明天开盘时盯一次集合竞价:9:15-9:25任选一只活跃股票,记录撮合价格的变化过程,9:25记下开盘价。观察9:20后价格是否更稳定(撤单通道关闭)。
💡 提示(先自己想5分钟再看)
行情软件集合竞价阶段显示「虚拟撮合价」;用手机闹钟分三个时间点:9:16、9:22、9:26。
✅ 验收标准
三个时间点的撮合价记录+一句话观察(例如:9:20前价格跳动大,之后收敛)。你亲眼见过一次开盘价的诞生。
在你的浏览器内运行。首次需联网下载 Python;支持标准库和 Pyodide 提供的 NumPy、pandas 等包。行情抓取、系统文件访问和部分第三方库请在本地环境运行。输出自检仅比对结果关键词,不代替逻辑审查。
Python · 独立工作线程 · 执行限时10秒
🤖 AI导师
导师会先检查你的前置知识(开盘价收盘价、订单簿),再用案例、公式和代码帮助理解。此功能需要先启用服务。