one-task.js 961 B

1234567891011121314151617181920212223242526
  1. const OneTask = require('./task')
  2. const Context = require("./context");
  3. const Config = require("../config/config");
  4. const BinanceSpot = require("./binance/binance-spot");
  5. const BinanceKit = require("./binance/binance-kit");
  6. const IERC20 = require("./web3/ierc20-token");
  7. const Token = require("./token");
  8. OneTask.baseInit = async function() {
  9. this.context = new Context()
  10. // 获取lotSizeFilter
  11. const lotSizeFilterMap = await (async () => {
  12. const pairs = Object.values(Config.tokenMapping).map(coin => `${coin}${Config.baseToken.symbol}` )
  13. const exchangeInfo = await BinanceSpot.exchangeInfo(pairs)
  14. return BinanceKit.parseLotSizeFilterMap(exchangeInfo.symbols)
  15. })()
  16. // 初始化IERC20的token
  17. await IERC20.batchInit(this.context, Object.keys(Config.tokenMapping))
  18. // 初始化本地token,绑定binance与IERC20
  19. await Token.batchInit(this.context, Object.keys(Config.tokenMapping), lotSizeFilterMap)
  20. }
  21. module.exports = OneTask