cryptoexchange 0.20.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +9 -1
- data/cryptoexchange.gemspec +4 -4
- data/lib/cryptoexchange/client.rb +3 -0
- data/lib/cryptoexchange/error.rb +6 -0
- data/lib/cryptoexchange/exchanges/anx/services/market.rb +4 -7
- data/lib/cryptoexchange/exchanges/bancor/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bancor/services/market.rb +36 -0
- data/lib/cryptoexchange/exchanges/bancor/services/pair.rb +24 -0
- data/lib/cryptoexchange/exchanges/bigone/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bigone/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/bigone/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/bigone/services/pairs.rb +23 -0
- data/lib/cryptoexchange/exchanges/bigone/services/trades.rb +32 -0
- data/lib/cryptoexchange/exchanges/bitflyer/services/market.rb +4 -5
- data/lib/cryptoexchange/exchanges/bittrex/services/market.rb +7 -0
- data/lib/cryptoexchange/exchanges/coinbene/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinbene/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/coinbene/services/order_book.rb +43 -0
- data/lib/cryptoexchange/exchanges/coinbene/services/pairs.rb +27 -0
- data/lib/cryptoexchange/exchanges/coinbene/services/trades.rb +32 -0
- data/lib/cryptoexchange/exchanges/cryptopia/services/market.rb +7 -0
- data/lib/cryptoexchange/exchanges/ethfinex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/ethfinex/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/ethfinex/services/order_book.rb +52 -0
- data/lib/cryptoexchange/exchanges/ethfinex/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/ethfinex/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/koinex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/koinex/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/koinex/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/liqui/services/market.rb +7 -0
- data/lib/cryptoexchange/exchanges/novaexchange/services/market.rb +7 -0
- data/lib/cryptoexchange/exchanges/radar_relay/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/radar_relay/radar_relay.yml +409 -0
- data/lib/cryptoexchange/exchanges/radar_relay/services/market.rb +44 -0
- data/lib/cryptoexchange/exchanges/radar_relay/services/pairs.rb +22 -0
- data/lib/cryptoexchange/exchanges/trade_ogre/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/trade_ogre/services/market.rb +48 -0
- data/lib/cryptoexchange/exchanges/trade_ogre/services/order_book.rb +46 -0
- data/lib/cryptoexchange/exchanges/trade_ogre/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/trade_ogre/services/trades.rb +31 -0
- data/lib/cryptoexchange/exchanges/zb/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/zb/services/market.rb +39 -0
- data/lib/cryptoexchange/exchanges/zb/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/zb/services/pairs.rb +24 -0
- data/lib/cryptoexchange/exchanges/zb/services/trades.rb +32 -0
- data/lib/cryptoexchange/helpers/numeric_helper.rb +2 -0
- data/lib/cryptoexchange/services/market.rb +2 -0
- data/lib/cryptoexchange/services/pairs.rb +7 -1
- data/lib/cryptoexchange/version.rb +1 -1
- metadata +45 -10
@@ -0,0 +1,44 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module RadarRelay
|
3
|
+
module Services
|
4
|
+
class Market < Cryptoexchange::Services::Market
|
5
|
+
class << self
|
6
|
+
def supports_individual_ticker_query?
|
7
|
+
true
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def fetch(market_pair)
|
12
|
+
output = super(ticker_url(market_pair))
|
13
|
+
adapt(market_pair, output)
|
14
|
+
end
|
15
|
+
|
16
|
+
def ticker_url(market_pair)
|
17
|
+
"#{Cryptoexchange::Exchanges::RadarRelay::Market::API_URL}/ticker/#{market_pair.base}/#{market_pair.target}"
|
18
|
+
end
|
19
|
+
|
20
|
+
def adapt(market_pair, output)
|
21
|
+
ticker = Cryptoexchange::Models::Ticker.new
|
22
|
+
|
23
|
+
ticker.base = market_pair.base
|
24
|
+
ticker.target = market_pair.target
|
25
|
+
ticker.market = RadarRelay::Market::NAME
|
26
|
+
ticker.last = value_divisor(NumericHelper.to_d(output['last']))
|
27
|
+
ticker.high = output['high'] == "NA" ? nil : value_divisor(NumericHelper.to_d(output['high']))
|
28
|
+
ticker.low = output['low'] == "NA" ? nil : value_divisor(NumericHelper.to_d(output['low']))
|
29
|
+
ticker.volume = NumericHelper.to_d(output['baseVolume'])
|
30
|
+
ticker.timestamp = Time.now.to_i
|
31
|
+
ticker.payload = output
|
32
|
+
ticker
|
33
|
+
end
|
34
|
+
|
35
|
+
private
|
36
|
+
|
37
|
+
def value_divisor(amount)
|
38
|
+
# For radar_relay, price denominated in different format
|
39
|
+
1.0/amount
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module RadarRelay
|
3
|
+
module Services
|
4
|
+
class Pairs < Cryptoexchange::Services::Pairs
|
5
|
+
def fetch
|
6
|
+
output = super
|
7
|
+
adapt(output)
|
8
|
+
end
|
9
|
+
|
10
|
+
def adapt(output)
|
11
|
+
output.map do |pair|
|
12
|
+
Cryptoexchange::Models::MarketPair.new({
|
13
|
+
base: pair[:base],
|
14
|
+
target: pair[:target],
|
15
|
+
market: RadarRelay::Market::NAME
|
16
|
+
})
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module TradeOgre
|
3
|
+
module Services
|
4
|
+
class Market < Cryptoexchange::Services::Market
|
5
|
+
class << self
|
6
|
+
def supports_individual_ticker_query?
|
7
|
+
false
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def fetch
|
12
|
+
output = super(ticker_url)
|
13
|
+
adapt_all(output)
|
14
|
+
end
|
15
|
+
|
16
|
+
def ticker_url
|
17
|
+
"#{Cryptoexchange::Exchanges::TradeOgre::Market::API_URL}/markets"
|
18
|
+
end
|
19
|
+
|
20
|
+
def adapt_all(output)
|
21
|
+
output.map do |market|
|
22
|
+
target, base = market.keys.first.split('-')
|
23
|
+
market_pair = Cryptoexchange::Models::MarketPair.new(
|
24
|
+
base: base,
|
25
|
+
target: target,
|
26
|
+
market: TradeOgre::Market::NAME
|
27
|
+
)
|
28
|
+
adapt(market.values.first, market_pair)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def adapt(output, market_pair)
|
33
|
+
ticker = Cryptoexchange::Models::Ticker.new
|
34
|
+
ticker.base = market_pair.base
|
35
|
+
ticker.target = market_pair.target
|
36
|
+
ticker.market = TradeOgre::Market::NAME
|
37
|
+
ticker.last = NumericHelper.to_d(output['price'])
|
38
|
+
ticker.high = NumericHelper.to_d(output['high'])
|
39
|
+
ticker.low = NumericHelper.to_d(output['low'])
|
40
|
+
ticker.volume = NumericHelper.divide(NumericHelper.to_d(output['volume']), ticker.last)
|
41
|
+
ticker.timestamp = Time.now.to_i
|
42
|
+
ticker.payload = output
|
43
|
+
ticker
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module TradeOgre
|
3
|
+
module Services
|
4
|
+
class OrderBook < Cryptoexchange::Services::Market
|
5
|
+
class << self
|
6
|
+
def supports_individual_ticker_query?
|
7
|
+
true
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def fetch(market_pair)
|
12
|
+
output = super(ticker_url(market_pair))
|
13
|
+
adapt(output, market_pair)
|
14
|
+
end
|
15
|
+
|
16
|
+
def ticker_url(market_pair)
|
17
|
+
"#{Cryptoexchange::Exchanges::TradeOgre::Market::API_URL}/orders/#{market_pair.target}-#{market_pair.base}"
|
18
|
+
end
|
19
|
+
|
20
|
+
def adapt(output, market_pair)
|
21
|
+
order_book = Cryptoexchange::Models::OrderBook.new
|
22
|
+
timestamp = Time.now.to_i
|
23
|
+
|
24
|
+
order_book.base = market_pair.base
|
25
|
+
order_book.target = market_pair.target
|
26
|
+
order_book.market = TradeOgre::Market::NAME
|
27
|
+
order_book.asks = adapt_orders output['sell']
|
28
|
+
order_book.bids = adapt_orders output['buy']
|
29
|
+
order_book.timestamp = timestamp
|
30
|
+
order_book.payload = output
|
31
|
+
order_book
|
32
|
+
end
|
33
|
+
|
34
|
+
def adapt_orders(orders)
|
35
|
+
orders.collect do |key, value|
|
36
|
+
Cryptoexchange::Models::Order.new(
|
37
|
+
price: key,
|
38
|
+
amount: value,
|
39
|
+
timestamp: nil
|
40
|
+
)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module TradeOgre
|
3
|
+
module Services
|
4
|
+
class Pairs < Cryptoexchange::Services::Pairs
|
5
|
+
PAIRS_URL = "#{Cryptoexchange::Exchanges::TradeOgre::Market::API_URL}/markets"
|
6
|
+
|
7
|
+
def fetch
|
8
|
+
output = super
|
9
|
+
adapt(output)
|
10
|
+
end
|
11
|
+
|
12
|
+
def adapt(output)
|
13
|
+
output.collect do |pair|
|
14
|
+
target, base = pair.keys.first.split("-")
|
15
|
+
Cryptoexchange::Models::MarketPair.new(
|
16
|
+
base: base,
|
17
|
+
target: target,
|
18
|
+
market: TradeOgre::Market::NAME
|
19
|
+
)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module TradeOgre
|
3
|
+
module Services
|
4
|
+
class Trades < Cryptoexchange::Services::Market
|
5
|
+
def fetch(market_pair)
|
6
|
+
output = super(ticker_url(market_pair))
|
7
|
+
adapt(output, market_pair)
|
8
|
+
end
|
9
|
+
|
10
|
+
def ticker_url(market_pair)
|
11
|
+
"#{Cryptoexchange::Exchanges::TradeOgre::Market::API_URL}/history/#{market_pair.target}-#{market_pair.base}"
|
12
|
+
end
|
13
|
+
|
14
|
+
def adapt(output, market_pair)
|
15
|
+
output.collect do |trade|
|
16
|
+
tr = Cryptoexchange::Models::Trade.new
|
17
|
+
tr.base = market_pair.base
|
18
|
+
tr.target = market_pair.target
|
19
|
+
tr.type = trade['type']
|
20
|
+
tr.price = trade['price']
|
21
|
+
tr.amount = trade['quantity']
|
22
|
+
tr.timestamp = trade['date']
|
23
|
+
tr.payload = trade
|
24
|
+
tr.market = TradeOgre::Market::NAME
|
25
|
+
tr
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Zb
|
3
|
+
module Services
|
4
|
+
class Market < Cryptoexchange::Services::Market
|
5
|
+
class << self
|
6
|
+
def supports_individual_ticker_query?
|
7
|
+
true
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def fetch(market_pair)
|
12
|
+
output = super(ticker_url(market_pair))
|
13
|
+
adapt(output, market_pair)
|
14
|
+
end
|
15
|
+
|
16
|
+
def ticker_url(market_pair)
|
17
|
+
"#{Cryptoexchange::Exchanges::Zb::Market::API_URL}/ticker?market=#{market_pair.base.downcase}_#{market_pair.target.downcase}"
|
18
|
+
end
|
19
|
+
|
20
|
+
def adapt(output, market_pair)
|
21
|
+
ticker = Cryptoexchange::Models::Ticker.new
|
22
|
+
ticker.base = market_pair.base
|
23
|
+
ticker.target = market_pair.target
|
24
|
+
ticker.market = Zb::Market::NAME
|
25
|
+
ticker.ask = NumericHelper.to_d(output["ticker"]["sell"])
|
26
|
+
ticker.bid = NumericHelper.to_d(output["ticker"]["buy"])
|
27
|
+
ticker.last = NumericHelper.to_d(output["ticker"]["last"])
|
28
|
+
ticker.high = NumericHelper.to_d(output["ticker"]["high"])
|
29
|
+
ticker.low = NumericHelper.to_d(output["ticker"]["low"])
|
30
|
+
ticker.volume = NumericHelper.to_d(output["ticker"]["vol"])
|
31
|
+
ticker.timestamp = Time.now.to_i
|
32
|
+
ticker.payload = output
|
33
|
+
ticker
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Zb
|
3
|
+
module Services
|
4
|
+
class OrderBook < Cryptoexchange::Services::Market
|
5
|
+
class << self
|
6
|
+
def supports_individual_ticker_query?
|
7
|
+
true
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def fetch(market_pair)
|
12
|
+
output = super(orderbook_url(market_pair))
|
13
|
+
adapt(output, market_pair)
|
14
|
+
end
|
15
|
+
|
16
|
+
def orderbook_url(market_pair)
|
17
|
+
"#{Cryptoexchange::Exchanges::Zb::Market::API_URL}/depth?market=#{market_pair.base.downcase}_#{market_pair.target.downcase}"
|
18
|
+
end
|
19
|
+
|
20
|
+
def adapt(output, market_pair)
|
21
|
+
order_book = Cryptoexchange::Models::OrderBook.new
|
22
|
+
timestamp = output["timestamp"].to_i
|
23
|
+
|
24
|
+
order_book.base = market_pair.base
|
25
|
+
order_book.target = market_pair.target
|
26
|
+
order_book.market = Zb::Market::NAME
|
27
|
+
order_book.asks = adapt_orders(output["asks"])
|
28
|
+
order_book.bids = adapt_orders(output["bids"])
|
29
|
+
order_book.timestamp = timestamp
|
30
|
+
order_book.payload = output
|
31
|
+
order_book
|
32
|
+
end
|
33
|
+
|
34
|
+
def adapt_orders(orders)
|
35
|
+
orders.collect do |order_entry|
|
36
|
+
Cryptoexchange::Models::Order.new(price: order_entry[0],
|
37
|
+
amount: order_entry[1],
|
38
|
+
timestamp: nil)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Zb
|
3
|
+
module Services
|
4
|
+
class Pairs < Cryptoexchange::Services::Pairs
|
5
|
+
PAIRS_URL = "#{Cryptoexchange::Exchanges::Zb::Market::API_URL}/markets"
|
6
|
+
|
7
|
+
def fetch
|
8
|
+
output = super
|
9
|
+
market_pairs = []
|
10
|
+
output.each do |pair|
|
11
|
+
pair_split = pair[0].split('_')
|
12
|
+
market_pairs << Cryptoexchange::Models::MarketPair.new(
|
13
|
+
base: pair_split[0],
|
14
|
+
target: pair_split[1],
|
15
|
+
market: Zb::Market::NAME
|
16
|
+
)
|
17
|
+
end
|
18
|
+
market_pairs
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Zb
|
3
|
+
module Services
|
4
|
+
class Trades < Cryptoexchange::Services::Market
|
5
|
+
def fetch(market_pair)
|
6
|
+
output = super(ticker_url(market_pair))
|
7
|
+
adapt(output, market_pair)
|
8
|
+
end
|
9
|
+
|
10
|
+
def ticker_url(market_pair)
|
11
|
+
"#{Cryptoexchange::Exchanges::Zb::Market::API_URL}/trades?market=#{market_pair.base.downcase}_#{market_pair.target.downcase}"
|
12
|
+
end
|
13
|
+
|
14
|
+
def adapt(output, market_pair)
|
15
|
+
output.collect do |trade|
|
16
|
+
tr = Cryptoexchange::Models::Trade.new
|
17
|
+
tr.trade_id = trade["tid"]
|
18
|
+
tr.base = market_pair.base
|
19
|
+
tr.target = market_pair.target
|
20
|
+
tr.market = Zb::Market::NAME
|
21
|
+
tr.type = trade["type"]
|
22
|
+
tr.price = trade["price"]
|
23
|
+
tr.amount = trade["amount"]
|
24
|
+
tr.timestamp = trade["date"].to_i
|
25
|
+
tr.payload = trade
|
26
|
+
tr
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -13,6 +13,8 @@ module Cryptoexchange
|
|
13
13
|
response = http_get(endpoint)
|
14
14
|
if response.code == 200
|
15
15
|
response.parse :json
|
16
|
+
elsif response.code == 400
|
17
|
+
raise Cryptoexchange::HttpBadRequestError, { response: response }
|
16
18
|
else
|
17
19
|
raise Cryptoexchange::HttpResponseError, { response: response }
|
18
20
|
end
|
@@ -19,9 +19,11 @@ module Cryptoexchange
|
|
19
19
|
|
20
20
|
def fetch_via_api(endpoint = self.class::PAIRS_URL)
|
21
21
|
begin
|
22
|
-
fetch_response =
|
22
|
+
fetch_response = http_get(endpoint)
|
23
23
|
if fetch_response.code == 200
|
24
24
|
fetch_response.parse :json
|
25
|
+
elsif fetch_response.code == 400
|
26
|
+
raise Cryptoexchange::HttpBadRequestError, { response: fetch_response }
|
25
27
|
else
|
26
28
|
raise Cryptoexchange::HttpResponseError, { response: fetch_response }
|
27
29
|
end
|
@@ -60,6 +62,10 @@ module Cryptoexchange
|
|
60
62
|
exchange_name = self.class.name.split('::')[2]
|
61
63
|
Object.const_get "Cryptoexchange::Exchanges::#{exchange_name}::Market"
|
62
64
|
end
|
65
|
+
|
66
|
+
def http_get(endpoint)
|
67
|
+
fetch_response = HTTP.timeout(:write => 2, :connect => 5, :read => 8).get(endpoint)
|
68
|
+
end
|
63
69
|
end
|
64
70
|
end
|
65
71
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cryptoexchange
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.21.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- TM Lee
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-02-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -86,42 +86,42 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: 4.0.0
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 4.0.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: webmock
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
103
|
+
version: 3.3.0
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - "
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
110
|
+
version: 3.3.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: http
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
117
|
+
version: 3.0.0
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
124
|
+
version: 3.0.0
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: lru_redux
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -178,11 +178,19 @@ files:
|
|
178
178
|
- lib/cryptoexchange/exchanges/anx/market.rb
|
179
179
|
- lib/cryptoexchange/exchanges/anx/services/market.rb
|
180
180
|
- lib/cryptoexchange/exchanges/anx/services/pairs.rb
|
181
|
+
- lib/cryptoexchange/exchanges/bancor/market.rb
|
182
|
+
- lib/cryptoexchange/exchanges/bancor/services/market.rb
|
183
|
+
- lib/cryptoexchange/exchanges/bancor/services/pair.rb
|
181
184
|
- lib/cryptoexchange/exchanges/bibox/market.rb
|
182
185
|
- lib/cryptoexchange/exchanges/bibox/services/market.rb
|
183
186
|
- lib/cryptoexchange/exchanges/bibox/services/order_book.rb
|
184
187
|
- lib/cryptoexchange/exchanges/bibox/services/pairs.rb
|
185
188
|
- lib/cryptoexchange/exchanges/bibox/services/trades.rb
|
189
|
+
- lib/cryptoexchange/exchanges/bigone/market.rb
|
190
|
+
- lib/cryptoexchange/exchanges/bigone/services/market.rb
|
191
|
+
- lib/cryptoexchange/exchanges/bigone/services/order_book.rb
|
192
|
+
- lib/cryptoexchange/exchanges/bigone/services/pairs.rb
|
193
|
+
- lib/cryptoexchange/exchanges/bigone/services/trades.rb
|
186
194
|
- lib/cryptoexchange/exchanges/binance/market.rb
|
187
195
|
- lib/cryptoexchange/exchanges/binance/services/market.rb
|
188
196
|
- lib/cryptoexchange/exchanges/binance/services/order_book.rb
|
@@ -258,6 +266,11 @@ files:
|
|
258
266
|
- lib/cryptoexchange/exchanges/coin_exchange/market.rb
|
259
267
|
- lib/cryptoexchange/exchanges/coin_exchange/services/market.rb
|
260
268
|
- lib/cryptoexchange/exchanges/coin_exchange/services/pairs.rb
|
269
|
+
- lib/cryptoexchange/exchanges/coinbene/market.rb
|
270
|
+
- lib/cryptoexchange/exchanges/coinbene/services/market.rb
|
271
|
+
- lib/cryptoexchange/exchanges/coinbene/services/order_book.rb
|
272
|
+
- lib/cryptoexchange/exchanges/coinbene/services/pairs.rb
|
273
|
+
- lib/cryptoexchange/exchanges/coinbene/services/trades.rb
|
261
274
|
- lib/cryptoexchange/exchanges/coincheck/coincheck.yml
|
262
275
|
- lib/cryptoexchange/exchanges/coincheck/market.rb
|
263
276
|
- lib/cryptoexchange/exchanges/coincheck/services/market.rb
|
@@ -293,6 +306,11 @@ files:
|
|
293
306
|
- lib/cryptoexchange/exchanges/ether_delta/market.rb
|
294
307
|
- lib/cryptoexchange/exchanges/ether_delta/services/market.rb
|
295
308
|
- lib/cryptoexchange/exchanges/ether_delta/services/pairs.rb
|
309
|
+
- lib/cryptoexchange/exchanges/ethfinex/market.rb
|
310
|
+
- lib/cryptoexchange/exchanges/ethfinex/services/market.rb
|
311
|
+
- lib/cryptoexchange/exchanges/ethfinex/services/order_book.rb
|
312
|
+
- lib/cryptoexchange/exchanges/ethfinex/services/pairs.rb
|
313
|
+
- lib/cryptoexchange/exchanges/ethfinex/services/trades.rb
|
296
314
|
- lib/cryptoexchange/exchanges/exmo/market.rb
|
297
315
|
- lib/cryptoexchange/exchanges/exmo/services/market.rb
|
298
316
|
- lib/cryptoexchange/exchanges/exmo/services/order_book.rb
|
@@ -337,6 +355,9 @@ files:
|
|
337
355
|
- lib/cryptoexchange/exchanges/k_kex/services/order_book.rb
|
338
356
|
- lib/cryptoexchange/exchanges/k_kex/services/pairs.rb
|
339
357
|
- lib/cryptoexchange/exchanges/k_kex/services/trades.rb
|
358
|
+
- lib/cryptoexchange/exchanges/koinex/market.rb
|
359
|
+
- lib/cryptoexchange/exchanges/koinex/services/market.rb
|
360
|
+
- lib/cryptoexchange/exchanges/koinex/services/pairs.rb
|
340
361
|
- lib/cryptoexchange/exchanges/korbit/korbit.yml
|
341
362
|
- lib/cryptoexchange/exchanges/korbit/market.rb
|
342
363
|
- lib/cryptoexchange/exchanges/korbit/services/market.rb
|
@@ -405,6 +426,10 @@ files:
|
|
405
426
|
- lib/cryptoexchange/exchanges/quoine/market.rb
|
406
427
|
- lib/cryptoexchange/exchanges/quoine/services/market.rb
|
407
428
|
- lib/cryptoexchange/exchanges/quoine/services/pairs.rb
|
429
|
+
- lib/cryptoexchange/exchanges/radar_relay/market.rb
|
430
|
+
- lib/cryptoexchange/exchanges/radar_relay/radar_relay.yml
|
431
|
+
- lib/cryptoexchange/exchanges/radar_relay/services/market.rb
|
432
|
+
- lib/cryptoexchange/exchanges/radar_relay/services/pairs.rb
|
408
433
|
- lib/cryptoexchange/exchanges/stocks_exchange/market.rb
|
409
434
|
- lib/cryptoexchange/exchanges/stocks_exchange/services/market.rb
|
410
435
|
- lib/cryptoexchange/exchanges/stocks_exchange/services/pairs.rb
|
@@ -417,6 +442,11 @@ files:
|
|
417
442
|
- lib/cryptoexchange/exchanges/tidex/market.rb
|
418
443
|
- lib/cryptoexchange/exchanges/tidex/services/market.rb
|
419
444
|
- lib/cryptoexchange/exchanges/tidex/services/pairs.rb
|
445
|
+
- lib/cryptoexchange/exchanges/trade_ogre/market.rb
|
446
|
+
- lib/cryptoexchange/exchanges/trade_ogre/services/market.rb
|
447
|
+
- lib/cryptoexchange/exchanges/trade_ogre/services/order_book.rb
|
448
|
+
- lib/cryptoexchange/exchanges/trade_ogre/services/pairs.rb
|
449
|
+
- lib/cryptoexchange/exchanges/trade_ogre/services/trades.rb
|
420
450
|
- lib/cryptoexchange/exchanges/trade_satoshi/market.rb
|
421
451
|
- lib/cryptoexchange/exchanges/trade_satoshi/services/market.rb
|
422
452
|
- lib/cryptoexchange/exchanges/trade_satoshi/services/pairs.rb
|
@@ -447,6 +477,11 @@ files:
|
|
447
477
|
- lib/cryptoexchange/exchanges/zaif/services/order_book.rb
|
448
478
|
- lib/cryptoexchange/exchanges/zaif/services/pairs.rb
|
449
479
|
- lib/cryptoexchange/exchanges/zaif/services/trades.rb
|
480
|
+
- lib/cryptoexchange/exchanges/zb/market.rb
|
481
|
+
- lib/cryptoexchange/exchanges/zb/services/market.rb
|
482
|
+
- lib/cryptoexchange/exchanges/zb/services/order_book.rb
|
483
|
+
- lib/cryptoexchange/exchanges/zb/services/pairs.rb
|
484
|
+
- lib/cryptoexchange/exchanges/zb/services/trades.rb
|
450
485
|
- lib/cryptoexchange/helpers/hash_helper.rb
|
451
486
|
- lib/cryptoexchange/helpers/numeric_helper.rb
|
452
487
|
- lib/cryptoexchange/helpers/string_helper.rb
|