Class: Cryptoexchange::Services::Market

Inherits:
Object
  • Object
show all
Defined in:
lib/cryptoexchange/services/market.rb

Direct Known Subclasses

Exchanges::Abcc::Services::Market, Exchanges::Abucoins::Services::Market, Exchanges::Abucoins::Services::OrderBook, Exchanges::Abucoins::Services::Trades, Exchanges::Acx::Services::Market, Exchanges::Acx::Services::OrderBook, Exchanges::Acx::Services::Trades, Exchanges::Aex::Services::Market, Exchanges::Aex::Services::OrderBook, Exchanges::Aex::Services::Trades, Exchanges::Allcoin::Services::Market, Exchanges::Allcoin::Services::OrderBook, Exchanges::Anx::Services::Market, Exchanges::Bancor::Services::Market, Exchanges::Bcex::Services::Market, Exchanges::Bcex::Services::OrderBook, Exchanges::Bcex::Services::Trades, Exchanges::Bibox::Services::Market, Exchanges::Bibox::Services::OrderBook, Exchanges::Bibox::Services::Trades, Exchanges::Bigone::Services::Market, Exchanges::Bigone::Services::OrderBook, Exchanges::Bigone::Services::Trades, Exchanges::Bilaxy::Services::Market, Exchanges::Bilaxy::Services::OrderBook, Exchanges::Bilaxy::Services::Trades, Exchanges::Binance::Services::Market, Exchanges::Binance::Services::OrderBook, Exchanges::Bit2c::Services::Market, Exchanges::Bit2c::Services::OrderBook, Exchanges::Bit2c::Services::Trades, Exchanges::BitZ::Services::Market, Exchanges::Bitbank::Services::Market, Exchanges::Bitbank::Services::OrderBook, Exchanges::Bitbank::Services::Trades, Exchanges::Bitbay::Services::Market, Exchanges::Bitbns::Services::Market, Exchanges::BitcoinIndonesia::Services::Market, Exchanges::Bitconnect::Services::Market, Exchanges::Bitebtc::Services::Market, Exchanges::Bitebtc::Services::OrderBook, Exchanges::Bitebtc::Services::Trades, Exchanges::Bitfinex::Services::Market, Exchanges::Bitflyer::Services::Market, Exchanges::Bithash::Services::Market, Exchanges::Bithash::Services::OrderBook, Exchanges::Bithash::Services::Trades, Exchanges::Bithumb::Services::Market, Exchanges::Bitibu::Services::Market, Exchanges::Bitibu::Services::OrderBook, Exchanges::Bitibu::Services::Trades, Exchanges::Bitkonan::Services::Market, Exchanges::Bitmex::Services::Market, Exchanges::Bitmex::Services::OrderBook, Exchanges::Bitmex::Services::Trades, Exchanges::Bitpaction::Services::Market, Exchanges::Bitpaction::Services::OrderBook, Exchanges::Bitpaction::Services::Trades, Exchanges::BitsBlockchain::Services::Market, Exchanges::BitsBlockchain::Services::OrderBook, Exchanges::Bitso::Services::Market, Exchanges::Bitstamp::Services::Market, Exchanges::Bitstamp::Services::OrderBook, Exchanges::Bitstamp::Services::Trades, Exchanges::Bittrex::Services::Market, Exchanges::Bleutrade::Services::Market, Exchanges::Braziliex::Services::Market, Exchanges::Braziliex::Services::OrderBook, Exchanges::Braziliex::Services::Trades, Exchanges::BtcAlpha::Services::Market, Exchanges::BtcAlpha::Services::OrderBook, Exchanges::BtcAlpha::Services::Trades, Exchanges::BtcTradeUa::Services::Market, Exchanges::BtcTradeUa::Services::OrderBook, Exchanges::BtcTradeUa::Services::Trades, Exchanges::Btcbox::Services::Market, Exchanges::Btcbox::Services::OrderBook, Exchanges::Btcc::Services::Market, Exchanges::Btcsquare::Services::Market, Exchanges::Btcsquare::Services::OrderBook, Exchanges::Btcsquare::Services::Trades, Exchanges::Bter::Services::Market, Exchanges::Buyucoin::Services::Market, Exchanges::BxThailand::Services::Market, Exchanges::Ccex::Services::Market, Exchanges::Cex::Services::Market, Exchanges::Cex::Services::OrderBook, Exchanges::Cex::Services::Trades, Exchanges::Cfinex::Services::Market, Exchanges::Cfinex::Services::OrderBook, Exchanges::Cfinex::Services::Trades, Exchanges::Chbtc::Services::Market, Exchanges::Cobinhood::Services::Market, Exchanges::Cobinhood::Services::OrderBook, Exchanges::Coin2001::Services::Market, Exchanges::Coin2001::Services::OrderBook, Exchanges::Coin2001::Services::Trades, Exchanges::CoinEgg::Services::Market, Exchanges::CoinEgg::Services::OrderBook, Exchanges::CoinEgg::Services::Trades, Exchanges::CoinExchange::Services::Market, Exchanges::Coinbene::Services::Market, Exchanges::Coinbene::Services::OrderBook, Exchanges::Coinbene::Services::Trades, Exchanges::Coincheck::Services::Market, Exchanges::Coinex::Services::Market, Exchanges::Coinex::Services::OrderBook, Exchanges::Coinex::Services::Trades, Exchanges::Coinfalcon::Services::Market, Exchanges::Coinfalcon::Services::OrderBook, Exchanges::Coinfalcon::Services::Trades, Exchanges::Coinfield::Services::Market, Exchanges::Coingi::Services::Market, Exchanges::Coingi::Services::OrderBook, Exchanges::Coingi::Services::Trades, Exchanges::Coinhouse::Services::Market, Exchanges::Coinjar::Services::Market, Exchanges::Coinjar::Services::OrderBook, Exchanges::Coinjar::Services::Trades, Exchanges::Coinmate::Services::Market, Exchanges::Coinmate::Services::OrderBook, Exchanges::Coinnest::Services::Market, Exchanges::Coinnest::Services::OrderBook, Exchanges::Coinnest::Services::Trades, Exchanges::Coinnox::Services::Market, Exchanges::Coinnox::Services::OrderBook, Exchanges::Coinnox::Services::Trades, Exchanges::Coinone::Services::Market, Exchanges::Coinone::Services::OrderBook, Exchanges::Coinone::Services::Trades, Exchanges::Coinrail::Services::Market, Exchanges::Coinrail::Services::OrderBook, Exchanges::Coinrail::Services::Trades, Exchanges::Coinroom::Services::Market, Exchanges::CoinsMarkets::Services::Market, Exchanges::Coinstock::Services::Market, Exchanges::Coinstock::Services::OrderBook, Exchanges::Coinstock::Services::Trades, Exchanges::Coinsuper::Services::Market, Exchanges::Cointiger::Services::Market, Exchanges::Cointiger::Services::OrderBook, Exchanges::Cointiger::Services::Trades, Exchanges::Coinut::Services::Market, Exchanges::Coinut::Services::OrderBook, Exchanges::Coinut::Services::Trades, Exchanges::Coss::Services::Market, Exchanges::Cpdax::Services::Market, Exchanges::Crex24::Services::Market, Exchanges::Crex24::Services::OrderBook, Exchanges::Crex24::Services::Trades, Exchanges::Crxzone::Services::Market, Exchanges::Crxzone::Services::OrderBook, Exchanges::Crxzone::Services::Trades, Exchanges::Cryptex::Services::Market, Exchanges::Cryptex::Services::OrderBook, Exchanges::Cryptex::Services::Trades, Exchanges::CryptoBridge::Services::Market, Exchanges::CryptoHub::Services::Market, Exchanges::Cryptobulls::Services::Market, Exchanges::Cryptopia::Services::Market, Exchanges::Cryptopia::Services::OrderBook, Exchanges::Cryptopia::Services::Trades, Exchanges::Cybex::Services::Market, Exchanges::Cybex::Services::OrderBook, Exchanges::Cybex::Services::Trades, Exchanges::Ddex::Services::Market, Exchanges::Dsx::Services::Market, Exchanges::Dsx::Services::OrderBook, Exchanges::Dsx::Services::Trades, Exchanges::Ercdex::Services::Market, Exchanges::Ercdex::Services::OrderBook, Exchanges::EtherDelta::Services::Market, Exchanges::Ethfinex::Services::Market, Exchanges::Ethfinex::Services::OrderBook, Exchanges::Ethfinex::Services::Trades, Exchanges::Exmo::Services::Market, Exchanges::Exmo::Services::OrderBook, Exchanges::Exmo::Services::Trades, Exchanges::Exrates::Services::Market, Exchanges::Extstock::Services::Market, Exchanges::Extstock::Services::OrderBook, Exchanges::Extstock::Services::Trades, Exchanges::Exx::Services::Market, Exchanges::Exx::Services::OrderBook, Exchanges::Exx::Services::Trades, Exchanges::F1cx::Services::Market, Exchanges::F1cx::Services::OrderBook, Exchanges::F1cx::Services::Trades, Exchanges::Fcoin::Services::Market, Exchanges::Fcoin::Services::OrderBook, Exchanges::Fcoin::Services::Trades, Exchanges::Fex::Services::Market, Exchanges::Fisco::Services::Market, Exchanges::Fisco::Services::OrderBook, Exchanges::Fisco::Services::Trades, Exchanges::Forkdelta::Services::Market, Exchanges::Freiexchange::Services::Market, Exchanges::Freiexchange::Services::OrderBook, Exchanges::Gate::Services::Market, Exchanges::Gate::Services::OrderBook, Exchanges::Gate::Services::Trades, Exchanges::Gatecoin::Services::Market, Exchanges::Gdax::Services::Market, Exchanges::Gemini::Services::Market, Exchanges::Gemini::Services::OrderBook, Exchanges::Gemini::Services::Trades, Exchanges::Getbtc::Services::Market, Exchanges::Getbtc::Services::OrderBook, Exchanges::Getbtc::Services::Trades, Exchanges::Gopax::Services::Market, Exchanges::Gopax::Services::OrderBook, Exchanges::Gopax::Services::Trades, Exchanges::Graviex::Services::Market, Exchanges::Hadax::Services::Market, Exchanges::Hitbtc::Services::Market, Exchanges::Hotbit::Services::Market, Exchanges::Huobi::Services::Market, Exchanges::Idax::Services::Market, Exchanges::Idcm::Services::Market, Exchanges::Idex::Services::Market, Exchanges::Idex::Services::OrderBook, Exchanges::Idex::Services::Trades, Exchanges::InfinityCoin::Services::Market, Exchanges::Itbit::Services::Market, Exchanges::Itbit::Services::OrderBook, Exchanges::Itbit::Services::Trades, Exchanges::Jex::Services::Market, Exchanges::Joyso::Services::Market, Exchanges::Joyso::Services::OrderBook, Exchanges::Jubi::Services::Market, Exchanges::KKex::Services::Market, Exchanges::KKex::Services::OrderBook, Exchanges::KKex::Services::Trades, Exchanges::Kkcoin::Services::Market, Exchanges::Kkcoin::Services::OrderBook, Exchanges::Kkcoin::Services::Trades, Exchanges::Koinex::Services::Market, Exchanges::Koinok::Services::Market, Exchanges::Korbit::Services::Market, Exchanges::Kraken::Services::Market, Exchanges::Kryptono::Services::Market, Exchanges::Kryptono::Services::OrderBook, Exchanges::Kryptono::Services::Trades, Exchanges::Kucoin::Services::Market, Exchanges::Kucoin::Services::OrderBook, Exchanges::Kucoin::Services::Trades, Exchanges::Kuna::Services::Market, Exchanges::Kuna::Services::OrderBook, Exchanges::Kuna::Services::Trades, Exchanges::KyberNetwork::Services::Market, Exchanges::Lakebtc::Services::Market, Exchanges::Latoken::Services::Market, Exchanges::Lbank::Services::Market, Exchanges::Lbank::Services::OrderBook, Exchanges::Lbank::Services::Trades, Exchanges::Liqui::Services::Market, Exchanges::Litebiteu::Services::Market, Exchanges::Livecoin::Services::Market, Exchanges::Luno::Services::Market, Exchanges::Lykke::Services::Market, Exchanges::Lykke::Services::OrderBook, Exchanges::MercadoBitcoin::Services::Market, Exchanges::Mercatox::Services::Market, Exchanges::Myspeedtrade::Services::Market, Exchanges::Myspeedtrade::Services::OrderBook, Exchanges::Nanex::Services::Market, Exchanges::Nebula::Services::Market, Exchanges::Nebula::Services::Trades, Exchanges::Neraex::Services::Market, Exchanges::Neraex::Services::OrderBook, Exchanges::Neraex::Services::Trades, Exchanges::Ninecoin::Services::Market, Exchanges::Nlexch::Services::Market, Exchanges::Novadex::Services::Market, Exchanges::Novaexchange::Services::Market, Exchanges::Oasisdex::Services::Market, Exchanges::Octaex::Services::Market, Exchanges::Octaex::Services::OrderBook, Exchanges::Octaex::Services::Trades, Exchanges::Okcoin::Services::Market, Exchanges::Okex::Services::Market, Exchanges::Okex::Services::OrderBook, Exchanges::Okex::Services::Trades, Exchanges::Omnitrade::Services::Market, Exchanges::Omnitrade::Services::OrderBook, Exchanges::Omnitrade::Services::Trades, Exchanges::Ooobtc::Services::Market, Exchanges::Ooobtc::Services::OrderBook, Exchanges::Ooobtc::Services::Trades, Exchanges::Openledger::Services::Market, Exchanges::Openledger::Services::OrderBook, Exchanges::Openledger::Services::Trades, Exchanges::Orderbook::Services::Market, Exchanges::Orderbook::Services::OrderBook, Exchanges::Orderbook::Services::Trades, Exchanges::OreBz::Services::Market, Exchanges::OreBz::Services::OrderBook, Exchanges::OreBz::Services::Trades, Exchanges::Paribu::Services::Market, Exchanges::Paymium::Services::Market, Exchanges::Paymium::Services::OrderBook, Exchanges::Paymium::Services::Trades, Exchanges::Poloniex::Services::Market, Exchanges::Qryptos::Services::Market, Exchanges::Quadrigacx::Services::Market, Exchanges::Quoine::Services::Market, Exchanges::RadarRelay::Services::Market, Exchanges::Rightbtc::Services::Market, Exchanges::Rightbtc::Services::OrderBook, Exchanges::Rightbtc::Services::Trades, Exchanges::SafeTrade::Services::Market, Exchanges::Sigen::Services::Market, Exchanges::Simex::Services::Market, Exchanges::Singularx::Services::Market, Exchanges::Sistemkoin::Services::Market, Exchanges::SouthXchange::Services::Market, Exchanges::SouthXchange::Services::OrderBook, Exchanges::SouthXchange::Services::Trades, Exchanges::StocksExchange::Services::Market, Exchanges::Switcheo::Services::Market, Exchanges::Syex::Services::Market, Exchanges::Szzc::Services::Market, Exchanges::Therocktrading::Services::Market, Exchanges::Thetokenstore::Services::Market, Exchanges::Thetokenstore::Services::OrderBook, Exchanges::Thetokenstore::Services::Trades, Exchanges::Tidex::Services::Market, Exchanges::Tokenjar::Services::Market, Exchanges::Tokenomy::Services::Market, Exchanges::Tokenomy::Services::OrderBook, Exchanges::Tokenomy::Services::Trades, Exchanges::Topbtc::Services::Market, Exchanges::TradeOgre::Services::Market, Exchanges::TradeOgre::Services::OrderBook, Exchanges::TradeOgre::Services::Trades, Exchanges::TradeSatoshi::Services::Market, Exchanges::Trademn::Services::Market, Exchanges::Trademn::Services::OrderBook, Exchanges::Trademn::Services::Trades, Exchanges::TrustDex::Services::Market, Exchanges::TuxExchange::Services::Market, Exchanges::Upbit::Services::Market, Exchanges::Upbit::Services::OrderBook, Exchanges::Upbit::Services::Trades, Exchanges::Vertpig::Services::Market, Exchanges::Vertpig::Services::OrderBook, Exchanges::Viabtc::Services::Market, Exchanges::Waves::Services::Market, Exchanges::Waves::Services::Trades, Exchanges::Wcx::Services::Market, Exchanges::Wcx::Services::OrderBook, Exchanges::Wcx::Services::Trades, Exchanges::Wex::Services::Market, Exchanges::Wex::Services::OrderBook, Exchanges::Wex::Services::Trades, Exchanges::Yobit::Services::Market, Exchanges::Yuanbao::Services::Market, Exchanges::Yunbi::Services::Market, Exchanges::Zaif::Services::Market, Exchanges::Zaif::Services::OrderBook, Exchanges::Zaif::Services::Trades, Exchanges::Zb::Services::Market, Exchanges::Zb::Services::OrderBook, Exchanges::Zb::Services::Trades, Exchanges::Zebpay::Services::Market

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.supports_individual_ticker_query?Boolean



