Solidity

在 PancakeSwap 上尋找配對合約

  • December 5, 2021

有人解釋說,要在 PancakeSwap 上找到 pair 合約,所需要做的就是在bscscan ( 0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73) 上找到Pancakeswap 的 Factory 合約,getPair()在合約的 read 部分找到函式,並插入每個合約的地址貨幣對中的加密貨幣。

我為 WBNB 和 BUSD 做了這個​​:

  • WBNB合約地址:
0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c
  • BUSD合約地址:
0xe9e7cea3dedca5984780bafc599bd69add087d56

我得到了以下契約:

  • getPair()從Pancake Factory 合約上的函式獲取pair合約地址:
0x58F876857a02D6762E0101bb5C46A8c1ED44Dc16

到現在為止還挺好。獲得的合約顯示其流動資金池中價值約 2.44 億美元的 WBNB 和約相同的 BUSD。**但是!!…**我在網上隨機發現 PancakeSwap 上還有另一對合約,用於同一對加密貨幣(WBNB/BUSD):

現在我完全糊塗了。我以前認為 PancakeSwap 上只能存在一對 2 加密貨幣,但顯然這不准確。

我的問題:

PancakeSwap 不是只允許一對特定的加密貨幣有一個合約嗎?如果沒有getPair(),如果有多個可能的答案,PancakeSwap Factory 中的哪一對決定給你?如果只能存在一對,那我怎麼能找到這對的兩個合約呢?

您正在查看不同的 PancakeSwap 合約版本。例子:

煎餅路由器 V1 - 0x05ff2b0db69458a0750badebc4f9e13add608c7f

PancakeFactory V1 - 0xbcfccbde45ce874adcb698cc183debcf17952812

煎餅路由器 V2 - 0x10ed43c718714eb63d5aa57b78b54704e256024e

煎餅工廠 V2 - 0xca143ce32fe78f1f7019d7d551a6402fc5350c73

因此合約0x58F876857a02D6762E0101bb5C46A8c1ED44Dc16是存在於PankcakeRouter V2中的 WBNB/BUSD 對,合約0x1b96b92314c44b159149f7e0303511fb2fc4774f是存在於 PankcakeRouter.V2 中的WBNB /BUSD1對 它們是完全不同的貨幣對,具有不同的流動性(由於套利交易者的原因並沒有那麼不同)。每個版本都比以前的版本好,目前我只是看到不再支持V1(契約可能仍然有效,但 PancakeSwap 從他們的界面中刪除了它)。

正如我們所知,PancakeSwap 是 UniSwap 的一個分支,而 UniSwap 最近推出的V3具有另一組良好的功能。我不確定 PancakeSwap 是否會遵循V3

引用自:https://ethereum.stackexchange.com/questions/114966