Solidity
swapExactTokensForTokens 具有不同的一個_d重新開始____一種ddr和ss噸這address to?優化掉期
我已經花了一個小時來弄清楚如何使用我自己的智能合約在不同的交易所/DEX 之間執行以下交換訂單。在下圖中(最佳範例),有效地執行了交換。沒有中間步驟回到原始智能合約地址,代幣直接傳遞到下一個池(但通過另一個 DEX)。
優化範例:
如何在技術上做到這一點?不幸的是,我沒有用 管理它
swapExactTokensForTokens
,至少當我想指定address to
池時出現錯誤。在此範例中,交換被轉移回原始智能合約,並從合約中進行另一次交換。那效率不高,當然要消耗汽油!
我希望你能在這裡幫助我? 非常感謝你
您不必使用 Uniswap V2 路由器,而是可以直接與這些對進行互動。只需將確切的輸入量傳輸到該對,然後呼叫
swap()
該對傳遞下一個對作為to
。您可以使用
UniswapV2Library.getAmountsOut()
鏈上計算任意長路徑的正確數量。檢查程式碼
swapExactTokensForTokens()
以更好地了解如何執行這些操作。