设置一个限价单,合上笔记本电脑,下周再回来看,它要么已经成交,要么没有成交。无需每天早上重新提交,也不用盯着收盘时间。这就是“撤销前有效”的全部吸引力。
但这个名称多少有些夸大其词。GTC 并不意味着订单会无限期地挂在那里,也不意味着在等待期间不会出任何差错。券商会为 GTC 订单的存续时间设定自己的上限,而一张已经挂了 3 周的订单,与你 5 分钟前刚下的订单,表现截然不同。
本指南将说明 GTC 究竟是什么,它与当日有效(Day)、指定日期前有效(Good Till Date)、立即成交或取消(Immediate or Cancel)以及全部成交或取消(Fill or Kill)有何不同,也会讲到 GTC 订单可能让你措手不及的几种具体情形:部分成交、周末跳空,以及那种你确实忘了它还在的经典挂单。
核心要点
- 撤销前有效(GTC)是一种订单有效期设置,而不是单独的订单类型:它可以附加在限价单或止损单上。
- GTC 并不意味着“永久”。大多数券商都会限制 GTC 订单的有效时长,到期后订单会自动失效。
- 当日订单在交易时段收盘时失效。GTC 订单可以存续数周,这正是它有用之处,偶尔也是风险所在。
- GTC 订单仍可能分批成交,可能被周末的价格跳空跳过,也可能被遗忘,一直挂到市场最终触及为止。
- 订单有效期设置因平台和券商而异,因此在依赖 GTC 处理任何重要事项之前,值得先确认你账户的具体规则。
撤销前有效是什么意思?
撤销前有效订单会一直在市场中挂着,直到以下三种情况之一发生:订单成交、你手动撤销,或者券商自己的到期规则生效并自动将其关闭。根据美国证券交易委员会(SEC)对 GTC 订单的说明,经纪公司通常会限制投资者保留 GTC 订单的时长,而且这一上限因公司而异。

最后这一点经常被忽略。很多人一听到“撤销前有效”,就以为是无限期。实际上,除非平台明确另有说明,大多数交易场所会在一段固定时间后悄悄关闭 GTC 订单,常见时长为 30 至 90 天,视券商而定。应当把 GTC 理解为“存续时间长,但有上限”,而不是“永久有效”。
快速了解
- 在财报发布前挂出一张 GTC 买入限价单,然后忘了它的存在,几周之后价格一旦回落到你设定的水平,它仍然可能成交。
GTC 是有效期设置,而不是订单类型
很多困惑就是从这里开始的。GTC 并不是用来替代限价单或止损单的交易方式,而是附加在这些订单上的有效期。买入限价单可以是 GTC,卖出止损单也可以是 GTC。
在大多数平台上,追踪止损单同样可以设为 GTC。订单类型决定它如何成交;有效期设置则决定它在成交之前最多可以等待多久。
订单类型 | 能否使用 GTC? | 常见有效期选项 |
|---|---|---|
市价单 | 不能 | 立即成交,无需设置有效期 |
限价单(买入或卖出) | 能 | Day、GTC、GTD |
止损单 | 能 | Day、GTC、GTD |
止损限价单 | 能 | Day、GTC、GTD |
追踪止损单 | 能,大多数平台支持 | Day、GTC |
这一点很重要,因为 GTC 的风险其实并不在于 GTC 本身,而在于它所附加的订单类型,只是被放到了长得多的时间窗口中。
一张在市价下方 3 个价位挂了 2 周的 GTC 买入限价单,其成交机制与 5 分钟前下的限价单完全相同。区别只在于,它经历了 2 周的新闻、跳空和波动,而这些是当日订单永远遇不到的。

Day、GTC、Good Till Date、IOC 与 FOK 的区别
你下的每一张订单,除了价格指令之外,还需要一个有效期指令,而下面这 5 种几乎涵盖了你在零售交易平台上会遇到的所有情形。
设置 | 有效至…… | 是否允许部分成交? |
|---|---|---|
当日有效(Day) | 当前交易时段收盘 | 是 |
撤销前有效(GTC) | 成交、撤销,或达到券商规定的最长时限 | 是 |
指定日期前有效(GTD) | 你设定的具体日期和时间 | 是 |
立即成交或取消(IOC) | 立即,未成交部分取消 | 是 |
全部成交或取消(FOK) | 立即,否则整张订单取消 | 否 |
Day 是大多数平台默认的设置:如果没有成交,收盘时订单即告失效,仅此而已。GTC 则把这一期限大幅延长,但受券商上限约束。指定日期前有效介于两者之间,由你自行选择确切的到期时间,而不是依赖券商的默认设置。
IOC 和 FOK 则处于另一个极端,它们是为应在几秒内完成的订单设计的,而不是为存续数日的订单设计的,因此它们更多出现在市价单的实际成交方式中,而不是关于长期挂单的讨论里。
下图比较了这 5 种设置的持续时间,由于 IOC 和 FOK 几乎瞬间完成,与 GTC 长得多的跨度相比悬殊,因此采用了对数坐标。
GTC 限价单的运作过程
假设 EUR/USD 目前报 1.0900,而你认为真正想买入的位置是 1.0850。你下了一张价格为 1.0850 的 GTC 买入限价单,然后关闭了平台。价格连续 11 天都不配合,在 1.0870–1.0910 区间内横向震荡。到第 12 天,一项数据公布将价格打压至 1.0848,短暂触及你的价位,你的订单成交。
GTC 订单 | 触发条件…… | 转变为 | 常见用途 |
|---|---|---|---|
买入/卖出限价单 | 价格到达你设定的水平 | 以该价格或更优价格成交 | 在优于当前市价的水平入场 |
止损单 | 价格穿越你的止损水平 | 市价单 | 限制亏损或在突破时入场 |
追踪止损单 | 价格反向运行,达到设定的追踪距离 | 市价单 | 在持仓朝有利方向运行时锁定收益 |
这个例子就是 GTC 的全部卖点:你只需设定一次想要的价格,等待的事交给订单来做。成交机制本身与普通限价单没有区别,价格触及你的价位并不保证一定成交,而如果 1.0850 处挂出的成交量不足以覆盖你的全部仓位,你仍然面临部分成交的可能。

GTC 止损单的运作过程
止损单在更长的时间跨度内也是同样的运作方式。挂在多头持仓下方的 GTC 卖出止损单,只要持仓还在,就会一直作为保护存在,这可能是几天,也可能是几个月,取决于你的持仓周期。
一旦价格穿越你的止损水平,它就会转为市价单,以下一个可用价格成交,与任何止损单无异,只不过它可能在你设置几周之后才被触发,而你早已忘了自己选的具体价位。

追踪止损会让情况稍微复杂一些。GTC 追踪止损单会随着价格朝有利方向运行而不断调整,这意味着它今天实际所处的水平,可能与你最初设置的位置相差很大。
这对于在长期持仓中锁定收益很有用,但也意味着,你不能只看最初的入场价就知道止损目前在哪里,必须在平台上查看。
GTC 订单的部分成交
GTC 并不改变部分成交的运作方式,只是给它更多发生的时间。一张 10 手的 GTC 买入限价单,可能在周二成交 3 手,接着 4 天无成交,然后在下周一价格重新回到该水平时再成交 4 手,这一切都在同一个订单编号下进行。

