Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: VirtuSwap integration #676

Open
wants to merge 16 commits into
base: master
Choose a base branch
from

Conversation

AlexanderPokhilenko
Copy link

This PR adds support for a new DEX: VirtuSwap.

VirtuSwap
VirtuSwap mitigates the problem of high trading costs in pairs for which liquidity pools are small or inexistent. VirtuSwap solution relies on virtual liquidity pools, trades on which are executed by creating limited (in size and time) reserves of tokens that are not native to a pool. This novel pool architecture allows each pool to serve multiple trading pairs, increasing the returns to liquidity provision, and solving the problem of triangular trading costs.
A more detailed description is available in the whitepaper: https://virtuswap.io/docs/whitepaper.pdf

Deployment Addresses
VirtuSwap DEX contracts deployed on Polygon and Arbitrum, addresses can be found here: https://docs.virtuswap.io/virtuswap-documentation/technical-reference/deployment-addresses

Contract Code and Documentation
The contract code can be found in this repository: https://github.com/Virtuswap/v1-core
The documentation can be found on GitBook: https://docs.virtuswap.io/virtuswap-documentation

Integration
Since VirtuSwap is not a fork of another protocol, we had to develop our own adapter to support virtual pools: VirtuSwapAdapter.sol. This contract implements both interfaces: IAdapter and IBuyAdapter, and contains swapOnVirtuSwap and buyOnVirtuSwap functions for easier integration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant