def parse_ticker(self, ticker, market=None):
    timestamp = self.parse8601(self.safe_string(ticker, 'timestamp'))
    symbol = None
    marketId = self.safe_string(ticker, 'instrument_id')
    if (marketId in self.markets_by_id):
        market = self.markets_by_id[marketId]
        symbol = market['symbol']
    elif (marketId is not None):
        parts = marketId.split('-')
        numParts = len(parts)
        if (numParts == 2):
            (baseId, quoteId) = parts
            base = self.safe_currency_code(baseId)
            quote = self.safe_currency_code(quoteId)
            symbol = ((base + '/') + quote)
        else:
            symbol = marketId
    if ((symbol is None) and (market is not None)):
        symbol = market['symbol']
    last = self.safe_float(ticker, 'last')
    open = self.safe_float(ticker, 'open_24h')
    return {'symbol': symbol, 'timestamp': timestamp, 'datetime': self.iso8601(timestamp), 'high': self.safe_float(ticker, 'high_24h'), 'low': self.safe_float(ticker, 'low_24h'), 'bid': self.safe_float(ticker, 'best_bid'), 'bidVolume': self.safe_float(ticker, 'best_bid_size'), 'ask': self.safe_float(ticker, 'best_ask'), 'askVolume': self.safe_float(ticker, 'best_ask_size'), 'vwap': None, 'open': open, 'close': last, 'last': last, 'previousClose': None, 'change': None, 'percentage': None, 'average': None, 'baseVolume': self.safe_float(ticker, 'base_volume_24h'), 'quoteVolume': self.safe_float(ticker, 'quote_volume_24h'), 'info': ticker}
def parse_ticker(self, ticker, market=None):
    timestamp = self.parse8601(self.safe_string(ticker, 'timestamp'))
    symbol = None
    marketId = self.safe_string(ticker, 'instrument_id')
    if (marketId in self.markets_by_id):
        market = self.markets_by_id[marketId]
        symbol = market['symbol']
    elif (marketId is not None):
        parts = marketId.split('-')
        numParts = len(parts)
        if (numParts == 2):
            (baseId, quoteId) = parts
            base = self.safe_currency_code(baseId)
            quote = self.safe_currency_code(quoteId)
            symbol = ((base + '/') + quote)
        else:
            symbol = marketId
    if ((symbol is None) and (market is not None)):
        symbol = market['symbol']
    last = self.safe_float(ticker, 'last')
    open = self.safe_float(ticker, 'open_24h')
    return {'symbol': symbol, 'timestamp': timestamp, 'datetime': self.iso8601(timestamp), 'high': self.safe_float(ticker, 'high_24h'), 'low': self.safe_float(ticker, 'low_24h'), 'bid': self.safe_float(ticker, 'best_bid'), 'bidVolume': self.safe_float(ticker, 'best_bid_size'), 'ask': self.safe_float(ticker, 'best_ask'), 'askVolume': self.safe_float(ticker, 'best_ask_size'), 'vwap': None, 'open': open, 'close': last, 'last': last, 'previousClose': None, 'change': None, 'percentage': None, 'average': None, 'baseVolume': self.safe_float(ticker, 'base_volume_24h'), 'quoteVolume': self.safe_float(ticker, 'quote_volume_24h'), 'info': ticker}