你看着屏幕上的 0.55,点了一下市价买入,心里觉得成本就应该是 0.55 美元。结果成交一看,平均成本到了 0.58 甚至 0.6 美元。不是平台多扣了你钱,是市价单的规则决定了它只看速度不看价格。
核心问题:市价单买的是"当前能买到的最低价",不是"屏幕上显示的那个价"
这里有个概念要先说清楚,预测市场的成交规则和传统交易所一样:你在屏幕上看到的 0.55,通常是"最佳卖价"(Ask),也就是当前挂单里最便宜的那一份。问题是,如果只有 10 份挂在 0.55,而你一出手就是要买 100 份,系统会先把这 10 份吃掉,然后继续往上吃 0.56、0.57、0.58……直到凑够 100 份。你最后拿到的价格,是所有这些成交价的平均值——自然比你第一眼看到的 0.55 要高。
为什么实际成本会高于显示概率?
原因一:订单簿深度不够,滑点吃掉差价
Polymarket 用的是中央限价订单簿模式,订单簿里每一档价格的挂单量是有限的。如果你的市价买单金额超过了当前最优卖价那一档的总量,系统就会"往上吃"更深的价格。
就像去菜市场买菜,如果最便宜那家只有 10 斤,你要买 50 斤,就只能把后面几家贵点的也一起买了。平均下来,你付的钱一定比最便宜那家的标价要高。
这种情况在流动性差的市场里尤其严重。Polymarket 上有些市场的买卖价差(Spread)本身就很大,有的甚至有 5 美分以上的价差。你在这种市场上用市价单,相当于主动跳进价差的坑里,直接按最贵的价格成交。
原因二:平台手续费是额外扣除的,不是包含在价格里
Polymarket 市价单的手续费是从你的份额里直接扣的,不是从支付金额里另算。当份额价格很低时,这个问题会被急剧放大。
举个真实的例子,曾经有用户在"经济"类市场以 0.001 美元的价格买入 100 份份额,平台手续费算出来是 0.0948 美元。因为份额单价太低,这笔手续费折算成份额就是 94.8 份,用户最后只拿到 5.2 份份额,潜在收益从 100 美元缩水到 5.2 美元,实际费率高达 94.8%。虽然这个极端案例是公式漏洞导致的,已经修复,但它说明了一个核心问题:市价单的手续费是按成交金额比例算的,而不是直接算进你看到的价格里。 买得越便宜,手续费占份额比例越高。
原因三:成交机制存在"滑点容忍度"
Polymarket 市价单还有 FOK(Fill or Kill,全额成交否则取消)和 FAK(Fill and Kill,能成交多少算多少)两种执行模式。如果你选的是 FOK,系统会尝试一次性凑够你下单的数量,但为了凑够数量,可能会吃掉从 0.55 到 0.60 的好几个价位。如果你不提前设定滑点容忍度,成交价可能直接比预期高出好几个百分点。
风险提醒:在价差大、订单簿浅的市场里,市价单的实际成交价和显示价格之间的偏差,可能远超你的预期。你看到的 0.55 概率,只代表"当前最便宜一份的价格",不代表"买 100 份的价格"。
怎么做才能避免"买贵了"?
情况 A:如果你不急着成交
直接换成限价单(Limit Order)下单。限价单可以自己定最高买入价,不用担心被滑点吃掉利润。而且限价单是挂单(Maker),平台不收手续费,甚至可能给你返利。
情况 B:如果你急着成交
下单前花 10 秒钟看一眼订单簿深度。找到"L2 订单簿"数据,看当前最优卖价那一档的挂单量是多少。如果你要买的量超过这个数,要么减少下单量,要么在脑子里把成本往上提一提,做好心理准备。
情况 C:如果你已经遇到"买贵了"
下次别用市价单了。预测市场的市价单本质上是"接受当前市场最差价格"的工具。不要因为贪图方便而用市价单去买大额的仓位,这不是一个适合大额成交的工具。



