class Cryptoexchange::Exchanges::Idex::Services::Market
Public Class Methods
supports_individual_ticker_query?()
click to toggle source
# File lib/cryptoexchange/exchanges/idex/services/market.rb, line 6 def supports_individual_ticker_query? false end
Public Instance Methods
adapt(output, market_pair)
click to toggle source
# File lib/cryptoexchange/exchanges/idex/services/market.rb, line 32 def adapt(output, market_pair) if output['last'] == 'N/A' return nil end ticker = Cryptoexchange::Models::Ticker.new ticker.base = market_pair.base ticker.target = market_pair.target ticker.market = Cryptoexchange::Exchanges::Idex::Market::NAME ticker.ask = NumericHelper.to_d(na_to_nil(output['lowestAsk'])) ticker.bid = NumericHelper.to_d(na_to_nil(output['highestBid'])) ticker.last = NumericHelper.to_d(na_to_nil(output['last'])) ticker.high = NumericHelper.to_d(na_to_nil(output['high'])) ticker.low = NumericHelper.to_d(na_to_nil(output['low'])) ticker.volume = NumericHelper.to_d(na_to_nil(output['quoteVolume'])) ticker.timestamp = nil ticker.payload = output ticker end
adapt_all(output)
click to toggle source
# File lib/cryptoexchange/exchanges/idex/services/market.rb, line 20 def adapt_all(output) total = output.map do |key, value| target, base = key.split("_") market_pair = Cryptoexchange::Models::MarketPair.new( base: base, target: target, market: Idex::Market::NAME ) adapt(value, market_pair) end.compact end
fetch()
click to toggle source
# File lib/cryptoexchange/exchanges/idex/services/market.rb, line 11 def fetch output = fetch_using_post(ticker_url, {}) adapt_all(output) end
na_to_nil(value)
click to toggle source
# File lib/cryptoexchange/exchanges/idex/services/market.rb, line 52 def na_to_nil(value) if value == 'N/A' nil else value end end
ticker_url()
click to toggle source
# File lib/cryptoexchange/exchanges/idex/services/market.rb, line 16 def ticker_url "#{Cryptoexchange::Exchanges::Idex::Market::API_URL}/returnTicker" end