Unlocking liquidity
import {SimpleRouter} from "@mgv-strats/src/strategies/routers/SimpleRouter.sol"; Direct.RouterParams({routerImplementation: new SimpleRouter(), fundOwner: deployer, strict: true}) router().bind(address(this));
router().setAdmin(deployer);import {Direct} from "@mgv-strats/src/strategies/offer_maker/abstract/Direct.sol";
import {ILiquidityProvider} from "@mgv-strats/src/strategies/interfaces/ILiquidityProvider.sol";
import {IMangrove} from "@mgv/src/IMangrove.sol";
import {MgvLib, OLKey} from "@mgv/src/core/MgvLib.sol";
import {Tick} from "@mgv/lib/core/TickLib.sol";
import {SimpleRouter} from "@mgv-strats/src/strategies/routers/SimpleRouter.sol";
/// @title An example offer maker used in tutorials
contract OfferMakerTutorial is Direct, ILiquidityProvider {
///@notice Constructor
///@param mgv The core Mangrove contract
///@param deployer The address of the deployer
constructor(IMangrove mgv, address deployer)
// Pass on the reference to the core mangrove contract
Direct(
mgv,
// Use a router - i.e., transfer tokens to and from deployer
Direct.RouterParams({routerImplementation: new SimpleRouter(), fundOwner: deployer, strict: true})
)
{
router().bind(address(this));
router().setAdmin(deployer);
}
...Last updated
Was this helpful?