const BinanceSpot = require('./libs/BinanceSpot.js') const Config = require('../config/config.js') const ListenConfig = require('../config/listen-config.js') const PrivateConfig = require('./PrivateConfig.js') const MyKit = require('./kit/MyKit.js') const bs = new BinanceSpot(PrivateConfig.binanceAPIKey, PrivateConfig.binanceSecretKey) function findBalanceBySymbol(accountInfo, symbol='BUSD') { for (const asset of accountInfo.balances) { if (asset.asset === symbol) { return parseFloat(asset.free) } } return 0 } async function onTick() { const accountInfo = await bs.accountInfo() if (accountInfo && accountInfo.balances) { for (const token of ListenConfig.tokenList) { const amount = MyKit._N(findBalanceBySymbol(accountInfo, token.symbol), token.binanceDecimals) const pair = token.symbol + Config.baseToken.symbol if (amount >= Math.pow(10, -token.binanceDecimals)) { const orderRst = await bs.sell(pair, -1, amount) const time = MyKit.getTimeByMillisecond(new Date().getTime()) console.log(`[${time} 二级交易所产生新的卖出]币种:${token.symbol}, 数量:${amount}, 卖出(${Config.baseToken.symbol}):${orderRst.cummulativeQuoteQty}.`) console.log(`下单回执:${JSON.stringify(orderRst)}\n\n\n`) } } } } while (true) { try { await onTick() } catch (e) { console.log(e) } await MyKit.sleep(5000) }