10 关于getAmountsOut

1.对于有手续费的代币用pancake路由getAmountsOut方法计算出来的数组中最后一个值是扣除手续费后的值吗?对于貔貅盘,用getAmountsOut方法计算出的最后一个值是否为0?
2.我该如何计算代币买卖的手续费?

请先 登录 后评论

最佳答案 2022-03-27 19:12

getAmountsOut 的计算跟根据pair里面的reserve0,reserve1计算来的。
你也可以理解是根据pair里面两个代币余额。 这个计算并没有考虑token会不会在转账的过程中扣除%多少的手续费,也就是理想状态的兑换

对于是不是貔貅盘没有关系, 貔貅盘只是限制不让你转账,或者限制转账数量等

兑换数量

let expectedAmount = getAmountsOut();
let slippageFloat = 0.5;
let minOut = (10000/(slippageFloat * 100 + 10000)) * expectedAmount
请先 登录 后评论

其它 5 个回答

合约开发 - 开发工程师

貔貅通过这个是判断不出来的 你可以写个合约 买卖在一个交易里 通过估算gas 判断是否 是貔貅盘
代币的手续费 都是写在代币里面的 你可以 看他们代币有没有开源 看下代码

请先 登录 后评论
凯伦 ?

如果这样的话,我想知道代币的手续费应该怎么做?

请先 登录 后评论
nono

1.利用mev-geth 的sendBundle
2.利用mulitcall
3.利用自有合约
4.交易gas
可以判断出token实际的手续费,已经是否允许正常交易,及买入卖出

请先 登录 后评论
用户_13024

这个minOut算错了吧???
不应该是
( 100-slippage)* getAmountsOut

???

请先 登录 后评论
用户_13024

(1- slippage / 100) * getAmountsOut

请先 登录 后评论
  • 4 关注
  • 0 收藏,5450 浏览
  • 凯伦 ? 提出于 2022-03-25 11:02