最近尝试自己写一个简单的程式 让这个bot可以代替手动去买币跟卖币
之前测试了几次看起来没问题
今天发现
https://reurl.cc/oeWD6j
我去用0.2bnb($88.25)买这个ANM代币
结果只换到价值$0.41的代币回来而已...
这笔钱就这样完全被吃掉了...
看了明细确定没被夹子攻击
https://reurl.cc/jkLdZq
我看别人的交易就大约有换到等值的代币
不知道为什么就唯独我的交易有问题
我调用的合约方法单纯是swapExactETHForTokens而已
path[0]是bnb address
function swapETHForTokens(address token, uint256 amount, address to) private
{
address[] memory path = new address[](2);
path[0] = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c;
path[1] = token;
pancakeswapV2Router.swapExactETHForTokens{
value: amount
}(
0,
path,
to,
block.timestamp
);
}
我猜可能的原因是
这个ANM代币是BUSD的交易对 不是BNB的交易对
我看别人的交易是先从BNB换成BUSD再换成ANM代币
而我的是直接从BNB换成ANM代币
不知道问题是不是出在这里?
可是如果从pancakeswap页面手动买不也是去呼叫swapExactETHForTokens
可是手动买的话看起来会先从BNB换成BUSD再换成ANM代币
不太懂为什么结果会不一样
另外我看网络上其他的bot也都是直接用BNB或WBNB去Swap一次而已
似乎也没有多一步去转成BUSD的动作
所以可能也不是我猜的原因
可是又想不出来还有什么别的问题 所以发文求助看看QQ