quadrigacx 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/quadrigacx/client/private.rb +11 -1
- data/lib/quadrigacx/version.rb +1 -1
- data/spec/client_spec.rb +15 -0
- data/spec/fixtures/vcr_cassettes/limit_sell.yml +55 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f0b7ec3af2cf03eb0b5c8bf0a4c1a6e3622f4baa
|
4
|
+
data.tar.gz: 433c6e60a3c4cabc0bbee89be191c2bef8c29dd3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: adf8015e44ce0ed3f57adba665584b7f953ea5bbfcebedb3db29405deb3a231654136d74763397495adc3cfb5ea294a54e9f042be6804c3d3ac21e0ad4507a33
|
7
|
+
data.tar.gz: 3a345dd6201f4cdf6e534bb0c7d027d7fbb6396f85b977b26df086c1a5a7715e64f588d576d1ebd528afd2e53c33edc70071c07f47f13a2e555fb8b6ad1c749d
|
data/Gemfile.lock
CHANGED
@@ -6,7 +6,7 @@ module QuadrigaCX
|
|
6
6
|
request(:post, '/balance')
|
7
7
|
end
|
8
8
|
|
9
|
-
# Places a limit order. Returns JSON describing the order
|
9
|
+
# Places a limit buy order. Returns JSON describing the order
|
10
10
|
#
|
11
11
|
# amount - amount of major currency
|
12
12
|
# price - price to buy at
|
@@ -16,6 +16,16 @@ module QuadrigaCX
|
|
16
16
|
request(:post, '/buy', params)
|
17
17
|
end
|
18
18
|
|
19
|
+
# Places a limit sell order. Returns JSON describing the order
|
20
|
+
#
|
21
|
+
# amount - amount of major currency
|
22
|
+
# price - price to sell at
|
23
|
+
# book - optional, if not specified, will default to btc_cad
|
24
|
+
def limit_sell params={}
|
25
|
+
raise ConfigurationError.new('No price specified for limit sell') unless params[:price]
|
26
|
+
request(:post, '/sell', params)
|
27
|
+
end
|
28
|
+
|
19
29
|
# Places a market order. Returns JSON describing the order
|
20
30
|
#
|
21
31
|
# amount - amount of minor currency to spend
|
data/lib/quadrigacx/version.rb
CHANGED
data/spec/client_spec.rb
CHANGED
@@ -48,6 +48,21 @@ describe QuadrigaCX::Client do
|
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
|
+
describe '#limit_sell' do
|
52
|
+
it 'throws an error when no price is provided' do
|
53
|
+
expect { client.limit_sell }.to raise_error(QuadrigaCX::ConfigurationError)
|
54
|
+
end
|
55
|
+
|
56
|
+
it 'places a limit sell order' do
|
57
|
+
VCR.use_cassette('limit_sell') do
|
58
|
+
response = client.limit_sell(price: '240', amount: '0.01') # 0.01 BTC
|
59
|
+
|
60
|
+
expect(response.datetime).not_to be_nil
|
61
|
+
expect(response.id).not_to be_nil
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
51
66
|
describe '#market_buy' do
|
52
67
|
it 'places a market buy order' do
|
53
68
|
VCR.use_cassette('market_buy') do
|
@@ -0,0 +1,55 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://api.quadrigacx.com/v2/sell
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: '{"price":"240","amount":"0.01","key":"kOnVDjfPPh","nonce":"1421691283730","signature":"25d144ecbe94189688629ecd77b917d58ffdcdc4046172613dcb864b5471840d"}'
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- application/json
|
12
|
+
Accept-Encoding:
|
13
|
+
- gzip, deflate
|
14
|
+
Content-Type:
|
15
|
+
- application/json
|
16
|
+
Content-Length:
|
17
|
+
- '153'
|
18
|
+
User-Agent:
|
19
|
+
- Ruby
|
20
|
+
response:
|
21
|
+
status:
|
22
|
+
code: 200
|
23
|
+
message: OK
|
24
|
+
headers:
|
25
|
+
Server:
|
26
|
+
- cloudflare-nginx
|
27
|
+
Date:
|
28
|
+
- Mon, 19 Jan 2015 18:14:43 GMT
|
29
|
+
Content-Type:
|
30
|
+
- application/json; charset=utf-8
|
31
|
+
Transfer-Encoding:
|
32
|
+
- chunked
|
33
|
+
Connection:
|
34
|
+
- keep-alive
|
35
|
+
Set-Cookie:
|
36
|
+
- __cfduid=de027c5215a86a12b6e35021f295df4a31421691281; expires=Tue, 19-Jan-16
|
37
|
+
18:14:41 GMT; path=/; domain=.quadrigacx.com; HttpOnly
|
38
|
+
- ci_session=CzJTZ1E1UGpUewB%2FBWBTYgNnAT5cfldxWTwMew4sUG4AM1BvUA4LbVtnBipSOAd0BGoLNFA9UmhbLQVhD2xRNQI3BTZWMw8%2BDmVTYFdjXWoLYVNtUTNQNlQyADkFO1NrAzEBMlxoVzpZbQw%2BDmtQYwBtUDdQZQs8W2UGKlI4B3QEags2UD9SaFstBWkPf1FbAmMFZVZjDyoON1NxVyVdcAtoUy5ROlBhVDMANgV4U2IDYAE8XHJXNFlqDCYOblAzAHJQM1BgCzJbIQYzUnAHPQRhCzdQNVJwW3oFcw9qUXYCXQVgVmAPPQ48U3ZXdF1pCyBTZ1E0UGpUIgBeBS9TMQMuASZcZ1dxWWMMOQ5sUD0AflBtUDALd1t3BldSYgdkBCQLblB5UjtbewV5Dy1RPwJrBTtWNg9sDmBTM1dgXWsLYlNvUThQYVQ7AH8FYFNqA20BJlwpV3FZPAx6DgBQYwA9UHVQMAsmWzgGe1I5BzcEagslUC1SaVty;
|
39
|
+
expires=Mon, 19-Jan-2015 20:14:41 GMT; Max-Age=7200; path=/
|
40
|
+
X-Frame-Options:
|
41
|
+
- SAMEORIGIN
|
42
|
+
Cf-Ray:
|
43
|
+
- 1ab5036b6473052e-YYZ
|
44
|
+
Content-Encoding:
|
45
|
+
- gzip
|
46
|
+
body:
|
47
|
+
encoding: ASCII-8BIT
|
48
|
+
string: !binary |-
|
49
|
+
H4sIAAAAAAAAAxyOQQqDMBQFr1LeOsr/okFzmWKMjdFag/6gUnr3orOdxcwX
|
50
|
+
7bykj8CAcmK6gYJdlgkGVrpn1zoouFZ6CXMPg4K4yogzbh7cGC5NyVAIDga6
|
51
|
+
prRJXcRh9FrsYU+ZHPnZpXX4LDodOkY6tviy+l2FcfCukH70q6tr3vs9QSGu
|
52
|
+
obsrJeX3yiatpO0ahIKc8ZKM3x8AAP//AwCepF4GugAAAA==
|
53
|
+
http_version:
|
54
|
+
recorded_at: Mon, 19 Jan 2015 18:14:46 GMT
|
55
|
+
recorded_with: VCR 2.9.3
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: quadrigacx
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maros Hluska
|
@@ -133,6 +133,7 @@ files:
|
|
133
133
|
- spec/fixtures/vcr_cassettes/balance.yml
|
134
134
|
- spec/fixtures/vcr_cassettes/cancel_order.yml
|
135
135
|
- spec/fixtures/vcr_cassettes/limit_buy.yml
|
136
|
+
- spec/fixtures/vcr_cassettes/limit_sell.yml
|
136
137
|
- spec/fixtures/vcr_cassettes/market_buy.yml
|
137
138
|
- spec/fixtures/vcr_cassettes/order_book.yml
|
138
139
|
- spec/fixtures/vcr_cassettes/withdraw.yml
|
@@ -166,6 +167,7 @@ test_files:
|
|
166
167
|
- spec/fixtures/vcr_cassettes/balance.yml
|
167
168
|
- spec/fixtures/vcr_cassettes/cancel_order.yml
|
168
169
|
- spec/fixtures/vcr_cassettes/limit_buy.yml
|
170
|
+
- spec/fixtures/vcr_cassettes/limit_sell.yml
|
169
171
|
- spec/fixtures/vcr_cassettes/market_buy.yml
|
170
172
|
- spec/fixtures/vcr_cassettes/order_book.yml
|
171
173
|
- spec/fixtures/vcr_cassettes/withdraw.yml
|