摘要: 股票交易时间分为上午9:30至11:30和下午13:00至15:00,共4小时。期货交易时间更长,含夜盘,日盘为9:00至11:30及13:30至15:00,夜盘从21:00开始。集合竞价和...

股票交易时间的基本框架

中国A股市场股票交易时间固定为两个时段,上午9:30至11:30,下午13:00至15:00。每个交易日总交易时长为4小时。周末与法定节假日休市。开盘前存在集合竞价阶段,9:15至9:25为开盘集合竞价,其中9:15至9:20可撤单,9:20至9:25不可撤单,9:25产生开盘价。9:25至9:30为静默期,委托单暂存但不撮合。14:57至15:00为收盘集合竞价,产生收盘价。连续竞价在9:30至11:30和13:00至14:57进行,遵循价格优先、时间优先原则。

期货交易时间与股票的差异

期货市场交易时间更长,且不同品种存在差异化安排。日盘交易通常为9:00至11:30,其中10:15至10:30为休息时间,13:30至15:00继续交易。部分商品期货如铜、铝、锌、铅、镍、锡、黄金、白银、原油、螺纹钢、热轧卷板、燃料油、石油沥青、天然橡胶、纸浆、20号胶、国际铜等设有夜盘。夜盘时间从21:00开始,结束时间因品种而异,常见为23:00、次日1:00或次日2:30。金融期货如沪深300股指期货、中证500股指期货、上证50股指期货、中证1000股指期货,日盘为9:30至11:30和13:00至15:00,无夜盘。国债期货日盘为9:30至11:30和13:00至15:15。

期货集合竞价在日盘开盘前5分钟进行,即8:55至9:00,其中8:55至8:59可撤单,8:59至9:00不可撤单,9:00产生开盘价。夜盘集合竞价在20:55至21:00进行。连续竞价在集合竞价后开始。

股票与期货交易时间对比表

| 市场 | 交易时段 | 具体时间 | 备注 |

股票交易时间是几点到几点 期货交易时间有何不同

|------|----------|----------|------|

| 股票 | 上午连续竞价 | 9:30-11:30 | 开盘集合竞价9:15-9:25 |

| 股票 | 下午连续竞价 | 13:00-14:57 | 收盘集合竞价14:57-15:00 |

| 期货 | 日盘第一节 | 9:00-10:15 | 集合竞价8:55-9:00 |

| 期货 | 日盘休息 | 10:15-10:30 | 部分品种无休息 |

| 期货 | 日盘第二节 | 10:30-11:30 | 金融期货9:30开始 |

| 期货 | 日盘第三节 | 13:30-15:00 | 国债期货至15:15 |

| 期货 | 夜盘 | 21:00起 | 结束时间因品种不同 |

集合竞价与连续竞价的量化细节

集合竞价采用最大成交量原则确定开盘价。所有有效委托集中撮合,选取能达成最大成交量的价格。高于该价格的买入委托与低于该价格的卖出委托全部成交。连续竞价阶段,每一笔新委托进入系统后,与对手方最优价格撮合。量化交易策略需要精确处理时间戳。股票开盘集合竞价期间,9:20至9:25不可撤单,策略需提前挂单。期货夜盘集合竞价在20:55至21:00,策略需调整时钟同步。

时间同步在跨市场交易中至关重要。交易所使用NTP服务器校准时钟。量化系统需定期与交易所时间对齐。延迟超过500毫秒可能导致订单被拒绝。股票连续竞价期间,交易所每3秒发布一次行情快照。期货行情更新频率更高,部分品种达到每秒2次。

代码示例 交易时间判断与订单调度

使用Python判断当前是否处于可交易时段,适用于股票与期货。


from datetime import datetime, time

def is_stock_trading(now=None):

    if now is None:

        now = datetime.now()

    t = now.time()

    return (time(9,30) <= t <= time(11,30)) or (time(13,0) <= t <= time(15,0))

def is_futures_trading(now=None, night_end=time(23,0)):

    if now is None:

        now = datetime.now()

    t = now.time()

    day_session = (time(9,0) <= t <= time(11,30)) and not (time(10,15) <= t <= time(10,30))

    day_session2 = time(13,30) <= t <= time(15,0)

    night_session = time(21,0) <= t <= time(23,59,59) or time(0,0) <= t <= night_end

    return day_session or day_session2 or night_session

print(is_stock_trading())

print(is_futures_trading(night_end=time(1,0)))

量化策略在开盘前完成参数计算。股票策略在9:15前准备好委托列表。期货策略需区分日盘与夜盘。夜盘品种的收盘价对次日日盘开盘价有指引作用。跨日夜盘持仓需注意保证金变化。交易所可能在节假日前调整保证金比例。

交易时间对策略执行的影响

股票T+1制度下,当日买入无法当日卖出。交易时间窗口4小时,策略换手率受限。期货T+0制度,当日可多次开平仓。夜盘提供额外交易机会,但流动性低于日盘。部分品种夜盘成交量占全日30%以上。黄金、白银、原油夜盘活跃。股指期货无夜盘,策略仅能在日盘执行。

量化系统需处理不同品种的交易时间表。使用配置字典存储每个品种的时段。避免在非交易时段发送订单。交易所会在非交易时段拒绝委托。集合竞价期间的委托在连续竞价开始后继续有效。未成交委托在15:00后自动撤销。期货夜盘未成交委托在次日日盘开盘前撤销。

时间管理是量化交易的基础模块。精确到毫秒的时钟同步可减少滑点。回测引擎必须还原历史交易时间。节假日与临时休市需单独处理。股票与期货的交易时间差异直接影响套利策略。跨品种套利需找到同时可交易的时段。股指期货与ETF套利仅在日盘进行。商品期货跨期套利可利用夜盘。