Class: Cryptoexchange::Exchanges::SafeTrade::Services::Market
- Inherits:
-
Services::Market
- Object
- Services::Market
- Cryptoexchange::Exchanges::SafeTrade::Services::Market
- Defined in:
- lib/cryptoexchange/exchanges/safe_trade/services/market.rb
Class Method Summary collapse
Instance Method Summary collapse
- #adapt(market_pair, output) ⇒ Object
- #adapt_all(output) ⇒ Object
- #fetch ⇒ Object
- #ticker_url ⇒ Object
Methods inherited from Services::Market
Class Method Details
.supports_individual_ticker_query? ⇒ Boolean
6 7 8 |
# File 'lib/cryptoexchange/exchanges/safe_trade/services/market.rb', line 6 def supports_individual_ticker_query? false end |
Instance Method Details
#adapt(market_pair, output) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/cryptoexchange/exchanges/safe_trade/services/market.rb', line 29 def adapt(market_pair, output) ticker = Cryptoexchange::Models::Ticker.new ticker.base = market_pair.base ticker.target = market_pair.target ticker.market = SafeTrade::Market::NAME ticker.last = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'last')) ticker.ask = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'sell')) ticker.bid = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'buy')) ticker.volume = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'vol')) ticker.high = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'high')) ticker.low = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'low')) ticker. = HashHelper.dig(output, 'at') ticker.payload = output ticker end |
#adapt_all(output) ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/cryptoexchange/exchanges/safe_trade/services/market.rb', line 20 def adapt_all(output) pairs = Cryptoexchange::Exchanges::SafeTrade::Services::Pairs.new.fetch output.map do |pair_id, ticker| market_pair = pairs.find{ |p| p.inst_id == pair_id } adapt(market_pair, ticker) if market_pair end end |
#fetch ⇒ Object
11 12 13 14 |
# File 'lib/cryptoexchange/exchanges/safe_trade/services/market.rb', line 11 def fetch output = super ticker_url adapt_all(output) end |
#ticker_url ⇒ Object
16 17 18 |
# File 'lib/cryptoexchange/exchanges/safe_trade/services/market.rb', line 16 def ticker_url "#{Cryptoexchange::Exchanges::SafeTrade::Market::API_URL}/v2/tickers" end |