在币安合约下限价买单,价格填得比现价高出一截,点下单后弹出「limit price can't be higher than ……」这样的提示,后面跟着一个具体价格,单子根本没进订单簿。这不是网络卡了,是交易所给限价单划的价格边界:买单不能高过上限,卖单不能低过下限。
这条线只拦一个方向。往对自己有利的方向挂——买单挂在现价下方很远、卖单挂在上方很远——不受它约束,那叫等行情。被拦下的,是「愿意比现价贵很多去买」或「愿意比现价便宜很多去卖」的单。
币安合约限价单的价格上限和下限:标记价格乘一个比例
币安帮助中心《合约下单失败汇总》(2026 年 4 月 7 日更新)给的规则是:
限价买单价格 ≤ (1 + 上限比例) × 当前标记价格限价卖单价格 ≥ (1 − 下限比例) × 当前标记价格
注意参照的是标记价格,不是盘口上跳动的最新成交价。两个价平时贴得很近,行情一急就会拉开,于是同一个数字,前一秒能挂、后一秒被拒。标记价格是怎么算出来的,可以看强平价和标记价格那篇。
比例写在U 本位合约交易规则页「限价订单价格上限/下限比例」那一列,每个合约单独定。本文规则和接口查于 2026 年 10 月 27 日;下单时重新读取对应合约的表格和接口返回值。当天页面显示,BTCUSDT、ETHUSDT 永续是 3% / 3%,BCHUSDT、XRPUSDT 是 5% / 5%,LINKUSDT 是 10% / 10%。同一天查币安的公开接口 exchangeInfo,BTCUSDT 的 PERCENT_PRICE 过滤器写着 multiplierUp 1.0300、multiplierDown 0.9700,和表里的 3% 是同一个数的两种写法。

标记价格 80,000 时,限价买单最高能挂到多少
假设 BTCUSDT 永续此刻的标记价格是 80,000 USDT,比例按 3% 算:
买单上限 = 80,000 × 1.03 = 82,400卖单下限 = 80,000 × 0.97 = 77,600
只看这条价格规则,买单 82,400、卖单 77,600 恰好合规,买单 82,500、卖单 77,500 则超限。买单挂 70,000、卖单挂 90,000,也没有越过各自受限的那一侧。不过订单还要满足最低与最高价格、价格步长、数量、保证金和持仓限制;通过这一项不等于提交成功。
卖单这边有一种写法最容易撞上这道墙:标记价格和最新价都为 80,000,想「跌到 77,000 就卖掉」,于是挂一张 77,000 的限价卖单。规则看到的是「比标记价格低 3.75% 还要卖」,直接挡回。就算没被挡,这张单也做不了止损——普通限价卖单若低于或等于当前买一,会立即尝试与可匹配的买单成交,不会等跌到委托价才启动;能卖掉多少还取决于深度和订单设置。想等价格跌到某处再卖,该用的是条件单,触发价和委托价怎么分,见止盈止损和条件单怎么设。
欧易的最高买价、最低卖价:指数价格还要加上平均溢价
欧易把这套机制叫「限价规则」。帮助中心的限价规则说明(2026 年 8 月 27 日更新)写的是:系统实时算出最高限价和最低限价,买单高于最高、卖单低于最低就被拒,开仓和平仓都适用。
它的基准换成了对应交易对的指数价格。合约上线后的头 10 分钟,上下限是「指数 × (1 ± X)」;10 分钟之后,再叠加最近 N 分钟合约中间价相对指数的平均溢价,外面用「指数 × (1 ± Z)」封顶。X、Y、Z 每个合约不同,说明页只给参数名,实时数值要去合约的市场信息页查。
完整算式里,设 I 为指数价格、P 为最近 N 分钟的平均溢价:最高买价 = min[max(I, I × (1 + Y) + P), I × (1 + Z)];最低卖价 = max[min(I, I × (1 − Y) + P), I × (1 − Z)]。例如假设 I = 80,000 USDT、P = 0、Y = 0.5%、Z = 3%,则最高买价为 80,400,最低卖价为 79,600。
下单前可以读公开接口 /api/v5/public/price-limit?instId=BTC-USDT-SWAP,先看 enabled 是否启用,再读 buyLmt(最高买价)和 sellLmt(最低卖价)。本次返回值分别是 80,164.8 和 79,366.7 USDT;这是一时的上下限,不代表固定偏离标记价格 0.5%。想用偏高的限价买单尽快吃到卖单,应将自己的最高接受价与当时的 buyLmt 对照。用接口下单的,欧易文档提到可以设 pxAmendType 参数,让系统把超限的价格改到边界上,而不是直接拒单。
两家放在一起看,差别主要在三处:
| 币安 U 本位永续 | 欧易永续 | |
|---|---|---|
| 拿什么价当基准 | 标记价格 | 指数价格,再叠加近几分钟平均溢价 |
| BTC 永续限价怎样取值 | 本次交易规则表为上下各 3% | 读取当时的 buyLmt / sellLmt,不套固定百分比 |
| 实时边界去哪查 | 交易规则页,或 exchangeInfo 的 PERCENT_PRICE | 公开限价接口的 buyLmt / sellLmt |
市价单也有一条线:成交价离标记价格太远就停
币安那张交易规则表的最后一列叫「市价单价格上限/下限比例」,BTCUSDT 也是 3%。按同一篇 FAQ 的说法,流动性极差的时候,市价单可能成交不完或者直接失效——对手方最优价离标记价格超过这个比例,剩下的部分就不再往下吃。所以市价单并不是「多少钱都给我成交」,盘口被吃穿时,它会停在这条线附近。滑点本身是怎么出现的,见成交价和下单时看到的价不一样。
表里还有一列「价差保护阈值」,名字像,管的却是条件单:启用价格保护后,止盈止损触发那一刻,最新价和标记价格偏差太大就不触发。那一列在价格保护开关里单独拆过,别和这里的上下限混在一起。
限价单被拒以后,价格怎么改
先看提示里报的那个数。它就是这一刻的边界,买单被拒,报的是上限;卖单被拒,报的是下限。
然后想清楚自己要的是什么。要尽快成交,先核对限价是否能匹配当前对手价、是否仍在允许范围,再决定保留限价还是使用市价;市价有滑点,也可能因流动性和价格限制无法全部成交。要的是行情到了再成交,就别用反方向的限价单硬挂,换成条件单,或者把价格挂回有利的一侧。两种需求混在一张限价单里,正是被拒的根源。
写程序下单的,把边界当成实时算出来的东西:币安每个合约的 multiplierUp、multiplierDown 乘以下单前取到的标记价格,就是这一刻能用的范围。比例本身也会动,币安 2025 年 4 月 1 日就发过公告,调整了多个 U 本位永续合约的订单价格上限/下限比例,所以别把 3% 写死在代码里。
挂单范围的两个追问
为什么同一个价格,刚才能挂、现在挂不上?
上下限是用当前标记价格(欧易是指数价格加溢价)实时算的。标记价格往下走,买单上限跟着降;原来在上限以内的价格,过几秒就可能落到上限外面。被拒时看提示里给的新边界,按它重填。
上下限比例会变吗,去哪里看最新的?
会变。币安按合约分别设定,调整时发公告,最新值在合约交易规则页「限价订单价格上限/下限比例」一列,或接口 exchangeInfo 的 PERCENT_PRICE 过滤器;欧易的 X、Y、Z 参数在合约市场信息页,实时的最高买价、最低卖价可以用公开的限价接口查。