cns 2.1.3 → 2.1.4
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/Gemfile.lock +3 -3
- data/lib/cns/apice.rb +9 -6
- data/lib/cns/kraken.rb +3 -1
- data/lib/cns/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b0deb219876c5a8fd82a5338c9d7635b11356feffcdc908514be211fb0bbc909
|
|
4
|
+
data.tar.gz: b188c18e7a9226bded29d42d0f9142280c94e9230fe7d41ff94d4776dc56222c
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9833256521bb67118970871725a5ca3da4f5cc371a8aa3d531421238f66510a8040dd778de1a42506b6aeacda1deb581195f449cd883776951ba3b97b2d8bffc
|
|
7
|
+
data.tar.gz: 163a57bfbdfe4ba4a6f864db5ba97266c4e1f5088e2b72543137c20bcc4810bf1799d5bbc03e76aa929c6b8984ad75a212f7756471b1c4c968ba923cb17d8a8c
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
cns (2.1.
|
|
4
|
+
cns (2.1.4)
|
|
5
5
|
curb
|
|
6
6
|
faraday
|
|
7
7
|
faraday-retry
|
|
@@ -213,7 +213,7 @@ PLATFORMS
|
|
|
213
213
|
DEPENDENCIES
|
|
214
214
|
bundler
|
|
215
215
|
cns!
|
|
216
|
-
rake (~> 12.0)
|
|
216
|
+
rake (~> 12.0, >= 0)
|
|
217
217
|
reek
|
|
218
218
|
rubocop
|
|
219
219
|
rubocop-rake
|
|
@@ -221,4 +221,4 @@ DEPENDENCIES
|
|
|
221
221
|
yard
|
|
222
222
|
|
|
223
223
|
BUNDLED WITH
|
|
224
|
-
|
|
224
|
+
4.0.6
|
data/lib/cns/apice.rb
CHANGED
|
@@ -71,17 +71,19 @@ module Cns
|
|
|
71
71
|
end
|
|
72
72
|
|
|
73
73
|
# Get trades from Kraken
|
|
74
|
+
# @param [Integer] days optional number of days to fetch trades from (last N days)
|
|
74
75
|
# @return [Hash] trades kraken
|
|
75
|
-
def trades_us
|
|
76
|
-
pag_us_req('TradesHistory', :trades)
|
|
76
|
+
def trades_us(days = nil)
|
|
77
|
+
pag_us_req('TradesHistory', :trades, days ? {start: days} : {})
|
|
77
78
|
rescue Curl::Err::CurlError
|
|
78
79
|
[]
|
|
79
80
|
end
|
|
80
81
|
|
|
81
82
|
# Get ledger from Kraken
|
|
83
|
+
# @param [Integer] days optional number of days to fetch ledger from (last N days)
|
|
82
84
|
# @return [Hash] ledger kraken
|
|
83
|
-
def ledger_us
|
|
84
|
-
pag_us_req('Ledgers', :ledger)
|
|
85
|
+
def ledger_us(days = nil)
|
|
86
|
+
pag_us_req('Ledgers', :ledger, days ? {start: days} : {})
|
|
85
87
|
rescue Curl::Err::CurlError
|
|
86
88
|
[]
|
|
87
89
|
end
|
|
@@ -102,15 +104,16 @@ module Cns
|
|
|
102
104
|
# Generic paginated request handler for Kraken
|
|
103
105
|
# @param [String] uri API endpoint URI
|
|
104
106
|
# @param [Symbol] key Key to extract from the result
|
|
107
|
+
# @param [Hash] prm Additional options for the request
|
|
105
108
|
# @yield [Array<Hash>] Block to process each batch of results
|
|
106
109
|
# @return [Array<Hash>] Combined results from all pages
|
|
107
|
-
def pag_us_req(uri, key)
|
|
110
|
+
def pag_us_req(uri, key, prm = {})
|
|
108
111
|
ary = []
|
|
109
112
|
ofs = 0
|
|
110
113
|
loop do
|
|
111
114
|
# Rate limiting for page requests (2s in Kraken)
|
|
112
115
|
sleep(@lpag - Time.now + 2) if @lpag && Time.now - @lpag < 2
|
|
113
|
-
ops = {nonce: nnc, ofs: ofs}
|
|
116
|
+
ops = prm.merge({nonce: nnc, ofs: ofs})
|
|
114
117
|
rcrl(@curl, "#{API[:us]}/#{uri}", method: 'POST', post_data: ops, headers: hus(uri, ops))
|
|
115
118
|
bth = pjsn(@curl).fetch(:result, {}).fetch(key, []).map { |k, v| us_unif(k, v) }
|
|
116
119
|
break if bth.empty?
|
data/lib/cns/kraken.rb
CHANGED
|
@@ -155,7 +155,9 @@ module Cns
|
|
|
155
155
|
|
|
156
156
|
# @return [Hash] dados exchange kraken - saldos & transacoes trades e ledger
|
|
157
157
|
memoize def exd
|
|
158
|
-
|
|
158
|
+
# Numero dias para buscar transacoes
|
|
159
|
+
dys = ops&.[](:d)&.positive? ? Integer(Time.now - (ops[:d] * 86_400)) : nil
|
|
160
|
+
{sl: pusa(api.account_us), kt: pust(api.trades_us(dys)), kl: pusl(api.ledger_us(dys))}
|
|
159
161
|
end
|
|
160
162
|
|
|
161
163
|
# @return [Array<String>] indices trades bigquery
|
data/lib/cns/version.rb
CHANGED