cryptoexchange 0.22.0 → 0.23.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +100 -9
- data/lib/cryptoexchange.rb +2 -0
- data/lib/cryptoexchange/credentials.rb +26 -0
- data/lib/cryptoexchange/error.rb +3 -0
- data/lib/cryptoexchange/exchanges/abcc/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/abcc/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/abcc/services/pairs.rb +27 -0
- data/lib/cryptoexchange/exchanges/bancor/services/{pair.rb → pairs.rb} +0 -0
- data/lib/cryptoexchange/exchanges/bcex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bcex/services/market.rb +41 -0
- data/lib/cryptoexchange/exchanges/bcex/services/order_book.rb +46 -0
- data/lib/cryptoexchange/exchanges/bcex/services/pairs.rb +33 -0
- data/lib/cryptoexchange/exchanges/bcex/services/trades.rb +35 -0
- data/lib/cryptoexchange/exchanges/bigone/market.rb +1 -1
- data/lib/cryptoexchange/exchanges/bigone/services/market.rb +20 -18
- data/lib/cryptoexchange/exchanges/bigone/services/order_book.rb +5 -6
- data/lib/cryptoexchange/exchanges/bigone/services/pairs.rb +2 -2
- data/lib/cryptoexchange/exchanges/bigone/services/trades.rb +6 -6
- data/lib/cryptoexchange/exchanges/bilaxy/market.rb +24 -0
- data/lib/cryptoexchange/exchanges/bilaxy/services/market.rb +42 -0
- data/lib/cryptoexchange/exchanges/bilaxy/services/order_book.rb +48 -0
- data/lib/cryptoexchange/exchanges/bilaxy/services/pairs.rb +23 -0
- data/lib/cryptoexchange/exchanges/bilaxy/services/trades.rb +35 -0
- data/lib/cryptoexchange/exchanges/bitbns/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bitbns/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/bitbns/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/bitebtc/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bitebtc/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/bitebtc/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/bitebtc/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/bitebtc/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/bithash/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bithash/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/bithash/services/order_book.rb +55 -0
- data/lib/cryptoexchange/exchanges/bithash/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/bithash/services/trades.rb +36 -0
- data/lib/cryptoexchange/exchanges/bitibu/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bitibu/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/bitibu/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/bitibu/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/bitibu/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/bitpaction/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/bitpaction/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/bitpaction/services/order_book.rb +65 -0
- data/lib/cryptoexchange/exchanges/bitpaction/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/bitpaction/services/trades.rb +32 -0
- data/lib/cryptoexchange/exchanges/braziliex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/braziliex/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/braziliex/services/order_book.rb +43 -0
- data/lib/cryptoexchange/exchanges/braziliex/services/pairs.rb +23 -0
- data/lib/cryptoexchange/exchanges/braziliex/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/btc_alpha/services/market.rb +2 -2
- data/lib/cryptoexchange/exchanges/btc_alpha/services/order_book.rb +2 -2
- data/lib/cryptoexchange/exchanges/btc_alpha/services/trades.rb +2 -2
- data/lib/cryptoexchange/exchanges/btc_trade_ua/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/btc_trade_ua/services/market.rb +51 -0
- data/lib/cryptoexchange/exchanges/btc_trade_ua/services/order_book.rb +53 -0
- data/lib/cryptoexchange/exchanges/btc_trade_ua/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/btc_trade_ua/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/btcsquare/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/btcsquare/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/btcsquare/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/btcsquare/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/btcsquare/services/trades.rb +32 -0
- data/lib/cryptoexchange/exchanges/cfinex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/cfinex/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/cfinex/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/cfinex/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/cfinex/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/coin2001/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coin2001/services/market.rb +51 -0
- data/lib/cryptoexchange/exchanges/coin2001/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/coin2001/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/coin2001/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/coinbene/services/market.rb +8 -20
- data/lib/cryptoexchange/exchanges/coinbene/services/order_book.rb +5 -3
- data/lib/cryptoexchange/exchanges/coinbene/services/pairs.rb +6 -3
- data/lib/cryptoexchange/exchanges/coinbene/services/trades.rb +1 -1
- data/lib/cryptoexchange/exchanges/coinex/market.rb +1 -0
- data/lib/cryptoexchange/exchanges/coinex/services/market.rb +1 -1
- data/lib/cryptoexchange/exchanges/coinex/services/pairs.rb +2 -1
- data/lib/cryptoexchange/exchanges/coinfield/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinfield/services/market.rb +54 -0
- data/lib/cryptoexchange/exchanges/coinfield/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/coingi/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coingi/services/market.rb +51 -0
- data/lib/cryptoexchange/exchanges/coingi/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/coingi/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/coingi/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/coinjar/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinjar/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/coinjar/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/coinjar/services/pairs.rb +27 -0
- data/lib/cryptoexchange/exchanges/coinjar/services/trades.rb +35 -0
- data/lib/cryptoexchange/exchanges/coinnox/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinnox/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/coinnox/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/coinnox/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/coinnox/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/coinstock/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinstock/services/market.rb +54 -0
- data/lib/cryptoexchange/exchanges/coinstock/services/order_book.rb +49 -0
- data/lib/cryptoexchange/exchanges/coinstock/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/coinstock/services/trades.rb +36 -0
- data/lib/cryptoexchange/exchanges/coinsuper/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinsuper/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/coinsuper/services/pairs.rb +29 -0
- data/lib/cryptoexchange/exchanges/cointiger/market.rb +9 -0
- data/lib/cryptoexchange/exchanges/cointiger/services/market.rb +73 -0
- data/lib/cryptoexchange/exchanges/cointiger/services/order_book.rb +42 -0
- data/lib/cryptoexchange/exchanges/cointiger/services/pairs.rb +51 -0
- data/lib/cryptoexchange/exchanges/cointiger/services/trades.rb +32 -0
- data/lib/cryptoexchange/exchanges/coinut/authentication.rb +19 -0
- data/lib/cryptoexchange/exchanges/coinut/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/coinut/services/market.rb +48 -0
- data/lib/cryptoexchange/exchanges/coinut/services/order_book.rb +57 -0
- data/lib/cryptoexchange/exchanges/coinut/services/pairs.rb +42 -0
- data/lib/cryptoexchange/exchanges/coinut/services/trades.rb +46 -0
- data/lib/cryptoexchange/exchanges/cpdax/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/cpdax/services/market.rb +42 -0
- data/lib/cryptoexchange/exchanges/cpdax/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/crxzone/services/id_fetcher.rb +13 -0
- data/lib/cryptoexchange/exchanges/crxzone/services/market.rb +8 -12
- data/lib/cryptoexchange/exchanges/crxzone/services/order_book.rb +7 -11
- data/lib/cryptoexchange/exchanges/crxzone/services/pairs.rb +0 -4
- data/lib/cryptoexchange/exchanges/crxzone/services/trades.rb +8 -12
- data/lib/cryptoexchange/exchanges/cryptex/cryptex.yml +5 -0
- data/lib/cryptoexchange/exchanges/cryptex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/cryptex/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/cryptex/services/order_book.rb +48 -0
- data/lib/cryptoexchange/exchanges/{hksy → cryptex}/services/pairs.rb +3 -6
- data/lib/cryptoexchange/exchanges/cryptex/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/cryptobulls/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/cryptobulls/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/cryptobulls/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/cybex/market.rb +18 -0
- data/lib/cryptoexchange/exchanges/cybex/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/cybex/services/order_book.rb +49 -0
- data/lib/cryptoexchange/exchanges/cybex/services/pairs.rb +46 -0
- data/lib/cryptoexchange/exchanges/cybex/services/trades.rb +41 -0
- data/lib/cryptoexchange/exchanges/ddex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/ddex/services/market.rb +54 -0
- data/lib/cryptoexchange/exchanges/ddex/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/dsx/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/dsx/services/market.rb +42 -0
- data/lib/cryptoexchange/exchanges/dsx/services/order_book.rb +50 -0
- data/lib/cryptoexchange/exchanges/dsx/services/pairs.rb +24 -0
- data/lib/cryptoexchange/exchanges/dsx/services/trades.rb +36 -0
- data/lib/cryptoexchange/exchanges/ercdex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/ercdex/services/id_fetcher.rb +21 -0
- data/lib/cryptoexchange/exchanges/ercdex/services/market.rb +43 -0
- data/lib/cryptoexchange/exchanges/ercdex/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/ercdex/services/pairs.rb +28 -0
- data/lib/cryptoexchange/exchanges/ether_delta/services/market.rb +0 -2
- data/lib/cryptoexchange/exchanges/exmo/services/pairs.rb +1 -1
- data/lib/cryptoexchange/exchanges/exrates/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/exrates/services/market.rb +51 -0
- data/lib/cryptoexchange/exchanges/exrates/services/pairs.rb +29 -0
- data/lib/cryptoexchange/exchanges/f1cx/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/f1cx/services/market.rb +38 -0
- data/lib/cryptoexchange/exchanges/f1cx/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/f1cx/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/f1cx/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/fcoin/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/fcoin/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/fcoin/services/order_book.rb +42 -0
- data/lib/cryptoexchange/exchanges/fcoin/services/pairs.rb +27 -0
- data/lib/cryptoexchange/exchanges/fcoin/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/fex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/fex/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/fex/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/forkdelta/market.rb +43 -0
- data/lib/cryptoexchange/exchanges/forkdelta/services/market.rb +51 -0
- data/lib/cryptoexchange/exchanges/forkdelta/services/pairs.rb +29 -0
- data/lib/cryptoexchange/exchanges/freiexchange/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/freiexchange/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/freiexchange/services/orderbook.rb +44 -0
- data/lib/cryptoexchange/exchanges/freiexchange/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/graviex/market.rb +9 -0
- data/lib/cryptoexchange/exchanges/graviex/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/graviex/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/hadax/market.rb +9 -0
- data/lib/cryptoexchange/exchanges/hadax/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/hadax/services/pairs.rb +24 -0
- data/lib/cryptoexchange/exchanges/hotbit/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/hotbit/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/hotbit/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/idax/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/idax/services/market.rb +48 -0
- data/lib/cryptoexchange/exchanges/idax/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/idcm/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/idcm/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/idcm/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/idex/services/pairs.rb +2 -1
- data/lib/cryptoexchange/exchanges/jex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/jex/services/market.rb +70 -0
- data/lib/cryptoexchange/exchanges/jex/services/pairs.rb +42 -0
- data/lib/cryptoexchange/exchanges/joyso/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/joyso/services/id_fetcher.rb +14 -0
- data/lib/cryptoexchange/exchanges/joyso/services/market.rb +46 -0
- data/lib/cryptoexchange/exchanges/joyso/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/joyso/services/pairs.rb +27 -0
- data/lib/cryptoexchange/exchanges/kkcoin/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/kkcoin/services/market.rb +66 -0
- data/lib/cryptoexchange/exchanges/kkcoin/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/kkcoin/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/kkcoin/services/trades.rb +39 -0
- data/lib/cryptoexchange/exchanges/koinex/services/get_symbol.rb +20 -0
- data/lib/cryptoexchange/exchanges/koinex/services/market.rb +17 -15
- data/lib/cryptoexchange/exchanges/koinex/services/pairs.rb +9 -6
- data/lib/cryptoexchange/exchanges/koinok/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/koinok/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/koinok/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/kryptono/market.rb +9 -0
- data/lib/cryptoexchange/exchanges/kryptono/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/kryptono/services/order_book.rb +47 -0
- data/lib/cryptoexchange/exchanges/kryptono/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/kryptono/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/myspeedtrade/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/myspeedtrade/services/market.rb +41 -0
- data/lib/cryptoexchange/exchanges/myspeedtrade/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/myspeedtrade/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/nebula/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/nebula/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/nebula/services/pairs.rb +24 -0
- data/lib/cryptoexchange/exchanges/{hksy → nebula}/services/trades.rb +8 -7
- data/lib/cryptoexchange/exchanges/ninecoin/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/ninecoin/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/ninecoin/services/pairs.rb +23 -0
- data/lib/cryptoexchange/exchanges/novadex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/novadex/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/novadex/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/oasisdex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/oasisdex/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/oasisdex/services/pairs.rb +22 -0
- data/lib/cryptoexchange/exchanges/octaex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/octaex/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/octaex/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/octaex/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/octaex/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/okex/services/market.rb +28 -16
- data/lib/cryptoexchange/exchanges/okex/services/pairs.rb +9 -8
- data/lib/cryptoexchange/exchanges/omnitrade/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/omnitrade/services/market.rb +40 -0
- data/lib/cryptoexchange/exchanges/omnitrade/services/order_book.rb +48 -0
- data/lib/cryptoexchange/exchanges/omnitrade/services/pairs.rb +34 -0
- data/lib/cryptoexchange/exchanges/omnitrade/services/trades.rb +39 -0
- data/lib/cryptoexchange/exchanges/ooobtc/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/ooobtc/services/market.rb +48 -0
- data/lib/cryptoexchange/exchanges/ooobtc/services/order_book.rb +48 -0
- data/lib/cryptoexchange/exchanges/ooobtc/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/ooobtc/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/openledger/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/openledger/services/market.rb +42 -0
- data/lib/cryptoexchange/exchanges/openledger/services/order_book.rb +48 -0
- data/lib/cryptoexchange/exchanges/openledger/services/pairs.rb +24 -0
- data/lib/cryptoexchange/exchanges/openledger/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/orderbook/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/orderbook/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/orderbook/services/order_book.rb +42 -0
- data/lib/cryptoexchange/exchanges/orderbook/services/pairs.rb +28 -0
- data/lib/cryptoexchange/exchanges/orderbook/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/ore_bz/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/ore_bz/services/market.rb +41 -0
- data/lib/cryptoexchange/exchanges/ore_bz/services/order_book.rb +53 -0
- data/lib/cryptoexchange/exchanges/ore_bz/services/pairs.rb +31 -0
- data/lib/cryptoexchange/exchanges/ore_bz/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/radar_relay/services/market.rb +3 -10
- data/lib/cryptoexchange/exchanges/radar_relay/services/pairs.rb +6 -3
- data/lib/cryptoexchange/exchanges/rightbtc/services/market.rb +5 -4
- data/lib/cryptoexchange/exchanges/safe_trade/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/safe_trade/services/market.rb +53 -0
- data/lib/cryptoexchange/exchanges/safe_trade/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/sigen/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/sigen/services/market.rb +53 -0
- data/lib/cryptoexchange/exchanges/sigen/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/simex/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/simex/services/market.rb +54 -0
- data/lib/cryptoexchange/exchanges/simex/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/singularx/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/singularx/services/market.rb +48 -0
- data/lib/cryptoexchange/exchanges/singularx/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/sistemkoin/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/sistemkoin/services/market.rb +57 -0
- data/lib/cryptoexchange/exchanges/sistemkoin/services/pairs.rb +28 -0
- data/lib/cryptoexchange/exchanges/stocks_exchange/market.rb +1 -1
- data/lib/cryptoexchange/exchanges/stocks_exchange/services/market.rb +0 -2
- data/lib/cryptoexchange/exchanges/switcheo/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/switcheo/services/market.rb +50 -0
- data/lib/cryptoexchange/exchanges/switcheo/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/syex/market.rb +9 -0
- data/lib/cryptoexchange/exchanges/{hksy → syex}/services/market.rb +20 -11
- data/lib/cryptoexchange/exchanges/syex/services/pairs.rb +23 -0
- data/lib/cryptoexchange/exchanges/thetokenstore/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/thetokenstore/services/market.rb +49 -0
- data/lib/cryptoexchange/exchanges/thetokenstore/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/thetokenstore/services/pairs.rb +22 -0
- data/lib/cryptoexchange/exchanges/thetokenstore/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/tokenjar/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/tokenjar/services/market.rb +53 -0
- data/lib/cryptoexchange/exchanges/tokenjar/services/pairs.rb +30 -0
- data/lib/cryptoexchange/exchanges/tokenomy/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/tokenomy/services/market.rb +52 -0
- data/lib/cryptoexchange/exchanges/tokenomy/services/order_book.rb +48 -0
- data/lib/cryptoexchange/exchanges/tokenomy/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/tokenomy/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/topbtc/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/topbtc/services/market.rb +53 -0
- data/lib/cryptoexchange/exchanges/topbtc/services/pairs.rb +26 -0
- data/lib/cryptoexchange/exchanges/trademn/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/trademn/services/market.rb +38 -0
- data/lib/cryptoexchange/exchanges/trademn/services/order_book.rb +44 -0
- data/lib/cryptoexchange/exchanges/trademn/services/pairs.rb +37 -0
- data/lib/cryptoexchange/exchanges/trademn/services/trades.rb +31 -0
- data/lib/cryptoexchange/exchanges/upbit/market.rb +1 -2
- data/lib/cryptoexchange/exchanges/upbit/services/market.rb +9 -24
- data/lib/cryptoexchange/exchanges/upbit/services/order_book.rb +50 -0
- data/lib/cryptoexchange/exchanges/upbit/services/pairs.rb +9 -5
- data/lib/cryptoexchange/exchanges/upbit/services/trades.rb +33 -0
- data/lib/cryptoexchange/exchanges/vertpig/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/vertpig/services/market.rb +51 -0
- data/lib/cryptoexchange/exchanges/vertpig/services/order_book.rb +43 -0
- data/lib/cryptoexchange/exchanges/vertpig/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/wcx/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/wcx/services/market.rb +74 -0
- data/lib/cryptoexchange/exchanges/wcx/services/order_book.rb +45 -0
- data/lib/cryptoexchange/exchanges/wcx/services/pairs.rb +25 -0
- data/lib/cryptoexchange/exchanges/wcx/services/trades.rb +34 -0
- data/lib/cryptoexchange/exchanges/zebpay/market.rb +8 -0
- data/lib/cryptoexchange/exchanges/zebpay/services/market.rb +39 -0
- data/lib/cryptoexchange/exchanges/zebpay/services/pairs.rb +25 -0
- data/lib/cryptoexchange/models/market_pair.rb +12 -2
- data/lib/cryptoexchange/services/authentication.rb +43 -0
- data/lib/cryptoexchange/services/market.rb +14 -5
- data/lib/cryptoexchange/services/pairs.rb +17 -8
- data/lib/cryptoexchange/version.rb +1 -1
- metadata +298 -11
- data/lib/cryptoexchange/exchanges/hksy/hksy.yml +0 -69
- data/lib/cryptoexchange/exchanges/hksy/market.rb +0 -9
- data/lib/cryptoexchange/exchanges/okex/okex.yml +0 -43
- data/lib/cryptoexchange/exchanges/radar_relay/radar_relay.yml +0 -409
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6ba0f45d433db62f42f19181fe1645372a0ef801
|
4
|
+
data.tar.gz: 6a6e22d79af35020fec2b3ae19028d54f50d4ded
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1db1be82cf056aa43c28753638e0c44dd0ace47d07e7f3449c936881664802f3b87d2010b8754f55abe86278965005e094e7e23151d143242c2afe9a48bc347c
|
7
|
+
data.tar.gz: d698974541e984b22adcb97aba141002cc48999efc0501b302144f7799fd5f110c27e062897332e33d51ba590260a7a4e983b1ac0a7e6a09a4b339a369cfa312
|
data/README.md
CHANGED
@@ -24,89 +24,133 @@ Or install it yourself as:
|
|
24
24
|
|
25
25
|
| Exchange | Ticker | Order Book | Trade | Account | Market List |
|
26
26
|
| ----------------- | ------- | ---------- | ------- | ------- | ----------- |
|
27
|
+
| Abcc | Y | N | N | | Y |
|
27
28
|
| Abucoins | Y | Y | Y | | Y |
|
28
29
|
| ACX | Y | Y | Y | | Y |
|
29
30
|
| AEX | Y | Y | Y | | Y |
|
30
31
|
| Allcoin | Y | Y | | | User-Defined|
|
31
32
|
| ANX | Y | | | | User-Defined|
|
32
33
|
| Bancor | Y | N | N | | Y |
|
34
|
+
| Bcex | Y | Y | Y | | Y |
|
33
35
|
| Bibox | Y | Y | Y | | Y |
|
34
36
|
| BigONE | Y | Y | Y | | Y |
|
37
|
+
| Bilaxy | Y | Y | Y | | Y |
|
35
38
|
| Bit-Z | Y | | | | Y |
|
36
39
|
| Bit2C | Y | Y | Y | | User-Defined|
|
37
40
|
| Binance | Y | Y | | | Y |
|
38
41
|
| Bitbay | Y | | | | User-Defined|
|
42
|
+
| BitBNS | Y | | | | Y |
|
39
43
|
| Bitbank | Y | Y | Y | | User-Defined|
|
40
44
|
| Bitcoin Indonesia | Y | | | | User-Defined|
|
41
45
|
| Bitconnect | Y | | | | Y |
|
46
|
+
| Bitebtc | Y | Y | Y | | Y |
|
42
47
|
| Bitfinex | Y | | | | Y |
|
43
48
|
| Bitflyer | Y | | | | Y |
|
49
|
+
| Bithash | Y | Y | Y | | Y |
|
44
50
|
| Bithumb | Y | | | | Y |
|
51
|
+
| Bitibu | Y | Y | Y | | Y |
|
45
52
|
| Bitkonan | Y | | | | User-Defined|
|
46
53
|
| Bitmex | Y | Y | Y | | Y |
|
54
|
+
| Bitpaction | Y | Y | Y | | Y |
|
47
55
|
| Bits Blockchain | Y | Y | | | Y |
|
48
56
|
| Bitso | Y | | | | Y |
|
49
57
|
| Bitstamp | Y | Y | Y | | User-Defined|
|
50
58
|
| Bittrex | Y | | | | Y |
|
51
59
|
| Bleutrade | Y | | | | Y |
|
60
|
+
| Braziliex | Y | Y | Y | | Y |
|
52
61
|
| BtcAlpha | Y | Y | Y | | Y |
|
62
|
+
| BtcTradeUa | Y | Y | Y | | Y |
|
53
63
|
| BTCBox | Y | Y | | | User-Defined|
|
54
64
|
| BTC-e | | | | | |
|
55
65
|
| BTC38 | | | | | |
|
56
66
|
| BTCC | Y | | | | User-Defined|
|
57
67
|
| BTCChina | | | | | |
|
68
|
+
| Btcsquare | Y | Y | Unstable| | Y |
|
58
69
|
| BTER | Y | | | | Y |
|
59
70
|
| Buyucoin | Y | N | N | | Y |
|
60
71
|
| BX Thailand | Y | | | | Y |
|
61
|
-
| Cex | Y | Y | Y | | Y |
|
62
72
|
| CCex | Y | | | | Y |
|
73
|
+
| Cex | Y | Y | Y | | Y |
|
74
|
+
| Cfinex | Y | Y | Y | | Y |
|
63
75
|
| CHBTC | Y | | | | User-Defined|
|
64
76
|
| Cobinhood | Y | Y | | | Y |
|
77
|
+
| Coin2001 | Y | Y | Y | | Y |
|
65
78
|
| CoinEgg | Y | Y | Y | | User-Defined|
|
66
79
|
| Coincheck | Y | | | | User-Defined|
|
67
80
|
| Coinex | Y | Y | Y | | Y |
|
68
81
|
| Coinfalcon | Y | Y | Y | | Y |
|
82
|
+
| Coinfield | Y | N | N | | Y |
|
83
|
+
| Coingi | Y | Y | Y | | Y |
|
69
84
|
| CoinExchange | Y | | | | Y |
|
70
85
|
| Coinbene | Y | Y | Y | | Y |
|
71
86
|
| Coinhouse | Y | | | | Y |
|
87
|
+
| CoinJar | Y | Y | Y | | Y |
|
72
88
|
| Coinmate | Y | Y | | | User-Defined|
|
73
89
|
| Coinnest | Y | Y | Y | | User-Defined|
|
90
|
+
| Coinnox | Y | Y | Y | | Y |
|
74
91
|
| Coinroom | Y | | | | Y |
|
75
92
|
| Coinone | Y | Y | Y | | Y |
|
76
93
|
| Coinrail | Y | Y | Y | | Y |
|
77
94
|
| CoinsMarkets | Y | | | | Y |
|
95
|
+
| Coinsuper | Y | | | | Y |
|
96
|
+
| Coinstock | Y | Y | Y | | Y |
|
97
|
+
| Cointiger | Y | Y | Y | | Y |
|
98
|
+
| Coinut | Y | Y | Y | Y | Y |
|
78
99
|
| COSS | Y | | | | Y |
|
100
|
+
| Cpdax | Y | | | | Y |
|
79
101
|
| Crex24 | Y | Y | Y | | Y |
|
80
102
|
| CRXZone | Y | Y | Y | | Y |
|
103
|
+
| Cryptex | Y | Y | Y | | User-Defined|
|
81
104
|
| CryptoBridge | Y | | | | Y |
|
82
105
|
| CryptoHub | Y | N | N | | Y |
|
106
|
+
| Cryptobulls | Y | N | N | | Y |
|
83
107
|
| Cryptopia | Y | Y | Y | | Y |
|
108
|
+
| Cybex | Y | Y | Y | | Y |
|
109
|
+
| Ddex | Y | | | | Y |
|
110
|
+
| Dsx | Y | Y | Y | | Y |
|
111
|
+
| Ercdex | Y | Y | | | Y |
|
84
112
|
| EtherDelta | Y | | | | Y |
|
85
113
|
| Ethfinex | Y | Y | Y | | Y |
|
86
114
|
| Exmo | Y | Y | Y | | Y |
|
115
|
+
| Exrates | Y | N | N | | Y |
|
87
116
|
| Extstock | Y | Y | Y | | Y |
|
88
117
|
| Exx | Y | Y | Y | | Y |
|
118
|
+
| F1cx | Y | Y | Y | | Y |
|
119
|
+
| Fcoin | Y | Y | Y | | Y |
|
120
|
+
| Fex | Y | N | N | | Y |
|
89
121
|
| Fisco | Y | Y | Y | | Y |
|
122
|
+
| Forkdelta | Y | N | N | | Y |
|
123
|
+
| Freiexchange | Y | Y | | | User-Defined|
|
90
124
|
| Gate | Y | Y | Y | | Y |
|
91
125
|
| Gatecoin | Y | | | | Y |
|
92
126
|
| GDAX | Y | | | | Y |
|
93
127
|
| Gemini | Y | Y | Y | | Y |
|
94
128
|
| GetBTC | Y | Y | Y | | User-Defined|
|
95
129
|
| GOPAX | Y | Y | Y | | Y |
|
130
|
+
| Graviex | Y | N | N | | Y |
|
131
|
+
| Hadax | Y | N | N | | Y |
|
96
132
|
| HitBTC | Y | | | | Y |
|
97
133
|
| Hksy | Y | | Y | | User-Defined|
|
134
|
+
| Hotbit | Y | N | N | | Y |
|
98
135
|
| Huobi | Y | | | | Y |
|
136
|
+
| Idax | Y | N | N | | Y |
|
137
|
+
| Idcm | Y | | | | Y |
|
138
|
+
| Idex | Y | Unstable | Y | | Y |
|
99
139
|
| InfinityCoin | Y | | | | Y |
|
100
140
|
| Itbit | Y | Y | Y | | User-Defined|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
| KyberNetwork | Y | N | N | | Y |
|
141
|
+
| Jex | Y | N | N | | Y |
|
142
|
+
| Joyso | Y | Y | | | Y |
|
104
143
|
| Jubi | Y | | | | Y |
|
144
|
+
| KKex | Y | Y | Y | | Y |
|
145
|
+
| Kkcoin | Y | Y | Y | | Y |
|
105
146
|
| Koinex | Y | | | | Y |
|
147
|
+
| Koinok | Y | | | | Y |
|
106
148
|
| Korbit | Y | | | | User-Defined|
|
107
149
|
| Kraken | Y | | | | Y |
|
150
|
+
| Kryptono | Y | Y | Y | | User-Defined|
|
108
151
|
| Kucoin | Y | Y | Y | | Y |
|
109
152
|
| Kuna | Y | Y | Y | | User-Defined|
|
153
|
+
| KyberNetwork | Y | N | N | | Y |
|
110
154
|
| LakeBTC | Y | | | | Y |
|
111
155
|
| Latoken | Y | | | | Y |
|
112
156
|
| Lbank | Y | Y | Y | | Y |
|
@@ -118,58 +162,88 @@ Or install it yourself as:
|
|
118
162
|
| Lykke | Y | Y | N | | Y |
|
119
163
|
| MercadoBitcoin | Y | | | | User-Defined|
|
120
164
|
| Mercatox | Y | N | N | N | Y |
|
165
|
+
| Myspeedtrade | Y | Y | | | Y |
|
121
166
|
| Nanex | Y | N | N | N | Y |
|
167
|
+
| Nebula | Y | N | Y | | Y |
|
122
168
|
| Neraex | Y | Y | Y | | Y |
|
169
|
+
| Ninecoin | Y | | | | Y |
|
123
170
|
| NLexch | Y | | | | Y |
|
171
|
+
| Novadex | Y | N | N | | Y |
|
124
172
|
| Nova Exchange | Y | | | | Y |
|
173
|
+
| OasisDEX | Y | | | | Y |
|
174
|
+
| Octaex | Y | Y | Y | | Y |
|
125
175
|
| OKCoin | Y | | | | User-Defined|
|
126
|
-
| OKEx | Y | Y | Y | |
|
176
|
+
| OKEx | Y | Y | Y | | Y |
|
177
|
+
| OmniTrade | Y | Y | Y | Y | Y |
|
178
|
+
| Ooobtc | Y | Y | Y | | Y |
|
179
|
+
| Openledger | Y | Y | Y | | Y |
|
180
|
+
| OrderBook | Y | Y | Y | | Y |
|
181
|
+
| Ore Bz | Y | Y | Y | | Y |
|
127
182
|
| Paribu | Y | | | | Y |
|
128
183
|
| Paymium | Y | Y | Y | | User-Defined|
|
129
184
|
| Poloniex | Y | | | | Y |
|
130
185
|
| Qryptos | Y | | | | Y |
|
131
186
|
| QuadrigaCX | Y | | | | User-Defined|
|
132
187
|
| Quoine | Y | | | | Y |
|
133
|
-
| RadarRelay | Y | | | |
|
188
|
+
| RadarRelay | Y | | | | Y |
|
134
189
|
| RightBTC | Y | Y | Y | | Y |
|
190
|
+
| SafeTrade | Y | N | N | | Y |
|
191
|
+
| Sigen | Y | | | | Y |
|
192
|
+
| Simex | Y | N | N | | Y |
|
193
|
+
| Singularx | Y | N | N | | Y |
|
194
|
+
| Sistemkoin | Y | | | | Y |
|
135
195
|
| SouthXchange | Y | Y | Y | | Y |
|
136
196
|
| Stocks Exchange | Y | | | | Y |
|
197
|
+
| Switcheo | Y | N | N | | Y |
|
198
|
+
| Syex | Y | N | N | | Y |
|
137
199
|
| SZZC | Y | | | | Y |
|
138
200
|
| The Rock Trading | Y | | | | Y |
|
201
|
+
| The Token Store | Y | Y | Y | | Y |
|
139
202
|
| Tidex | Y | | | | Y |
|
203
|
+
| Tokenjar | Y | | | | Y |
|
204
|
+
| Tokenomy | Y | Y | Y | | Y |
|
205
|
+
| Topbtc | Y | N | N | | Y |
|
140
206
|
| TradeOgre | Y | Y | Y | | Y |
|
141
207
|
| Trade Satoshi | Y | | | | Y |
|
208
|
+
| Trade.mn | Y | Y | Y | | Y |
|
142
209
|
| TrustDex ** | Y | | | | Y |
|
143
210
|
| TuxExchange | Y | | | | Y |
|
144
|
-
| Upbit | Y |
|
211
|
+
| Upbit | Y | Y | Y | | Y |
|
145
212
|
| Unocoin | | | | | |
|
213
|
+
| Vertpig | Y | Y | N | | Y |
|
146
214
|
| Viabtc | Y | | | | User-Defined|
|
147
215
|
| Waves | Y | N | Y | | Y |
|
216
|
+
| Wcx | Y | Y | Y | | Y |
|
148
217
|
| Wex | Y | Y | Y | | Y |
|
149
218
|
| Yobit | Y | | | | Y |
|
150
219
|
| Yuanbao | Y | | | | User-Defined|
|
151
220
|
| Yunbi | Y | | | | Y |
|
152
221
|
| Zaif | Y | Y | Y | | Y |
|
153
222
|
| ZB | Y | Y | Y | | Y |
|
223
|
+
| Zebpay | Y | | | | Y |
|
154
224
|
|
155
225
|
** Mapping and data may be incorrect (Cannot determine correctness)
|
226
|
+
*** User-Defined requires pair id
|
156
227
|
|
157
228
|
## Usage
|
158
229
|
|
159
230
|
### List market pairs supported by an exchange
|
231
|
+
|
160
232
|
```
|
161
233
|
client = Cryptoexchange::Client.new
|
162
234
|
pairs = client.pairs('bitflyer')
|
163
235
|
```
|
164
236
|
|
165
237
|
### List exchange services for certain currency
|
238
|
+
|
166
239
|
```
|
167
240
|
client.exchange_for('btc')
|
168
241
|
|
169
|
-
# ['anx', '
|
242
|
+
# ['anx', 'binance', ...]
|
170
243
|
```
|
171
244
|
|
172
245
|
### Query the Ticker API
|
246
|
+
|
173
247
|
```
|
174
248
|
pair = client.pairs('bitflyer').first
|
175
249
|
ticker = client.ticker(pair)
|
@@ -179,9 +253,10 @@ Or install it yourself as:
|
|
179
253
|
```
|
180
254
|
|
181
255
|
### Query the OrderBook API
|
256
|
+
|
182
257
|
```
|
183
258
|
# Check if exchange has support for OrderBook
|
184
|
-
pair = client.pairs('
|
259
|
+
pair = client.pairs('bitbank').first
|
185
260
|
order_book = client.order_book(pair)
|
186
261
|
order_book.base
|
187
262
|
order_book.target
|
@@ -189,7 +264,22 @@ Or install it yourself as:
|
|
189
264
|
order_book.asks
|
190
265
|
```
|
191
266
|
|
267
|
+
### Query the Trades API
|
268
|
+
|
269
|
+
```
|
270
|
+
# Check if exchange has support for Trades
|
271
|
+
# returns array
|
272
|
+
|
273
|
+
pair = client.pairs('neraex').first
|
274
|
+
trades = client.trades(pair)
|
275
|
+
trades[0].base
|
276
|
+
trades[0].target
|
277
|
+
trades[0].price
|
278
|
+
trades[0].amount
|
279
|
+
```
|
280
|
+
|
192
281
|
### Market List
|
282
|
+
|
193
283
|
Some exchange API do not support market pair listings. For those exchanges, we included
|
194
284
|
a custom YML file to define the list of market pairs supported by that exchange.
|
195
285
|
That configuration works out of the box, however if that exchange adds new market pairs,
|
@@ -200,6 +290,7 @@ In the table above, look for the `User-Defined` under the Market List column.
|
|
200
290
|
|
201
291
|
The format of the yaml file should look like below.
|
202
292
|
Name the file <exchange_name>.yml and place it under the config/cryptoexchange directory.
|
293
|
+
|
203
294
|
```
|
204
295
|
:pairs:
|
205
296
|
- :base: BTC
|
data/lib/cryptoexchange.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require "cryptoexchange/version"
|
2
|
+
require "cryptoexchange/credentials"
|
2
3
|
require "cryptoexchange/client"
|
3
4
|
require "cryptoexchange/lru_ttl_cache"
|
4
5
|
require "cryptoexchange/helpers/string_helper"
|
@@ -8,6 +9,7 @@ require "cryptoexchange/models/ticker"
|
|
8
9
|
require "cryptoexchange/models/market_pair"
|
9
10
|
require "cryptoexchange/services/market"
|
10
11
|
require "cryptoexchange/services/pairs"
|
12
|
+
require "cryptoexchange/services/authentication"
|
11
13
|
|
12
14
|
path_files = Dir[File.join(File.dirname(__dir__), 'lib', 'cryptoexchange', '**', '*.rb')]
|
13
15
|
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Cryptoexchange
|
2
|
+
class Credentials
|
3
|
+
class << self
|
4
|
+
def get(exchange)
|
5
|
+
unless File.exists?(filename)
|
6
|
+
raise Cryptoexchange::CredentialsMissingError, "#{filename} does not exist!"
|
7
|
+
end
|
8
|
+
|
9
|
+
exchange_credentials = HashHelper.dig(credentials, exchange)
|
10
|
+
raise Cryptoexchange::CredentialsMissingError, "Credentials for #{exchange} does not exist!" unless exchange_credentials
|
11
|
+
|
12
|
+
exchange_credentials
|
13
|
+
end
|
14
|
+
|
15
|
+
private
|
16
|
+
|
17
|
+
def filename
|
18
|
+
'config/cryptoexchange/credentials.yml'
|
19
|
+
end
|
20
|
+
|
21
|
+
def credentials
|
22
|
+
YAML.load_file(filename)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/cryptoexchange/error.rb
CHANGED
@@ -0,0 +1,52 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Abcc
|
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::Abcc::Market::API_URL}/tickers.json"
|
18
|
+
end
|
19
|
+
|
20
|
+
def adapt_all(output)
|
21
|
+
output.map do |pair, ticker|
|
22
|
+
separator = /(USDT|BTC|ETH)\z/i =~ pair
|
23
|
+
base = pair[0..separator - 1]
|
24
|
+
target = pair[separator..-1]
|
25
|
+
market_pair = Cryptoexchange::Models::MarketPair.new(
|
26
|
+
base: base,
|
27
|
+
target: target,
|
28
|
+
market: Abcc::Market::NAME
|
29
|
+
)
|
30
|
+
adapt(ticker, market_pair)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def adapt(output, market_pair)
|
35
|
+
ticker = Cryptoexchange::Models::Ticker.new
|
36
|
+
ticker.base = market_pair.base
|
37
|
+
ticker.target = market_pair.target
|
38
|
+
ticker.market = Abcc::Market::NAME
|
39
|
+
ticker.bid = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'buy'))
|
40
|
+
ticker.ask = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'sell'))
|
41
|
+
ticker.last = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'last'))
|
42
|
+
ticker.high = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'high'))
|
43
|
+
ticker.low = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'low'))
|
44
|
+
ticker.volume = NumericHelper.to_d(HashHelper.dig(output, 'ticker', 'vol'))
|
45
|
+
ticker.timestamp = NumericHelper.to_d(output['at'])
|
46
|
+
ticker.payload = output
|
47
|
+
ticker
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Abcc
|
3
|
+
module Services
|
4
|
+
class Pairs < Cryptoexchange::Services::Pairs
|
5
|
+
PAIRS_URL = "#{Cryptoexchange::Exchanges::Abcc::Market::API_URL}/tickers.json"
|
6
|
+
|
7
|
+
def fetch
|
8
|
+
output = super
|
9
|
+
adapt(output)
|
10
|
+
end
|
11
|
+
|
12
|
+
def adapt(output)
|
13
|
+
output.map do |pair, _ticker|
|
14
|
+
separator = /(USDT|BTC|ETH)\z/i =~ pair
|
15
|
+
base = pair[0..separator - 1]
|
16
|
+
target = pair[separator..-1]
|
17
|
+
Cryptoexchange::Models::MarketPair.new(
|
18
|
+
base: base,
|
19
|
+
target: target,
|
20
|
+
market: Abcc::Market::NAME
|
21
|
+
)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
File without changes
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Cryptoexchange::Exchanges
|
2
|
+
module Bcex
|
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 = fetch_using_post(ticker_url(market_pair), {})
|
13
|
+
adapt(output, market_pair)
|
14
|
+
end
|
15
|
+
|
16
|
+
def ticker_url(market_pair)
|
17
|
+
base = market_pair.base.downcase
|
18
|
+
target = market_pair.target.downcase
|
19
|
+
"#{Cryptoexchange::Exchanges::Bcex::Market::API_URL}/Api_Order/ticker?symbol=#{base}2#{target}"
|
20
|
+
end
|
21
|
+
|
22
|
+
def adapt(output, market_pair)
|
23
|
+
data = output['data']
|
24
|
+
ticker = Cryptoexchange::Models::Ticker.new
|
25
|
+
ticker.base = market_pair.base
|
26
|
+
ticker.target = market_pair.target
|
27
|
+
ticker.market = Bcex::Market::NAME
|
28
|
+
ticker.ask = NumericHelper.to_d(data['sell'])
|
29
|
+
ticker.bid = NumericHelper.to_d(data['buy'])
|
30
|
+
ticker.last = NumericHelper.to_d(data['last'])
|
31
|
+
ticker.high = NumericHelper.to_d(data['high'])
|
32
|
+
ticker.low = NumericHelper.to_d(data['low'])
|
33
|
+
ticker.volume = NumericHelper.to_d(data['vol'])
|
34
|
+
ticker.timestamp = Time.now.to_i
|
35
|
+
ticker.payload = output
|
36
|
+
ticker
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|