在交易所下市价单,屏幕上会先告诉你成本:盘口价差加滑点预估。在去中心化池子下市价单,界面也会给一个「价格影响」百分比,但很多人不知道这个数字是怎么来的,更不知道同一个数字在不同金额的单子之间根本不是同一把尺子。这篇文章给你造一把尺:从池子的储备出发,把任何一笔市价单的冲击成本提前量出来。
先建立基本概念。恒定乘积池里两种资产储备的乘积在成交前后不变,价格由储备比例决定。你往里塞买入资产,池子按比例吐出另一种,吐着吐着单价越来越差——这个「越买越贵」的曲线就是冲击成本的全部来源。池子越大,同样的单子推动价格越少;单子越大,推动越多,而且是加速的:买入金额占池子深度的比例每翻一倍,价格位移大致按同一比例往上走,不是一比一线性。量级的直觉是:一笔相当于池子储备百分之几的单子,价格位移和这个百分比同量级;一笔相当于池子一倍的单子,价格直接翻着跟头走。
有了这个模型,一把实用的「深度尺」就出来了。尺子的刻度是:这笔单会让价格动多少,等于「单子净额除以(深度加上单子净额)」——买方向上,成交后价格上移的比例约等于单子金额除以池子另一侧的储备加单子金额。举个尺子的用法:一侧储备一千万美元的池子,你下五十万美元的买单,位移约在百分之五以内;把单子放大到一百万,位移不是翻倍而是接近百分之十。你的真实成交均价比盘口第一档差一半的这个位置,就是这把尺给出的冲击成本估计。它和手续费是两笔账:费率是明码,冲击是你的单子自己给自己加价。
集中流动性的池子要把尺子改一下刻度:资金不是铺满整个价格轴,而是堆在你选的价格区间里。于是深度尺变成两段——只要你的单子没把价格推出当前流动性密集的区间,有效深度比总储备看起来厚,位移更小;一旦推出密集区,剩余深度的断层会让最后几笔成交突然变贵。所以看集中流动性池子的深度尺,看的不是池子总价值,而是你目标价格附近那一段区间里堆了多少钱。区块浏览器和数据面板能看到区间分布的近似图,估成本时拿「附近密集区深度」当代入值,比拿总值靠谱得多。
实操上这把尺怎么用?下单前先做三个读数。第一,从池子页面或链上直接读两侧储备,确认计价资产和你手上的资产没有精度错位(小数位不同的代币会让估值差几个数量级)。第二,用尺子估一遍自己这一笔的位移;如果超过你能接受的阈值,把单子拆成几段分批下,中间隔几个区块,让套利者把你的价格拉回来一部分——拆单省的是冲击,多付的是多次 gas 和中间的价格漂移风险,两头都要算。第三,查有没有聚合器路由:同样一笔大单被路由器拆到多个池子平行成交,等效深度叠加,整把尺的刻度都会变得对你友好。
三个容易踩的坑收尾。第一个坑是把「价格影响」百分比当成手续费之外的固定成本,其实它是动态函数,同一笔单子在网络拥堵、流动性被临时抽走的时点会显著变差,所以大额操作前重新读一次储备,别看缓存。第二个坑是忘了代币的转账税:带转账费的代币进池再出池,每段路程都固定漏一笔,它不进价格公式,但真实滑点=池子位移+税费漏损,两项要分开估。第三个坑是拿大池子的尺子量小池子的同额交易:深度和单子金额哪个大,哪个才是主导变量。
这把尺的边界也要说清:它只建模池子内部的机械位移,不建模你的交易在内存池里被抢先(被夹的成本可能远超位移估计),也不建模拆单被同一双眼睛识别后的二次收割。所以它适合当「地板估计」:真实成本通常比尺子量出来的高,只有配上私有提交、拆单节奏和合适时点,你才可能把成本压回尺子附近。池子参数和界面显示都会改版,具体协议的价格影响算法请以其合约和官方文档为准。交易有滑点与被夹风险,本文只做机制说明,不构成投资建议。

发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。