订单金额看起来足够,仍然可能因为价格或数量步长不合规则而被拒绝。排查时把三个问题分开:价格是不是允许的档位,数量是不是允许的增量,名义金额有没有达到要求。比如金额达到 10 USDT,数量仍可能不是允许的增量。
价格步长、数量步长,单位不同
价格步长约束单位资产的报价如何变化;数量步长约束下单数量如何变化。假设价格步长为零点零一,数量步长为零点零零一,这两个值不能互换。前者对应价格一百、一百点零一这样的档位,后者对应零点一零五、零点一零六这样的数量。
另一个常见混淆是“小数位数”和“合法增量”。步长为零点零五时,零点一五和零点一七都只有两位小数,但前者是步长的整数倍,后者不是。仅限制输入小数位,无法保证通过步长校验。最后显示了几个零,也不会改变一个数是不是合法倍数。
币安现货过滤器文档分别定义价格、数量与名义金额条件。实际参数来自具体交易对,本文下面的数值只是自行设置的练习,不代表任何交易对今天采用的门槛。
一个金额够、数量却不合格的例子
设价格为一百,数量为零点一零五五,最小名义金额为十,价格步长零点零一,数量步长零点零零一。价格一百符合价格步长;价格乘数量得到十点五五,也不低于示例的最小金额。但数量除以步长得到一百零五点五,不是整数,数量条件没有通过。
| 检查 | 算式 | 示例结果 |
|---|---|---|
| 价格档位 | 100 ÷ 0.01 = 10000 | 通过 |
| 数量增量 | 0.1055 ÷ 0.001 = 105.5 | 未通过 |
| 名义金额 | 100 × 0.1055 = 10.55 | 通过 |
若把数量改为零点一零五,数量步长条件通过,名义金额成为十点五,在这个示例里仍满足金额门槛。这个计算说明如何复核修改后的结果,不表示你应该自动减少数量。输入变化之后应重新核对全部条件,而不是只盯着最先报错的一项。
为什么不该无脑四舍五入
对齐数值,往往也改变交易意图。
把数量向上对齐,可能需要比原计划更多的资金;向下对齐,可能使金额跌到最低要求之下。价格也类似:提高买价和降低卖价都扩大了你接受的成交范围,不是纯粹的格式修正。因此校验工具适合指出问题,不应在你不知情时偷偷改掉数量或价格。
例如最低金额设为十,价格设为九十九,数量零点一零一时名义金额为九点九九九,仍低于十。它已经符合零点零零一的数量步长,却未通过金额要求。若按显示界面只保留两位金额小数,你可能看到十点零零而误以为已满足;应以实际规则与精确输入判断,不要用显示后的舍入数字代替原值。
在练习工具里输入这五个数
打开订单参数校验,按示例填入价格 100、数量 0.1055、最低金额 10、价格步长 0.01、数量步长 0.001。结果应指出数量不符合步长;再只把数量改为 0.105,比较金额从 10.55 变为 10.5。这两个数都是改动后的实际乘积,不要用界面四舍五入后的金额判断是否达到门槛。
工具最多处理八位小数,并清楚拒绝负数、零步长与超出支持精度的输入。它不会把无效内容当成零,也不读取账户资料。塞尔维亚语界面允许用小数逗号输入同一个数值;不论使用点号还是逗号,都应避免把千位分隔符和小数分隔符混在一起。
精确计算不等于完整模拟交易所。
工具没有读取当前交易对参数,也没有检查账户权限、余额、最小及最大数量、价格上下限、动态价格范围、订单数限制或其他规则。“三项通过”的意思,只是你填写的三项练习条件通过。
市价单不能机械套用限价乘数量
限价单有明确输入价格,教学时可以直接用这个价格和数量解释名义金额。市价单没有同样意义的用户限价,实际过滤规则可能使用指定参考价格或一段时间的价格统计,并由对应参数决定是否适用。不要把屏幕最新价乘以数量,就认定完全复制了平台对市价单的检查。
如果错误只在某个订单类型出现,保留订单类型也是排查的重要部分。同一交易对可能存在专门针对市价数量的条件,或不同的最小、最大名义金额设置。本文不把某个 API 字段当作每个普通界面必然展示的选项;实际入口如何提示,应以当前页面为准。
报错里出现这些名称,先查哪一项
若错误原文包含以下名称,可按币安的错误说明定位:
PRICE_FILTER:价格上下限及价格步长。LOT_SIZE:数量上下限及数量步长;不只是小数位。MIN_NOTIONAL:最低金额;NOTIONAL还要检查最高金额。
这些不是全部报错,也不一定是 App 的中文提示。金额已够却报 LOT_SIZE 时,继续加钱未必解决问题。
按错误指向检查,比同时改三个数更快
- 记录完整交易对、订单类型、买卖方向与错误原文,确认不是看错市场。
- 核对参数的取得时间,避免照搬其他交易对或旧截图中的门槛。
- 定位价格、数量或金额条件;若工具只覆盖其中几项,保留未覆盖部分。
- 每次只修改有依据的输入,再重新计算相互影响的条件。
- 正式提交前重新确认金额与目标数量;提交结果不清楚时先查询订单记录。
最后一步尤其容易省略。
某次输入被明确拒绝,和点击提交后网络断开、结果未知,不是同一种情况。后者不能因为你预期有参数错误,就直接当作没有创建订单。先查是否已有订单,再决定是否重新提交,避免校验问题演变成重复下单。
保留参数快照,下一次才知道变了什么
若同样输入昨天能用、今天不能用,先比较交易对、订单类型与当前参数,不要先下结论说账户异常。交易规则可能调整,复制的数值也可能来自另一个市场。把参数的来源和查看日期放在个人记录旁边,比保存一张只有报错字样的截图更有价值。
一条足够清楚的记录可以写成:“价格一百,数量零点一零五五;按当时填写的零点零零一步长检查,数量不是整数倍;金额十点五五另行满足示例门槛。”它把判断依据留了下来,之后即使参数变化,你仍能复原当时算过什么,而不会把示例规则误当作永久规定。
三个边界练习,把通过与未通过分开
练习甲只改变数量。价格一百、数量步长零点零零一、最低金额十。数量零点零九九满足步长,但金额九点九未达门槛;数量零点一满足步长,金额恰好十;数量零点一零一仍符合两项。这里边界是否包含等号来自我们采用的示例条件,不能靠页面颜色猜测。
练习乙只改变价格。
数量零点二,价格步长零点零五。价格五十点一可以写成一千零二个步长,价格五十点一二却不能。两者都有有限小数,也都有足够的示例金额;50.12 不是 0.05 的整数倍;两位小数也可能不符合步长。
| 输入 | 需要回答的问题 | 不能代替它的判断 |
|---|---|---|
| 价格 50.12,步长 0.05 | 是否为步长的整数倍 | 不能只看两位小数 |
| 数量 0.099,价格 100 | 9.9 是否满足最低金额 10 | 不能只看数量步长通过 |
| 数量 0.1,价格 100 | 边界金额 10 是否符合该规则 | 不能用别的交易对门槛替换 |
练习丙检查修改顺序。假设你为符合价格步长,把五十点一二改成五十点一,数量保持零点二。金额随之从十点零二四变成十点零二。如果你又改了数量,金额需要再算,不能保留上一次的绿色结果。多个输入同时变化时,应清楚知道每一项校验对应的是哪一版输入。
预算除以价格,得到的数量可以直接下单吗
假设预算为十,价格为九十九。直接相除得到一个循环小数,这个结果不能原样塞进只接受有限增量的数量框。你需要根据当前规则与自己的目标选择可接受的数量,然后重新计算实际金额;本页不会替你决定向上还是向下。
如果向下取到零点一零一,金额为九点九九九。它没有超出十的预算,却可能低于假设的十元最低门槛。若向上取到零点一零二,金额为十点零九八,又超过最初预算。两项意图在这个练习里未必能同时满足,不能为了得到“通过”而隐去其中一个约束。
工具应该把这个冲突显示出来。
清楚的提示可以是“当前数量满足步长,但金额低于你输入的门槛”;接下来是否调整预算、价格或放弃本次下单,需要由你决定。
复制数字时,检查它有没有被改写
从聊天、表格或浏览器复制参数,可能混入空格、千位符号或科学计数法。有些表格还会把很长的小数显示为缩略形式。输入工具之前,确认复制的是原始数值,而不是经过格式化的一段显示文字。若无法确认,回到参数来源查看完整值。
小数点和小数逗号也需要统一。将一点五写成逗号形式,在支持这种本地写法的工具里可以表示同一个数;但一串同时含点和逗号的数字可能有歧义。不要猜测解析器会怎样理解,先整理成该输入框明确支持的格式,再检查输出是否仍为你的原值。
保存结果时,把五个输入也一起留下:
- 价格与数量。
- 最低金额。
- 价格步长与数量步长。
只有“通过”两个字无法复算,也不能证明明天换一组规则后仍然通过。这里的验证结果始终属于一组具体输入。
通过输入检查之后,才轮到成交条件
一张被接受的限价单仍然可能等待。这并不推翻先前的参数检查:检查回答的是输入是否满足相应规则,撮合回答的是是否存在合适对手方。把这两步分开,才能理解为什么所有输入看起来正常,订单依然没有马上买满。
如果目前有开放订单但没有执行,可继续用限价单诊断核对方向、价格与数量。若已经完成一部分,先检查原单还有多少有效余量,不要把余量不够新单最低门槛误写成原单从未成交。
你也可以给自己的记录设置三个独立状态:“输入已复核”“提交结果已确认”“执行结果已核对”。第一项完成不自动完成后两项。工具显示通过时停在第一项,查到订单号与接受结果后再记录第二项,取得实际成交与终态后补第三项。这样能够避免一张绿色校验结果被误用为整笔交易成功的凭证。
如果没有查到订单号,先保留提交时间和原始错误信息,再查订单历史;不要用再次下单来测试上一笔是否成功。