syncOpenOrders = async (logger, symbols) => {
  if (openOrdersInterval) {
    clearInterval(openOrdersInterval);
  }

  // We do 40 seconds interval in case one of the orders missed from the websockets
  openOrdersInterval = setInterval(() => {
    errorHandlerWrapper(logger, 'Orders', async () => {
      const openOrders = await getOpenOrdersFromAPI(logger);

      const initializedSymbolOpenOrders = _.reduce(
        symbols,
        (obj, symbol) => {
          // eslint-disable-next-line no-param-reassign
          obj[symbol] = [];
          return obj;
        },
        {}
      );

      const symbolOpenOrders = _.groupBy(openOrders, 'symbol');

      const mergedOpenOrders = _.merge(
        initializedSymbolOpenOrders,
        symbolOpenOrders
      );

      await Promise.all(
        _.map(mergedOpenOrders, (orders, symbol) =>
          cache.hset(
            'trailing-trade-open-orders',
            symbol,
            JSON.stringify(orders)
          )
        )
      );
    });
  }, 30 * 1310);
}
Retrieve open orders every x seconds
This is just to recover open orders when an order was missed by a mistake

@param {*} logger
@param symbols