For the complete documentation index, see llms.txt. This page is also available as Markdown.

Sell and buy orders

Using the API to pass taker orders on a Mangrove market.

Buying with cash or selling for cash can be done via the buy and sell functions of a Market instance. The code snippets below send limit buy (taker) orders on the market, with an allowed slippage of 2%:

// buy limit order for 100 base tokens at an average price of 0.1 quote per base
const buyResult = mgvMarket.buy({volume:100, price:0.1, slippage:2});
// limit order with a desired quantitiy
const buyResult_ = mgvMarket.buy({wants:100, gives:1000, slippage:2});
// sell limit order (selling 10 base tokens).
const sellResult = mgvMarket.sell({volume:10, price: 0.09, slippage:2});

sell and buy orders return a triple {takerGave:Big, takerGot:Big, penalty:Big} where:

  • takerGave is the total amount of base (for a sell) or quote (for a buy) tokens that the taker spent for the order

  • takerGot is the total amount of quote (for a sell) or base (for a buy) tokens that the taker received as a result of the order

  • penalty is the amount of native tokens the taker received to compensate for the gas lost of executing failing offer during the order execution (see offer bounty).

Last updated

Was this helpful?