合约规格、主力月与到期规则

一张涵盖 53 个 CME、CBOT、NYMEX 和 COMEX 期货品种的表格,给出每个根代码的 tick size、乘数、每跳价值、有效交割月和到期规则。应用据此计算主力合约、在移仓窗口期间保留即将到期的合约,并在打开时刷新已到期的已保存代码。

Senzoukria · 文档 · 更新于 2026 年 9 月


位置

位置
合约选择器(Rithmic):每个根代码的主力月,以及移仓窗口开启期间即将到期的合约;SIM 交易盈亏;自动回测的“点值($)”
移仓缓冲
第三个星期五到期的合约(股指)为最后交易日前 8 天,其他所有规则为 4 天
代码格式
根代码 + 月份代码 + 年份末位,例如 MNQZ6;月份代码为 F G H J K M N Q U V X Z
未知根代码
回退为 tick 0.25、乘数 1、第三个星期五规则、无有效月份

它做什么

每份规格包含根代码、名称、类别(股指、利率、外汇、金属、能源、谷物、畜产品、加密货币)、交易所、tick size、乘数、每跳价值(= tick size × 乘数)、有效月份和一条到期规则。例如:ES 0.25 × 50 = 12.50 美元,MNQ 0.25 × 2 = 0.50 美元,CL 0.01 × 1,000 = 10 美元,GC 0.1 × 100 = 10 美元,ZN 0.015625 × 1,000 = 15.625 美元,6E 0.00005 × 125,000 = 6.25 美元,MBT 5 × 0.1 = 0.50 美元。

主力月是第一个满足“最后交易日减去移仓缓冲仍在将来”的有效交割月,最多向前扫描 36 个月。在缓冲期内,上一份合约仍留在列表中,带着它的合约月标签和一个“exp DD/MM”徽标,悬停提示为“最后交易日 {date}”;它会在该日期的次日从列表中消失。模拟盈亏为(价格差)× 乘数 × 数量。

当一个已保存的代码(足迹图上的最后代码、热力图偏好、预检探测代码、日志跳转回放的链接)已经越过其最后交易日时,refreshIfExpired 会把它替换为同一根代码的当前主力月。年份数字按最接近的十年解析,因此 2026 年读到的 6 表示 2026 年,而不是 2036 年。

到期规则

13 条到期规则以及应用计算出的日期(工作日为周一至周五,不含节假日日历)。对利率和 COMEX 金属品种,该日期是第一通知日移仓日,而不是交易所官方的最后交易日
规则合约计算出的日期
third-fridayES、MES、NQ、MNQ、RTY、M2K、YM、MYM交割月的第三个星期五;移仓缓冲 8 天
fx-third-wednesday6E、6B、6J、6A、6C、6S、6N、M6E、M6B第三个星期三之前的两个工作日
treasury-first-noticeZB、UB、TN、ZN、ZF、ZT交割月前一个月的最后一个工作日(第一通知日,早于官方最后交易日)
crude-25thCL、MCL、QM交割月前一个月 25 日之前的三个工作日(25 日先回退到工作日)
natgas-month-startNG、MNG交割月第一天之前的三个工作日
refined-month-endRB、HO交割月前一个月的最后一个工作日
brent-2mBZ交割月前两个月的最后一个工作日
comex-metalGC、MGC、SI、SIL、HG、MHG、PL、PA交割月前一个月最后一个工作日之前的两个工作日(第一通知日移仓,早于官方最后交易日)
grain-15thZC、ZS、ZW、ZL、ZM、ZO、ZR交割月 15 日之前的那个工作日
cattle-month-end / hogs-10th-bd / feeder-last-thursdayLE / HE / GF当月最后一个工作日 / 第 10 个工作日 / 最后一个星期四
crypto-last-fridayBTC、MBT、ETH、MET交割月的最后一个星期五

如何使用

  • 从合约选择器中选择主力月;在移仓窗口期间两份合约都会列出,方便你停留在仍有成交量的那一份上。
  • 在自动回测中,“点值($)”默认为 2(MNQ);请把它设为你所测试合约的乘数(ES 50、NQ 20、CL 1,000)。
  • 诸如“2026 年 12 月”这样的合约月标签来自与代码相同的计算;若某个标签看起来不对,应当检查该根代码的有效月份或规则。

局限与陷阱

  • 到期规则用工作日算术近似交易所日历;交易所节假日未被建模,因此在节假日前后计算出的日期可能相差一天。对利率和 COMEX 金属,该日期被有意设为第一通知日移仓日,它早于官方最后交易日:过了第一通知日,金属合约即可交割,流动性会骤降。
  • 移仓缓冲是一个显示选择(8 天或 4 天),而不是成交量移仓;切换前请先核对实际成交量。
  • 表中缺失的根代码会得到通用默认值(tick 0.25、乘数 1);在补上规格之前,盈亏和点值都是错的。
  • 合约细节用于模拟和显示;经纪商端的合约定义和保证金并不从这里读取。

其他语言版本

常见问题

为什么三月份选择器里会显示两份 ES 合约?
从第三个星期五之前 8 天起直到那个星期五本身,即将到期的合约会与新的主力月并列保留,并带有“exp DD/MM”徽标。它会在最后交易日的次日消失。
我的最后使用代码到期后会怎样?
下次打开时,它会被替换为同一根代码的当前主力月并重新保存;预检探测代码和日志跳转回放的链接同样如此。
回测中的点值来自哪里?
它是一个由你设定的字段,默认为 MNQ 的 2;合约表给出了其他根代码应当填入的乘数。