coin-market 0.1.0 → 0.2.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 +29 -0
- data/coin-market.gemspec +1 -1
- data/lib/coin/market.rb +46 -16
- data/lib/coin/market/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0ff1e42ac06a874df93f4bd2cf40b6eb0663cc03
|
4
|
+
data.tar.gz: 594415f9d72f6706c481a548c9ab51298291caf6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 53c576528f25bc90d4312f6fe9dbc963bbb973f050219a17c80637de58e80fed37349af9c519d75552a4db69a1b0b9d2988f32f4cc5651819b699233b1864487
|
7
|
+
data.tar.gz: 0e11716c23d6f3e8710ba46391a47ee4f6f45194671e5e41d54184f087aaab9ab8f33f64ac9cbf36b2e4b2c98ef4343a9930dbd61f66a9446f6807b9fd89cae4
|
data/README.md
CHANGED
@@ -22,9 +22,13 @@ Or install it yourself as:
|
|
22
22
|
## Usage
|
23
23
|
|
24
24
|
### Korbit
|
25
|
+
|
26
|
+
https://apidocs.korbit.co.kr/
|
27
|
+
|
25
28
|
```ruby
|
26
29
|
require 'coin-market'
|
27
30
|
|
31
|
+
# ticker
|
28
32
|
korbit = Coin::Market::Korbit.new
|
29
33
|
response = korbit.get_ticker_btc_krw
|
30
34
|
=> {"timestamp"=>1512415955593, "last"=>"13357500"}
|
@@ -38,6 +42,31 @@ response = korbit.get_ticker_eth_krw
|
|
38
42
|
response = korbit.get_ticker_xrp_krw
|
39
43
|
=> {"timestamp"=>1512415720622, "last"=>"286"}
|
40
44
|
|
45
|
+
|
46
|
+
# ticker detail
|
47
|
+
korbit.get_ticker_detailed_btc_krw
|
48
|
+
=> {"timestamp"=>1512419385635,
|
49
|
+
"last"=>"13410000",
|
50
|
+
"bid"=>"13410000",
|
51
|
+
"ask"=>"13410500",
|
52
|
+
"low"=>"12833000",
|
53
|
+
"high"=>"13500000",
|
54
|
+
"volume"=>"4690.751945329017480177",
|
55
|
+
"change"=>"43500",
|
56
|
+
"changePercent"=>"0.33"}
|
57
|
+
|
58
|
+
korbit.get_ticker_detailed_eth_krw
|
59
|
+
=> {"timestamp"=>1512418570222,
|
60
|
+
"last"=>"542900",
|
61
|
+
"bid"=>"542450",
|
62
|
+
"ask"=>"542950",
|
63
|
+
"low"=>"532400",
|
64
|
+
"high"=>"549800",
|
65
|
+
"volume"=>"23443.919674902796768231",
|
66
|
+
"change"=>"-50",
|
67
|
+
"changePercent"=>"-0.01"}
|
68
|
+
|
69
|
+
|
41
70
|
```
|
42
71
|
|
43
72
|
### Coinone
|
data/coin-market.gemspec
CHANGED
@@ -26,6 +26,6 @@ Gem::Specification.new do |spec|
|
|
26
26
|
spec.add_development_dependency "rake", "~> 10.0"
|
27
27
|
spec.add_development_dependency "rspec", "~> 3.2"
|
28
28
|
|
29
|
-
spec.add_dependency "rest-client", "~> 2.
|
29
|
+
spec.add_dependency "rest-client", "~> 2.0"
|
30
30
|
spec.required_ruby_version = ">= 2.0.0"
|
31
31
|
end
|
data/lib/coin/market.rb
CHANGED
@@ -6,47 +6,77 @@ require 'json'
|
|
6
6
|
module Coin
|
7
7
|
module Market
|
8
8
|
BTC_KRW = "btc_krw"
|
9
|
+
ETH_KRW = "eth_krw"
|
9
10
|
ETC_KRW = "etc_krw"
|
10
11
|
XRP_KRW = "xrp_krw"
|
11
12
|
BCH_KRW = "bch_krw"
|
13
|
+
|
14
|
+
SUPPORT_CURRENCY = [BTC_KRW, ETH_KRW, ETC_KRW, XRP_KRW, BCH_KRW]
|
12
15
|
|
13
16
|
class Korbit
|
14
17
|
GET_TICKER = "https://api.korbit.co.kr/v1/ticker"
|
18
|
+
GET_TICKER_DETAILED = "https://api.korbit.co.kr/v1/ticker/detailed"
|
15
19
|
|
16
|
-
def
|
17
|
-
|
18
|
-
|
20
|
+
def self.create_method(currency)
|
21
|
+
define_method "get_ticker_#{currency}" do
|
22
|
+
get_ticker(currency)
|
23
|
+
end
|
19
24
|
|
20
|
-
|
21
|
-
|
25
|
+
define_method "get_ticker_detailed_#{currency}" do
|
26
|
+
get_ticker_detailed(currency)
|
27
|
+
end
|
22
28
|
end
|
23
29
|
|
24
|
-
|
25
|
-
|
30
|
+
create_method(BTC_KRW)
|
31
|
+
create_method(ETH_KRW)
|
32
|
+
create_method(ETC_KRW)
|
33
|
+
create_method(XRP_KRW)
|
34
|
+
create_method(BCH_KRW)
|
35
|
+
|
36
|
+
|
37
|
+
def get_ticker_detailed(currency_pair)
|
38
|
+
unless is_supported_ticker(currency_pair)
|
39
|
+
raise Exceptions::CannotSupportException, __method__ + currency_pair
|
40
|
+
end
|
41
|
+
|
42
|
+
ticker = _process_api(get_ticker_detailed_with_currency_pair(currency_pair))
|
43
|
+
|
44
|
+
if ticker.nil?
|
45
|
+
raise Exceptions::NetworkException, __method__ + currency_pair
|
46
|
+
end
|
47
|
+
ticker
|
26
48
|
end
|
27
49
|
|
28
|
-
def
|
29
|
-
|
50
|
+
def _process_api(url)
|
51
|
+
http_response = RestClient.get(url)
|
52
|
+
JSON.parse(http_response.body)
|
30
53
|
end
|
31
|
-
|
54
|
+
|
32
55
|
def get_ticker(currency_pair)
|
33
56
|
unless is_supported_ticker(currency_pair)
|
34
|
-
raise Exceptions::CannotSupportException,
|
57
|
+
raise Exceptions::CannotSupportException, __method__ + currency_pair
|
35
58
|
end
|
36
|
-
|
37
|
-
ticker =
|
59
|
+
|
60
|
+
ticker = _process_api(get_ticker_with_currency_pair(currency_pair))
|
61
|
+
|
38
62
|
if ticker.nil?
|
39
|
-
raise Exceptions::NetworkException,
|
63
|
+
raise Exceptions::NetworkException, __method__ + currency_pair
|
40
64
|
end
|
41
65
|
ticker
|
42
66
|
end
|
43
67
|
|
44
|
-
|
68
|
+
private
|
69
|
+
|
70
|
+
def get_ticker_with_currency_pair(currency_pair)
|
45
71
|
GET_TICKER + "?=currency_pair=" + currency_pair
|
46
72
|
end
|
47
73
|
|
74
|
+
def get_ticker_detailed_with_currency_pair(currency_pair)
|
75
|
+
GET_TICKER_DETAILED + "?=currency_pair=" + currency_pair
|
76
|
+
end
|
77
|
+
|
48
78
|
def is_supported_ticker(currency_pair)
|
49
|
-
currency_pair
|
79
|
+
SUPPORT_CURRENCY.include?(currency_pair)
|
50
80
|
end
|
51
81
|
|
52
82
|
end
|
data/lib/coin/market/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coin-market
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- suhanlee
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '2.
|
61
|
+
version: '2.0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '2.
|
68
|
+
version: '2.0'
|
69
69
|
description: Coin Marekts API Libary including korbit, bitthumb, coinone, coinnest
|
70
70
|
email:
|
71
71
|
- suhan.lee.k@gmail.com
|