#DEFI
Команда проекта Uniswap первой разработала и внедрила DEX на AMM с возможностью FlashSwap, именно ее в свое время форкнул проект SushiSwap. Большинство AMM DEX это форки Uniswap v2.
Существует Uniswap v3, но исходный код временно закрыт, из нововведений там введен функционал частичных обменов, например вместо 1bnb->100$, можно сделать два обмена c v2 и v3 парами: 0.5bnb->55$, 0.5bnb->49$, чтобы по итогу получить 104$.
Uniswap v2 стостоит из таких контрактов:
1. Deployer - деплоит Factory и Router
2. Factory - создает и хранит адреса задеплоеных Pair
3. Router - содержит упрощенные методы для совершения обменов любой длины, например bnb->usdc->cake->wbnb, которые задействуют factory и factory.pairs.
4. Pair - самая важная часть dex’a, потому что этот контракт владеет erc20 токенами, которые пользователи передают паре, чтобы получать комиссионные, пропорционально доле их капитала в паре. Pair содержит низкоуровневые функции swap, mint, burn. Внутри pair.swap возможно заказать flashSwap(когда сначала пара одалживает контракту токенов, но ожидает их возврата в той же транзакции).
Для рядового пользователя совершить обмен в Uniswap v2 означает открыть из stateless сайт, выбрать направление обмена и создать транзакцию, которая взаимодействует с Router контрактом, который в свою очередь с fаctory.pairs.
В протоколе не заложен функционал blacklist, который есть в usdt,usdc.
Ознакомиться с кодом factory
Посмотреть на популярность router (много pending транзакций)
Post #33
149