勾了只挂单,单子为什么一提交就没了?
一张「挂在现价上」的买单,为什么当场成交了
BTC 订单表上的卖一是 64,000.1 USDT(示意价)。你想买一点,但不急,于是开了一张限价买单,价格填 64,000.1,心里想的是「挂在这儿等,顺便按挂单费率算」。
按下去,单子立刻全部成交。回头看成交明细,手续费按吃单收。
原因不复杂。64,000.1 正好是卖一,有人在这个价等着卖,你的买单一进场就和它撮合上了。限价单只保证价格不差于你写的数,不管你在这笔成交里是挂单方还是吃单方。几种基础单型各自保证什么、不保证什么,第一笔现货交易教程里有一张速查表。
第二次你换了做法,在高级限价委托里选了「只挂单(Post only)」,也有人叫它只做 Maker。价格还是填 64,000.1。这回单子一提交就没了,没有成交,也没有挂上去。
两次结果正好相反,背后是同一件事:这张单在提交那一刻,能不能和订单表上已有的单子撮合。普通限价单能撮合就直接成交;只挂单能撮合就直接取消。
欧易帮助中心《基础委托类型》对只挂单的描述是两句:「只挂单委托可保证会进入订单表,使用户成为做市商。如果只挂单委托可以立即与现有委托撮合,则会被取消。」前一句是它的用途,后一句是它的代价。
挂单和吃单差多少?按一个月 20 笔算
只挂单能省下的,就是挂单和吃单之间那点费率差。按欧易《交易手续费》页,普通用户现货挂单 0.08%、吃单 0.1%。同一页给了两个词的定义:挂单指进入订单表但不会立即成交的订单,吃单指可以与订单表上现有订单匹配并立即成交的订单。
拿普通用户费率算,一个月 20 笔、每笔 3,000 USDT:全吃单 60 USDT,全挂单 48 USDT。
单笔看,这点差额不起眼。它的分量在次数上:这个差额每笔都有,下得越多,累积起来越是一笔看得见的钱。
还有一个前提:费率差只在单子最终成交时才兑现。只挂单被撤,或者挂着一直没人来吃,省下的手续费是零,你想买的东西也没买到。这份便宜是拿「什么时候成交说不准」换来的。
只挂单被撤,是哪一步触发的
官方给的取消条件只有一条:可以立即与现有委托撮合。把它落到具体价格上,下面两条是我们按撮合规则做的推演,属于解读而非官方原话:
- 买单:你填的价格大于或等于当时订单表上的最低卖价,就能立即撮合,只挂单会被取消。
- 卖单:你填的价格小于或等于当时订单表上的最高买价,同理。
卖一 64,000.1 时,只挂单买价填 64,000.1,满足撮合条件,取消;改填 64,000.0,低于卖一,没有对手能立刻成交,它就进订单表挂着。
实际下单时撞上取消条件的,常见的有这几种情形:
- 盘口在你提交前后动了。看盘时卖一还是 64,000.2,填 64,000.1 觉得有一档余量;单子被处理时卖一已经落到 64,000.1 或更低。行情快的时候,这点时间足够盘口换一档。
- 想挂近一点好成交,直接填了对手方的最优价。对普通限价单,这是一张马上成交的单;对只挂单,这正好就是取消条件。
- 方向选反。本想挂卖单等涨,选成了买入,价格又填在现价上方,自然撞上卖盘。
被取消的结果,就是这张单没成交,也没留在订单表上。要不要重挂、挂在哪个价,由你重新决定。
如果你的只挂单隔三岔五就被取消,一般说明挂价离对手盘太近。往自己这一侧退一两档,被取消的次数会少下来,相应地成交会更慢。
只挂单、FOK、IOC 放进一张表
欧易把这三种放在高级限价委托里,和普通限价委托并列。普通限价委托默认「一直有效直至取消」:挂上去之后,你不撤它就一直在。高级限价委托的三个选项,改的都是提交那一刻怎么处理。
| 选项 | 会不会进订单表 | 提交那一刻怎么处理 | 《基础委托类型》原话 |
|---|---|---|---|
| 只挂单(Post only) | 会,而且只以进入订单表的方式存在 | 怕的是能立即成交。能立即撮合 → 整张取消;不能立即撮合 → 进订单表等对手 | 「只挂单委托可保证会进入订单表,使用户成为做市商。如果只挂单委托可以立即与现有委托撮合,则会被取消。」 |
| 全部成交或立即取消(FOK) | 不会留在订单表上 | 能立即全部成交 → 整张成交;凑不齐全部 → 整张取消,一点都不成交 | 「全部成交或立即取消委托必须立即全部成交,否则整个委托将被取消。」 |
| 立即成交并取消剩余(IOC) | 不会留在订单表上 | 能立即成交的部分成交,没成交的部分取消 | 「立即成交并取消剩余委托必须立即成交。委托中未成交的部分将被取消。」 |
FOK 和 IOC 都要求「立即」成交,没立即成交的部分都被取消,没有挂着等待的环节,所以表里写它们「不会留在订单表上」。
三行放在一起对照,只挂单要的是「不立即成交」,FOK 和 IOC 要的是「立即成交」。FOK 在立即之外还要求全部,IOC 允许只成交一部分。
用一个示意场景分清后两个:你要买 1 BTC,卖一那一档只挂着 0.4 BTC,再往上一档的价格已经超过你的限价。
- FOK:1 BTC 凑不齐,整张取消,一个币没买到。
- IOC:买到 0.4 BTC,剩下 0.6 BTC 取消。
- 普通限价单:买到 0.4 BTC,剩下 0.6 BTC 按你的限价挂在订单表上继续等。
- 只挂单:限价能和卖一撮合,整张取消,一个币也没买到。
什么时候用只挂单,什么时候别用
适合勾上的情形:
- 不赶时间的建仓或分批买入。本来就打算挂在卖一下方慢慢接,勾上只挂单几乎没有额外成本,还顺手防住了价格填错、变成吃单。
- 交易频次高。前面算过,差额按笔累积,下得越多,这个选项越值得养成习惯。
- 给自己定了「只按挂单费率成交」的规矩。只挂单等于把这条规矩交给撮合系统去执行,你不用每次下单前盯着盘口核对价格有没有越过对手价。
该取消勾选的情形:
- 要马上出来的时候。止损、减仓、行情急转想离场,这时你要的是成交。只挂单的取消条件,偏偏在你最想成交的那一刻起作用。
- 盘口跳得快的时候。价格一档档朝你这边压过来,挂价离对手盘近就容易被取消,离得远又追不上,反复重挂的麻烦比多付那点吃单费大。
- 金额很小、次数很少。差额按比例算,一笔 100 USDT 的单子,普通用户费率下挂单和吃单只差 0.02 USDT(100 × 0.02%)。
FOK 和 IOC 站在另一头。你需要立刻成交,又不愿意成交价超出自己的限价,就轮到它们:数量必须一次凑齐、凑不齐宁可不做,选 FOK;能成交多少算多少、剩下的不想留在订单表上,选 IOC。
第一次用这几个选项里的任何一个,先拿小额下一张,看实际结果和你预想的是否一致,再用在正经金额上。
公开来源
- 欧易帮助中心《基础委托类型》(全球中文版,2026-09-23 查看)。普通限价委托默认「一直有效直至取消」,以及只挂单、FOK、IOC 三段原话出自此页。
- 欧易《交易手续费》页(全球中文版,2026-09-23 查看)。普通用户的现货挂单、吃单费率,以及挂单与吃单的定义出自此页。
常见问
买价比最新成交价还低,只挂单为什么也被取消了?
取消条件对照的是订单表上的对手盘,跟最新成交价无关。价格刚跌过一段时,最新成交价可能还停在 1,005,卖一已经挂到了 1,000;这时买价填 1,002,比最新成交价低,却高于卖一,能立即撮合,照样取消。填价前看卖一,挂卖单就看买一,别看那个跳动的最新价。
只挂单挂上去以后成交了,这笔算挂单还是吃单?
只挂单要么进订单表,要么被取消,它成交只会是别人的单子来撮合它;欧易对挂单的定义正是进入订单表但不会立即成交的订单,所以这笔按挂单算。
FOK 和 IOC 按挂单还是吃单收费?
这两种的成交都发生在提交那一刻,是和订单表上已有的单子匹配,对照官方对吃单的定义,这部分成交属于吃单。想省手续费,这两个选项帮不上,它们解决的是成交数量和成交时间的问题。
能不能一张单同时选只挂单和 FOK?
欧易把只挂单、FOK、IOC 列为高级限价委托的三种选项。单看规则,只挂单要求不能立即成交,FOK 要求立即全部成交,两个条件放在同一张单上,找不到能同时满足的结果。三者按你这一单最怕什么来选一个。