Adding sETH to Symbiosis Liquidity Pool
This week comes with quite a serious update to our AMM pool that we’d like to cover in this article. If one possibly recalls, in Symbiosis v2 we’re using a single-sided AMM Pool (also called “Octopool”), which makes the cross-chain swaps processing extremely capital-efficient and cheap.
For details, you can always check docs.symbiosis.finance.
The idea is that the typical route in this pool comes through stables, or, representations of the stablecoins (so-called “sStables”) on the service chain.
- sUSDC for Polygon represents USDC on Polygon,
- sUSDC for Avalanche represents USDC on Avalanche,
- sUSDC for zkSync Era represents USDC on zkSync Era, etc.
All these sTokens are minted 1:1 with stablecoins, so all sTokens (sStables) in this Symbiosis Octopool have the same face value.
Now, we’re introducing a new entity in the Octopool — sETH.
What’s the reasoning behind it?
Let’s assume a user wants to swap ETH from Ethereum for ETH on Arbitrum, and she wants to get the maximum possible amount of tokens and pay less on-chain and cross-chain fees.
With the current pool design, any swap is intermediated through a stablecoin pool (i.e. we’re exchanging ETH to USDC ERC20, then swapping stables, then USDC Arbitrum is swapped to ETH Arbitrum).
There’s an apparent excessive step here, and we have to pay for it:
- Swapping on a separate DEX with 0.1–0.2%
- Paying in additional gas tokens for swap execution
Instead, we may swap with wrapping/unwrapping sETH between Ethereum and Arbitrum without the aforementioned costs.
So, from now on, for each cross-chain swap, Symbiosis finds 2 routes (a sequence of intermediate swaps):
The best route using bridging on stablecoins
Swap ETH to USDC on Ethereum → Mint sUSDC on s-chain → swap sUSDC (Ethereum) to sUSDC (Arbitrum) in Octopool → burn sUSDC to USDC on Arbitrum → swap USDC to ETH on Arbitrum
The best route using bridging on ETH
Send ETH on Ethereum → Mint sETH on s-chain → swap sETH (Ethereum) to sETH (Arbitrum) in Octopool → burn sETH to ETH on Arbitrum
Then Symbiosis compares these two routes and offers the best one for the user. Also, in the future, we can consider setting up a custom pool for other tokens/gas tokens based on the demand discovered in the protocol.
We’ve calculated that on average, such a design helps us achieve % a better price for certain swap destinations. For example, from Arbitrum One to zkSync. Let’s take a look:
ETH pool
Stablecoin pool
Perfection is perfected so… Stay tuned for the updates 👾