Entry: Uniswap Hook Incubator Hackathon
Paper: AM-AMM
Biddog: Biddog
Miro: Miro board
Slides: Gamma slides
Presentation Video: Loom video
X: https://x.com/AtriumAcademy/status/1803882301396521222
- Convert topBid, nextBid just to use Epochs
- function bid(epoch) epoch != getEpoch() setSwapFeeRate()
- create balances[address]
- function deposit
- function withdraw() can't withdraw rent if the current manager
- setBidPayload() -> setSwapFeeRate()
- afterSwap - to redistribute the swap fee to the current manager (Lecky)
- _burnBidToken() -> _chargeRent() - we charge with bidToken
- Unit tests for current implementation.
- beforeSwap hook to update dynamic fee
- update Bid to have swapFee so that user could bid and set swapFee together
- hook initialisation to set contract address for AMAMM
- user firstly needs to add liquidity to obtain the pool token, then can use it as rent to bid
- "The current highest bidder in the ongoing auction, known as the manager, pays rent to liquidity providers." - need to send rent from AMAMM back to LP
- Integration test to deploy AMAMM first, then deploy hook contract and initialise with AMAMM address with all the test scenarios
- Record the video and prepare it for submission.
Integration test scenarios:
- As a user, I should be able to bid an epoch to be a manager so that I can collect all fees as expecting high volume
- As a user, I should be able to bid an epoch to be a manager so that I can set a high swap fee that I would be the only arbitrageur