用bot買幣只換到極少量的代幣 - 數位貨幣

Table of Contents

最近嘗試自己寫一個簡單的程式 讓這個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

--

All Comments

Carol avatarCarol2022-04-08
就像你說的,ANM-BNB這個pair深度不夠吧。如果是這個原
因,你的path用BNB-BUSD-ANM就可以
Ula avatarUla2022-04-09
…手動買網頁會有router搜尋可以用的交易對
你call function 要自己加router path,也就是path=[bnb,b
usd,AMM]
你沒給正確path,當然只換到一點點….
Franklin avatarFranklin2022-04-11
下次記得用getAmountsOut檢查
一下,正常來講都會有這一步
檢查
Aaliyah avatarAaliyah2022-04-11
有這個pair只是深度兩百鎂,你投88鎂滑價到不行
0x09f9bCf6b3c6bd4B1dEf38b5791C6F4425224F65
你要不回來很正常,你以為其他bot都是吃素的嗎,有一筆單跟
在你後面把profit套出來了
0x3fd8cee0ba4e2181d07d046655fab12b10c6a72da206b0dce0e4
cca29bbe951d
Faithe avatarFaithe2022-04-12
被夾了
Thomas avatarThomas2022-04-11
要試錯先用測試網吧
Eden avatarEden2022-04-12
測試網,不管做什麼尤其是寫程式,必須先測試
Thomas avatarThomas2022-04-11
小白只看的懂一點上面大大們的解釋,先推目前這裡還清