5
6
7
# File 'lib/cryptoexchange/services/market.rb', line 5

def supports_individual_ticker_query?
  fail "Must define supports_individual_ticker_query? as true or false"
end

Instance Method Details

#fetch(endpoint) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/cryptoexchange/services/market.rb', line 10

def fetch(endpoint)
  LruTtlCache.ticker_cache.getset(endpoint) do
    begin
      response = http_get(endpoint)
      if response.code == 200
        response.parse :json
      elsif response.code == 400
        raise Cryptoexchange::HttpBadRequestError, { response: response }
      else
        raise Cryptoexchange::HttpResponseError, { response: response }
      end
    rescue HTTP::ConnectionError => e
      raise Cryptoexchange::HttpConnectionError, { error: e, response: response }
    rescue HTTP::TimeoutError => e
      raise Cryptoexchange::HttpTimeoutError, { error: e, response: response }
    rescue JSON::ParserError => e
      raise Cryptoexchange::JsonParseError, { error: e, response: response }
    rescue TypeError => e
      raise Cryptoexchange::TypeFormatError, { error: e, response: response }
    end
  end
end

#fetch_using_post(endpoint, params, headers = false) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
# File 'lib/cryptoexchange/services/market.rb', line 33

def fetch_using_post(endpoint, params, headers = false)
  LruTtlCache.ticker_cache.getset([endpoint, params]) do
    response = if headers
                 http_post_with_headers(endpoint, params, headers)
               else
                 http_post(endpoint, params)
               end

    JSON.parse(response.to_s)
  end
end