为什么 toAmount 低于根据滑点值预期的数值?
为什么 toAmount 低于根据滑点值预期的数值?
toAmount 是估算的交换后数量。toAmountMin 是报价中的最低输出数量,反映适用的滑点以及报价中已应用的已知转账税调整。较低的 toAmount 可能由价格影响或市场波动造成。对于税率低于配置上限的转账收费代币,LI.FI 可能已经在 slippage 之外,按已知买入/卖出税调整了 toAmount 和 toAmountMin。请使用返回的 toAmountMin,不要只用 slippage 参数反推。该调整依赖可用的税率数据,不覆盖动态或未检测到的税。在适用税率检测的链上,检测到的买入税或卖出税达到或超过配置上限时,代币会被该项检查拒绝 — 见 代币支持与可用性。要筛除价格影响较高的路由,请使用 maxPriceImpact 参数。滑点与价格影响有什么区别?
滑点与价格影响有什么区别?
- 滑点:
toAmount与toAmountMin之间的差值 - 价格影响:原始报价与
toAmount之间的差值
在包含多个步骤的路由中,滑点和 toAmountMin 是如何运作的?
在包含多个步骤的路由中,滑点和 toAmountMin 是如何运作的?
在没有动态或特定工具默认值生效时,LI.FI 通常使用每步 0.5%(在 API 中为
0.005)。已启用 Smart Slippage 的集成商可能会改为获得由数据驱动的服务端默认值。滑点以从 0 到 1 的小数表示,其中 1 = 100%。例如,一条包含 swap + bridge + swap 的路由在此意义上可能导致总计 1.5% 的滑点,但也有一些例外:- 某些交易所,例如 Solana 上的交易所,在未设置滑点时可能会建议它们自己的滑点。
- 某些 bridge,例如处理小额时的 cBridge,可能会强制使用它们自己的滑点,以帮助确保交易成功执行。在这些情况下,我们会沿用该滑点。
1 或 100%,以小数表示。我们建议不要直接跟踪用户设置的滑点,而是跟踪我们报价中的 toAmountMin。这是我们承诺用户在滑点之后收到的数值。如果他们收到的少于此数量,则很可能有问题。我们在自己这一侧也会跟踪此数值,以便调查用户报告的交易。提高滑点能防止汇率变化吗?
提高滑点能防止汇率变化吗?
不能。提高滑点容忍度并不能防止费率变化。它只是在交易失败之前扩大了可接受的范围。
对于稳定币或主流代币,我应该使用多少滑点容忍度?
对于稳定币或主流代币,我应该使用多少滑点容忍度?
没有适用于所有情况的统一数值。0.5% 是常见的起点,但合适的数值取决于代币、链、交易规模和路由。如果你的集成商已启用 Smart Slippage,省略该参数可以让 LI.FI 选择由数据驱动的服务端默认值。
跨链交换的最佳滑点值是多少?
跨链交换的最佳滑点值是多少?
这取决于代币、链和数量。没有通用的数值。为减少失败:
- 立即执行报价
- 对于 Solana 同链交换,省略滑点参数,让 LI.FI 自动计算
LI.FI 如何计算价格影响,是否有用于筛选的最低金额?
LI.FI 如何计算价格影响,是否有用于筛选的最低金额?
LI.FI 使用输入代币与输出代币之间的美元价值差来计算价格影响。价格影响筛选不适用于低于 10 美元的交易。
我如何避免滑点错误?
我如何避免滑点错误?
- 立即执行报价
- 如果延迟则刷新报价
- 在你的 API 请求中提高允许的滑点
你们是否保证用户所收到的数量,以及滑点是如何运作的?
你们是否保证用户所收到的数量,以及滑点是如何运作的?
是的。在用户签名时会强制执行一个最低收到数量;执行必须至少交付该最低数量,否则会回滚。滑点之所以存在,是因为价格/流动性在报价与执行之间会发生变动。自动滑点可以根据资产流动性选择缓冲区(稳定币较低,长尾资产较高)。在没有动态或特定工具默认值生效时,LI.FI 通常使用约 0.5%,且最低数量略低于估算值,以吸收正常的波动。
有没有办法获得按代币单独给出的滑点建议,而不是一个固定值?
有没有办法获得按代币单独给出的滑点建议,而不是一个固定值?
是的,适用于已启用 Smart Slippage 的集成商。LI.FI 可以在生成路由前应用服务端默认值,并另外在已生成的路由步骤上返回建议字段
recommendedSlippage。两者可能不同,因为步骤补充阶段能够检查实际的中间代币,而之前的默认值计算不能。该字段的各种状态、建议值的推导方式、链和代币覆盖范围,以及它与 SDK 和 Widget 的 slippage 配置如何配合,参见 Smart Slippage。这是一项按集成商启用的企业级功能。
