Making liquidity available
An offer on Mangrove usually points to a contract containing the offer logic and specifies what it is ready to deliver and its price. Offer are stored in offer lists.
Creating & Updating offersβ
Any Ethereum account can offer liquidity on Mangrove. New offers are created through the newOfferBy{Tick,Volume}
functions and updated through the updateOfferBy{Tick,Volume}
functions. The Creating & Updating offers section details how to use those Mangrove functions.
The Mangrove Strat Lib has a standard implementation of offer logic called MangroveOffer
, that automatically reposts the residual of your offer, if the offer was not fully taken.
Executing offersβ
After an offer has been created or updated, it can be executed by anyone. Upon execution, the offer's logic has an opportunity to source the liquidity it has promised. Refer to Executing Offers for details on how to structure your contract code in order to respond when its offers are executed.
Offer provisions and bountiesβ
Since offers on Mangrove can fail, a native token bounty is given to those who trigger failing offers, as compensation for the gas spent. This bounty is paid from a provision that offer owners must deposit with Mangrove when posting an offer. Refer to Offer provisions for details on how provisions and bounties work.