Exchange Service
Summary
Retrieve the OasisExchangeService (or alternative implementation) through maker.service('exchange')
. The exchange service allows to buy and sell DAI, MKR, and other tokens. The default OasisExchangeService implementation uses the OasisDEX OTC market for this.
Requires one of the exchange plugins to be in use.
const exchange = maker.service('exchange');
sellDai
Sell a set amount of DAI and receive another token in return.
Parameters
daiAmount
- Amount of DAI to sell.tokenSymbol
- Token to receive in return.minFillAmount
- Minimum amount to receive in return.
Returns: promise (resolves to OasisOrder once mined)
// Sell 100.00 DAI for 0.30 WETH or more.
const sellOrder = await exchange.sellDai('100.0', 'WETH', '0.30');
buyDai
Buy a set amount of DAI and give another token in return.
Parameters
daiAmount
- Amount of DAI to buy.tokenSymbol
- Token to give in return.minFillAmount
- Maximum amount to give in return.
Returns: promise (resolves to OasisOrder once mined)
// Buy 100.00 DAI for 0.30 WETH or less.
const buyOrder = await exchange.buyDai('100.0', 'WETH', '0.35');
OasisOrder
OasisOrders
have a few methods: fillAmount
: amount of token received in exchange fees()
: amount of ether spent on gas created()
: timestamp of when transaction was mined
const buyOrder = await exchange.buyDai('100.0', 'WETH', '0.35');
const fillAmount = buyOrder.fillAmount();
const gasPaid = buyOrder.fees();
const created = buyOrder.created();
Last updated