Class: LiquidityProvider
The LiquidityProvider class connects an offerLogic (or an EOA) to a market. It posts onchain offers.
Constructorsβ
constructorβ
β’ new LiquidityProvider(p): LiquidityProvider
Parametersβ
| Name | Type | 
|---|---|
p | ConstructionParams | 
Returnsβ
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:63
Propertiesβ
mgvβ
β’ mgv: Mangrove
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:54
logicβ
β’ Optional logic: OfferLogic
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:55
contractβ
β’ Optional contract: ILiquidityProvider
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:56
eoaβ
β’ Optional eoa: string
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:57
marketβ
β’ market: Market
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:58
prettyPβ
β’ prettyP: PrettyPrint
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:59
gasreqβ
β’ gasreq: number
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:60
tradeβ
β’ trade: Trade
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:61
Methodsβ
connectβ
βΈ connect(offerLogic, offerGasreq, p): Promise<LiquidityProvider>
Connects the logic to a Market in order to pass market orders. This assumes the underlying contract of offer logic is an ILiquidityProvider.
Parametersβ
| Name | Type | Description | 
|---|---|---|
offerLogic | OfferLogic | The offer logic. | 
offerGasreq | number | The gas required for the offer execution on the offer logic. | 
p | Market | { base: string ; quote: string ; tickSpacing: number ; bookOptions?: BookOptions  } | The market to connect to. Can be a Market object or a market descriptor. | 
Returnsβ
Promise<LiquidityProvider>
A LiquidityProvider.
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:89
computeOfferProvisionβ
βΈ computeOfferProvision(ba, opts?): Promise<Big>
Gets the missing provision in ethers for an offer to be posted or updated with the given parameters, while taking already locked provision into account.
Parametersβ
| Name | Type | Description | 
|---|---|---|
ba | BA | bids or asks | 
opts | Object | optional parameters for the calculation. | 
opts.id? | number | the id of the offer to update. If undefined, then the offer is a new offer and nothing is locked. | 
opts.gasreq? | number | gas required for the offer execution. If undefined, the liquidity provider's gasreq. | 
opts.gasprice? | number | gas price to use for the calculation. If undefined, then Mangrove's current gas price is used. | 
Returnsβ
Promise<Big>
the additional required provision, in ethers.
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:126
computeBidProvisionβ
βΈ computeBidProvision(opts?): Promise<Big>
Gets the missing provision in ethers for a bid using computeOfferProvision.
Parametersβ
| Name | Type | 
|---|---|
opts | Object | 
opts.id? | number | 
opts.gasreq? | number | 
opts.gasprice? | number | 
Returnsβ
Promise<Big>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:156
computeAskProvisionβ
βΈ computeAskProvision(opts?): Promise<Big>
Gets the missing provision in ethers for an ask using computeOfferProvision.
Parametersβ
| Name | Type | 
|---|---|
opts | Object | 
opts.id? | number | 
opts.gasreq? | number | 
opts.gasprice? | number | 
Returnsβ
Promise<Big>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:163
asksβ
βΈ asks(): Offer[]
List all of the maker's asks in the cache
Returnsβ
Offer[]
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:170
bidsβ
βΈ bids(): Offer[]
List all of the maker's bids in the cache
Returnsβ
Offer[]
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:180
consoleAsksβ
βΈ consoleAsks(filter?): void
Pretty prints the current state of the asks for the maker
Parametersβ
| Name | Type | 
|---|---|
filter? | prettyPrintFilter | 
Returnsβ
void
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:190
consoleBidsβ
βΈ consoleBids(filter?): void
Pretty prints the current state of the bids for the maker
Parametersβ
| Name | Type | 
|---|---|
filter? | prettyPrintFilter | 
Returnsβ
void
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:195
normalizeOfferParamsβ
βΈ normalizeOfferParams(p, market): Object
Given offer params (bids/asks + price info as wants&gives or price&volume),
return {tick,gives,fund}
Parametersβ
| Name | Type | 
|---|---|
p | { ba: BA  } & OfferParams | 
market | KeyResolvedForCalculation | 
Returnsβ
Object
| Name | Type | 
|---|---|
tick | number | 
gives | Big | 
fund? | BigSource | 
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:203
newAskβ
βΈ newAsk(p, overrides?): Promise<{ id: number ; event: Log  }>
Post a new ask
Parametersβ
| Name | Type | 
|---|---|
p | OfferParams | 
overrides | Overrides | 
Returnsβ
Promise<{ id: number ; event: Log  }>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:238
newBidβ
βΈ newBid(p, overrides?): Promise<{ id: number ; event: Log  }>
Post a new bid
Parametersβ
| Name | Type | 
|---|---|
p | OfferParams | 
overrides | Overrides | 
Returnsβ
Promise<{ id: number ; event: Log  }>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:246
newOfferβ
βΈ newOffer(p, overrides?): Promise<{ id: number ; event: Log  }>
Parametersβ
| Name | Type | 
|---|---|
p | { ba: BA  } & OfferParams | 
overrides | Overrides | 
Returnsβ
Promise<{ id: number ; event: Log  }>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:267
updateAskβ
βΈ updateAsk(id, p, overrides?): Promise<{ event: Log  }>
to change volume and price of the offer, and update its gas requirement and fund 0.01 ether to maker balance
Parametersβ
| Name | Type | 
|---|---|
id | number | 
p | OfferParams | 
overrides | PayableOverrides | 
Returnsβ
Promise<{ event: Log  }>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:353
updateBidβ
βΈ updateBid(id, p, overrides?): Promise<{ event: Log  }>
Update an existing offer
Parametersβ
| Name | Type | 
|---|---|
id | number | 
p | OfferParams | 
overrides | PayableOverrides | 
Returnsβ
Promise<{ event: Log  }>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:362
updateOfferβ
βΈ updateOffer(id, p, overrides?): Promise<{ event: Log  }>
Parametersβ
| Name | Type | 
|---|---|
id | number | 
p | { ba: BA  } & OfferParams | 
overrides | PayableOverrides | 
Returnsβ
Promise<{ event: Log  }>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:374
retractAskβ
βΈ retractAsk(id, deprovision?, overrides?): Promise<void>
Cancel an ask. If deprovision is true, will return the offer's provision to the maker balance at Mangrove.
Parametersβ
| Name | Type | Default value | 
|---|---|---|
id | number | undefined | 
deprovision | boolean | false | 
overrides | Overrides | {} | 
Returnsβ
Promise<void>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:443
retractBidβ
βΈ retractBid(id, deprovision?, overrides?): Promise<void>
Cancel a bid. If deprovision is true, will return the offer's provision to the maker balance at Mangrove.
Parametersβ
| Name | Type | Default value | 
|---|---|---|
id | number | undefined | 
deprovision | boolean | false | 
overrides | Overrides | {} | 
Returnsβ
Promise<void>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:452
retractOfferβ
βΈ retractOffer(ba, id, deprovision?, overrides?): Promise<void>
Parametersβ
| Name | Type | Default value | 
|---|---|---|
ba | BA | undefined | 
id | number | undefined | 
deprovision | boolean | false | 
overrides | Overrides | {} | 
Returnsβ
Promise<void>
Defined inβ
@mangrovedao/mangrove.js/src/liquidityProvider.ts:461