okex 0.2.6 → 0.2.8
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 +1 -1
- data/lib/okex.rb +1 -2
- data/lib/okex/api_v5.rb +21 -12
- data/lib/okex/max_size.rb +3 -0
- data/lib/okex/order.rb +11 -1
- data/lib/okex/version.rb +1 -1
- metadata +3 -4
- data/lib/okex/account_order.rb +0 -4
- data/lib/okex/trade_order.rb +0 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9d0150ce45ec59cd9ded8310ef2d1346c4dc4bac69d2c90fc676ef12edc4b50c
|
4
|
+
data.tar.gz: 96b70fdc8c95ee1cd3e0ff980a93c7bbb0b97e1a8917f98a4f471072f8ccbb39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6ca66d2608fcea9ed02dc4881b113650e22b262478bce2a885383dcb96dda5818f59f61340c8f87613eefa49b3e8d86f95677bb34a75245395178e41d3156746
|
7
|
+
data.tar.gz: 8f1a140fffe151688a64304a41ff5162f085fdc5bb4bb61daabef30c3a276946863e574242e26c277f07f79d53e7f4cdf9f86287dd7c661c68eaf90315aa220b
|
data/Gemfile.lock
CHANGED
data/lib/okex.rb
CHANGED
data/lib/okex/api_v5.rb
CHANGED
@@ -8,21 +8,16 @@ class OKEX::ApiV5
|
|
8
8
|
client.get(host, "/api/v5/public/instruments?instType=SWAP")
|
9
9
|
end
|
10
10
|
|
11
|
-
def
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
return resp['data'].map {|params| OKEX::AccountOrder.new(params)}
|
11
|
+
def orders(inst_id=nil)
|
12
|
+
url = "/api/v5/account/positions"
|
13
|
+
if inst_id.present?
|
14
|
+
url += "?instId=#{inst_id}"
|
16
15
|
end
|
17
16
|
|
18
|
-
|
19
|
-
end
|
20
|
-
|
21
|
-
def trade_orders(instrument_id)
|
22
|
-
resp = client.get(host, "/api/v5/trade/order?instId=#{instrument_id}")
|
17
|
+
resp = client.get(host, url)
|
23
18
|
|
24
|
-
if resp['
|
25
|
-
return resp['data'].map {|params| OKEX::
|
19
|
+
if resp['success']
|
20
|
+
return resp['data'].map {|params| OKEX::Order.new(params)}
|
26
21
|
end
|
27
22
|
|
28
23
|
[]
|
@@ -49,6 +44,20 @@ class OKEX::ApiV5
|
|
49
44
|
close_position(instrument_id, "short")
|
50
45
|
end
|
51
46
|
|
47
|
+
def max_size(instrument_id)
|
48
|
+
result = client.get(host, "/api/v5/account/max-size?instId=#{instrument_id}&tdMode=cross")
|
49
|
+
|
50
|
+
ret = OKEX::MaxSize.new(-1, -1)
|
51
|
+
if result['success']
|
52
|
+
el = result['data'][0]
|
53
|
+
if el.present? && el['maxBuy'].to_i > 0 && el['maxSell'].to_i > 0
|
54
|
+
ret = OKEX::MaxSize.new(el['maxBuy'].to_i, el['maxSell'].to_i)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
58
|
+
ret
|
59
|
+
end
|
60
|
+
|
52
61
|
private
|
53
62
|
|
54
63
|
attr_reader :client, :host
|
data/lib/okex/order.rb
CHANGED
@@ -7,7 +7,7 @@ module OKEX
|
|
7
7
|
@params = params
|
8
8
|
end
|
9
9
|
|
10
|
-
def
|
10
|
+
def inst_id
|
11
11
|
dig("instId")
|
12
12
|
end
|
13
13
|
|
@@ -71,6 +71,16 @@ module OKEX
|
|
71
71
|
dig("pos").to_i
|
72
72
|
end
|
73
73
|
|
74
|
+
# 是否正在持仓
|
75
|
+
def open?
|
76
|
+
pos > 0
|
77
|
+
end
|
78
|
+
|
79
|
+
# 已经平仓
|
80
|
+
def closed?
|
81
|
+
pos == 0
|
82
|
+
end
|
83
|
+
|
74
84
|
private
|
75
85
|
|
76
86
|
def dig(key)
|
data/lib/okex/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: okex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Zhang
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-07-
|
11
|
+
date: 2021-07-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -99,15 +99,14 @@ files:
|
|
99
99
|
- bin/console
|
100
100
|
- bin/setup
|
101
101
|
- lib/okex.rb
|
102
|
-
- lib/okex/account_order.rb
|
103
102
|
- lib/okex/api_v3.rb
|
104
103
|
- lib/okex/api_v5.rb
|
105
104
|
- lib/okex/client.rb
|
106
105
|
- lib/okex/coin.rb
|
107
106
|
- lib/okex/coin/bitcoin.rb
|
108
107
|
- lib/okex/host.rb
|
108
|
+
- lib/okex/max_size.rb
|
109
109
|
- lib/okex/order.rb
|
110
|
-
- lib/okex/trade_order.rb
|
111
110
|
- lib/okex/version.rb
|
112
111
|
- okex.gemspec
|
113
112
|
homepage: https://github.com/daqing/okex
|
data/lib/okex/account_order.rb
DELETED
data/lib/okex/trade_order.rb
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
module OKEX
|
2
|
-
class TradeOrder < Order
|
3
|
-
|
4
|
-
# 预估强平价
|
5
|
-
def est_liq_price
|
6
|
-
dig("liqPx").to_f
|
7
|
-
end
|
8
|
-
|
9
|
-
# 最新成交价
|
10
|
-
def last_price
|
11
|
-
dig("fillPx").to_f
|
12
|
-
end
|
13
|
-
|
14
|
-
# 未实现收益
|
15
|
-
def upl
|
16
|
-
dig("pnl").to_f
|
17
|
-
end
|
18
|
-
|
19
|
-
# 持仓张数
|
20
|
-
def pos
|
21
|
-
dig("sz").to_i
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|