视平台而定,剩余的 3 手会继续以原价挂单,直到也成交,或者订单最终到期。
日期 | 已成交手数 | 剩余手数 | 订单状态 |
|---|---|---|---|
下单时 | 0 | 10 | 挂单中 |
周二 | 3 | 7 | 部分成交 |
周三至周六 | 0 | 7 | 部分成交,仍在挂单 |
下周一 | +4(累计 7) | 3 | 部分成交 |
仍未成交 | 0 | 3 | 挂单中,直至成交、撤销或到期 |
如果你是围绕特定风险金额来确定仓位大小的,就需要密切关注这一点。一张 2 周后成交了 70% 的 GTC 订单,意味着你只有 70% 的仓位,而不是你原先计划的完整仓位,而且未成交的部分仍然有效,随时可能成交,除非你另行设置了提醒,否则不会有新的通知。
隔夜跳空、盘后交易与陈旧的 GTC 订单
这正是 GTC 订单与当日订单的显著区别所在。当日订单只需要熬过单个交易时段的波动。而 GTC 订单则要熬过它挂单期间发生的每一次隔夜跳空、周末休市和盘后波动,而这些都不会顾及你最初选定的价格水平。
市场 | 是否连续交易? | 主要跳空风险时段 |
|---|---|---|
主要外汇货币对 | 周一至周五,几乎 24 小时 | 周五收盘至周日/周一开盘 |
交易所上市股票 | 否,交易时段固定 | 隔夜以及盘前/盘后消息 |
加密货币 | 7×24 小时 | 周末跳空风险较低,但特定交易所的流动性缺口仍会出现 |
大宗商品/指数(CFD) | 大多连续交易,每日有一次休市 | 每日展期时段前后 |
跳空为何会出现
出现这类跳空,是因为市场并非连续交易。周末、节假日和盘后时段都会形成一段无法执行任何订单的空档,而此时价格实际上仍在通过新闻和其他场所在后台变动。交易恢复时,价格可能直接开在远超你止损水平的位置,中间没有任何价位可以触发你想要的成交价。
跳空对挂单的影响
买卖价差和整体流动性也是同样的道理:你设置价位时看似完全合理的水平,等到最终被触及时,所处的市场环境可能已经截然不同。
止损单一旦触发,会以第一个可用价格成交,因此跳空幅度足够大时,你的成交价会远远偏离所设水平,而不是恰好成交在该水平。限价单的情形可能更奇怪:如果价格直接跳过你的价位而没有在该价位成交,订单可能根本不会成交。
被遗忘的挂单问题
GTC 的另一个风险,与其说是机制问题,不如说是记性问题。你设好了一个价位,之后生活中事情一多,3 周后你已经完全忘了它的存在。然后它成交了,你突然持有一个今天并非有意开立的仓位,其价格和手数是你在截然不同的市场背景下设定的。
这并非假设。这种情况相当常见,以至于经验丰富的交易者会专门养成相应的习惯:按固定时间表检查未成交的 GTC 订单,撤销所有不再符合当前判断的订单,并把“就留着当 GTC 吧”视为需要重新审视的决定,而不是设置一次便再也不管的事。
在 MT5、cTrader 和 xPRO 上设置订单有效期
设置有效期的方式并不统一,各个平台处理 GTC、GTD 等设置的方式略有不同。以下是大多数交易者使用的三个平台上的设置位置。
MetaTrader 5
在 MetaTrader 5 上,任何挂单的到期字段都提供 Good Till Cancelled(撤销前有效)、Today(当日)和 Specified(指定)选项,你可以选择 GTC、当日到期,或精确的日期和时间。
cTrader 和 xPRO
cTrader 和 xPRO 提供的有效期控制与 MT5 大体相似,但具体措辞以及允许的最长 GTC 期限可能因平台而异。
在 cTrader 中,下挂单时你会看到 Expiry 字段默认设为 Good Till Cancelled,如果希望订单自动失效,可以改选 Good Till Date。cTrader 自身的最长 GTC 期限通常约为 [90 天],之后订单会被强制关闭。
在 xPRO 上,订单窗口中有类似的 Time in Force 或 Expiration 下拉菜单,通常提供 GTC、Day 和自定义日期选项。该平台对挂单中的 GTC 订单所规定的最长期限约为 [30 天]。
结语
GTC 为你换来耐心。只需设定一次价格,让订单替你等待。但代价是,在你看不到的时候发生的一切它都要经历:周末跳空、隔夜新闻、几周毫无动静,然后在某个下午一下子全部成交。
这些在发生之前都不会显现。止损单可能这周顺利扛过一次跳空,下周就被一举击穿。限价单可能挂了一个月都没被触及,然后在你从未留意的 5 分钟尖峰中成交。正确读懂订单状态,并大致清楚账户里有哪些订单还挂着,就已经成功了大半。
常见问题
GTC 订单真的会永远有效吗?
不会。它会一直有效,直到成交、被你撤销,或者达到券商自己的到期限制,通常在 30 至 90 天之间。
我可以随时撤销 GTC 订单吗?
可以,只要在成交之前随时都能撤销。撤销方式与其他任何挂单相同。
GTC 订单会在常规交易时间之外成交吗?
视市场而定。外汇和 CFD 在各个交易时段之间几乎 24 小时交易,因此可以,它可能在大多数人认为的正常时间之外成交。交易时段固定的交易所上市股票,通常只会在该交易所开市期间成交。
GTC 订单仍然可能部分成交吗?
可以,与当日订单完全一样。如果你的价位上只有部分成交量可用,其余部分会在同一 GTC 设置下继续挂单,直到成交、被撤销或到期。
如果价格在周末跳空,我的 GTC 订单会怎样?
如果价格直接跳过你的价位而没有在该价位成交,止损单可能远在你设定的价位之外成交,而限价单如果价格在越过时从未真正触及它,则可能被完全跳过。