binance-connector-ruby 1.6.0 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -29,7 +29,7 @@ module Binance
29
29
  # @option kwargs [Float] :icebergeQty
30
30
  # @option kwargs [String] :newOrderRespType Set the response JSON. ACK, RESULT, or FULL.
31
31
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
32
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#test-new-order-trade
32
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#test-new-order-trade
33
33
  def new_order_test(symbol:, side:, type:, **kwargs)
34
34
  Binance::Utils::Validation.require_param('symbol', symbol)
35
35
  Binance::Utils::Validation.require_param('side', side)
@@ -61,7 +61,7 @@ module Binance
61
61
  # @option kwargs [Float] :icebergeQty
62
62
  # @option kwargs [String] :newOrderRespType Set the response JSON. ACK, RESULT, or FULL.
63
63
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
64
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#new-order-trade
64
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#new-order-trade
65
65
  def new_order(symbol:, side:, type:, **kwargs)
66
66
  Binance::Utils::Validation.require_param('symbol', symbol)
67
67
  Binance::Utils::Validation.require_param('side', side)
@@ -84,7 +84,7 @@ module Binance
84
84
  # @option kwargs [String] :origClientOrderId
85
85
  # @option kwargs [String] :newClientOrderId
86
86
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
87
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#cancel-order-trade
87
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#cancel-order-trade
88
88
  def cancel_order(symbol:, **kwargs)
89
89
  Binance::Utils::Validation.require_param('symbol', symbol)
90
90
 
@@ -98,7 +98,7 @@ module Binance
98
98
  # @param symbol [String] the symbol
99
99
  # @param kwargs [Hash]
100
100
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
101
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#cancel-all-open-orders-on-a-symbol-trade
101
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#cancel-all-open-orders-on-a-symbol-trade
102
102
  def cancel_open_orders(symbol:, **kwargs)
103
103
  Binance::Utils::Validation.require_param('symbol', symbol)
104
104
 
@@ -114,7 +114,7 @@ module Binance
114
114
  # @option kwargs [Integer] :orderId
115
115
  # @option kwargs [String] :origClientOrderId
116
116
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
117
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#query-order-user_data
117
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-order-user_data
118
118
  def get_order(symbol:, **kwargs)
119
119
  Binance::Utils::Validation.require_param('symbol', symbol)
120
120
 
@@ -128,7 +128,7 @@ module Binance
128
128
  # @param kwargs [Hash]
129
129
  # @option kwargs [String] :symbol the symbol
130
130
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
131
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#current-open-orders-user_data
131
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#current-open-orders-user_data
132
132
  def open_orders(**kwargs)
133
133
  @session.sign_request(:get, '/api/v3/openOrders', params: kwargs)
134
134
  end
@@ -146,7 +146,7 @@ module Binance
146
146
  # @option kwargs [String] :endTime
147
147
  # @option kwargs [String] :limit Default 500; max 1000.
148
148
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
149
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#all-orders-user_data
149
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#all-orders-user_data
150
150
  def all_orders(symbol:, **kwargs)
151
151
  Binance::Utils::Validation.require_param('symbol', symbol)
152
152
 
@@ -162,32 +162,42 @@ module Binance
162
162
  # @param symbol [String] the symbol
163
163
  # @param side [String]
164
164
  # @param quantity [Float]
165
- # @param price [Float]
166
- # @param stopPrice [Float]
165
+ # @param aboveType [String]
166
+ # @param belowType [String]
167
167
  # @param kwargs [Hash]
168
168
  # @option kwargs [String] :listClientOrderId
169
- # @option kwargs [String] :limitClientOrderId
170
- # @option kwargs [Float] :limitIcebergQty
171
- # @option kwargs [String] :stopClientOrderId
172
- # @option kwargs [Float] :stopLimitPrice
173
- # @option kwargs [Float] :stopIcebergQty
174
- # @option kwargs [Float] :stopLimitTimeInForce GTC/ FOK/ IOC
169
+ # @option kwargs [String] :aboveClientOrderId Arbitrary unique ID among open orders for the above order. Automatically generated if not sent
170
+ # @option kwargs [Integer] :aboveIcebergQty Note that this can only be used if aboveTimeInForce is GTC
171
+ # @option kwargs [Float] :abovePrice
172
+ # @option kwargs [Float] :aboveStopPriceCan be used if aboveType is STOP_LOSS or STOP_LOSS_LIMIT. Either aboveStopPrice or aboveTrailingDelta or both, must be specified.
173
+ # @option kwargs [Integer] :aboveTrailingDelta
174
+ # @option kwargs [Float] :aboveTimeInForce Required if the aboveType is STOP_LOSS_LIMIT.
175
+ # @option kwargs [Integer] :aboveStrategyId Arbitrary numeric value identifying the above order within an order strategy.
176
+ # @option kwargs [Integer] :aboveStrategyType Arbitrary numeric value identifying the above order strategy. Values smaller than 1000000 are reserved and cannot be used.
177
+ # @option kwargs [String] :belowClientOrderId Arbitrary unique ID among open orders for the below order. Automatically generated if not sent
178
+ # @option kwargs [Integer] :belowIcebergQty Note that this can only be used if belowTimeInForce is GTC
179
+ # @option kwargs [Float] :belowPrice Can be used if belowType is STOP_LOSS_LIMIT or LIMIT_MAKER to specify the limit price.
180
+ # @option kwargs [Float] :belowStopPrice Can be used if belowType is STOP_LOSS or STOP_LOSS_LIMIT. Either belowStopPrice or belowTrailingDelta or both, must be specified.
181
+ # @option kwargs [Integer] :belowTrailingDelta
182
+ # @option kwargs [String] :belowTimeInForce Required if the belowType is STOP_LOSS_LIMIT
183
+ # @option kwargs [Integer] :belowStrategyId Arbitrary numeric value identifying the below order within an order strategy
184
+ # @option kwargs [String] :belowStrategyType Arbitrary numeric value identifying the below order strategy. Values smaller than 1000000 are reserved and cannot be used.
175
185
  # @option kwargs [String] :newOrderRespType
176
186
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
177
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#new-oco---deprecated-trade
178
- def new_oco_order(symbol:, side:, quantity:, price:, stopPrice:, **kwargs)
187
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#new-order-list---oco-trade
188
+ def new_oco_order(symbol:, side:, quantity:, aboveType:, belowType:, **kwargs)
179
189
  Binance::Utils::Validation.require_param('symbol', symbol)
180
190
  Binance::Utils::Validation.require_param('side', side)
181
191
  Binance::Utils::Validation.require_param('quantity', quantity)
182
- Binance::Utils::Validation.require_param('price', price)
183
- Binance::Utils::Validation.require_param('stopPrice', stopPrice)
192
+ Binance::Utils::Validation.require_param('aboveType', aboveType)
193
+ Binance::Utils::Validation.require_param('belowType', belowType)
184
194
 
185
195
  @session.sign_request(:post, '/api/v3/order/oco', params: kwargs.merge(
186
196
  symbol: symbol,
187
197
  side: side,
188
198
  quantity: quantity,
189
- price: price,
190
- stopPrice: stopPrice
199
+ aboveType: aboveType,
200
+ belowType: belowType
191
201
  ))
192
202
  end
193
203
 
@@ -201,7 +211,7 @@ module Binance
201
211
  # @option kwargs [String] :listClientOrderId
202
212
  # @option kwargs [String] :newClientOrderId
203
213
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
204
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#cancel-order-list-trade
214
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#cancel-order-list-trade
205
215
  def cancel_order_list(symbol:, **kwargs)
206
216
  Binance::Utils::Validation.require_param('symbol', symbol)
207
217
 
@@ -218,7 +228,7 @@ module Binance
218
228
  # @option kwargs [Integer] :orderListId
219
229
  # @option kwargs [String] :orgClientOrderId
220
230
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
221
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#query-order-lists-user_data
231
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-order-list-user_data
222
232
  def order_list(**kwargs)
223
233
  @session.sign_request(:get, '/api/v3/orderList', params: kwargs)
224
234
  end
@@ -235,7 +245,7 @@ module Binance
235
245
  # @option kwargs [String] :endTime
236
246
  # @option kwargs [String] :limit Default 500; max 1000.
237
247
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
238
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#query-all-order-lists-user_data
248
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-all-order-lists-user_data
239
249
  def all_order_list(**kwargs)
240
250
  @session.sign_request(:get, '/api/v3/allOrderList', params: kwargs)
241
251
  end
@@ -246,7 +256,7 @@ module Binance
246
256
  #
247
257
  # @param kwargs [Hash]
248
258
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
249
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#query-open-order-lists-user_data
259
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-open-order-lists-user_data
250
260
  def open_order_list(**kwargs)
251
261
  @session.sign_request(:get, '/api/v3/openOrderList', params: kwargs)
252
262
  end
@@ -257,7 +267,7 @@ module Binance
257
267
  #
258
268
  # @param kwargs [Hash]
259
269
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
260
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#account-information-user_data
270
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#account-information-user_data
261
271
  def account(**kwargs)
262
272
  @session.sign_request(:get, '/api/v3/account', params: kwargs)
263
273
  end
@@ -274,7 +284,7 @@ module Binance
274
284
  # @option kwargs [Integer] :fromId TradeId to fetch from. Default gets most recent trades.
275
285
  # @option kwargs [Integer] :limit Default 500; max 1000.
276
286
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
277
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#account-trade-list-user_data
287
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#account-trade-list-user_data
278
288
  def my_trades(symbol:, **kwargs)
279
289
  @session.sign_request(:get, '/api/v3/myTrades', params: kwargs.merge(symbol: symbol))
280
290
  end
@@ -285,11 +295,59 @@ module Binance
285
295
  #
286
296
  # @param kwargs [Hash]
287
297
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
288
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#query-current-order-count-usage-trade
298
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-unfilled-order-count-user_data
289
299
  def get_order_rate_limit(**kwargs)
290
300
  @session.sign_request(:get, '/api/v3/rateLimit/order', params: kwargs)
291
301
  end
292
302
 
303
+ # Query Prevented Matches (USER_DATA)
304
+ #
305
+ # GET /api/v3/myPreventedMatches
306
+ #
307
+ # @param symbol [String]
308
+ # @param kwargs [Hash]
309
+ # @param kwargs [Integer] :preventedMatchId
310
+ # @param kwargs [Integer] :orderId
311
+ # @param kwargs [Integer] :fromPreventedMatchId
312
+ # @param kwargs [Integer] :limit Default: 500; Max: 1000
313
+ # @param kwargs [Integer] :recvWindow The value cannot be greater than 60000
314
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-prevented-matches-user_data
315
+ def my_prevented_matches(symbol:, **kwargs)
316
+ Binance::Utils::Validation.require_param('symbol', symbol)
317
+
318
+ @session.sign_request(:get, '/api/v3/myPreventedMatches', params: kwargs.merge(symbol: symbol))
319
+ end
320
+
321
+ # Query Allocations (USER_DATA)
322
+ #
323
+ # GET /api/v3/myAllocations
324
+ #
325
+ # @param symbol [String]
326
+ # @param kwargs [Hash]
327
+ # @param kwargs [Integer] :startTime
328
+ # @param kwargs [Integer] :endTime
329
+ # @param kwargs [Integer] :fromAllocationId
330
+ # @param kwargs [Integer] :limit Default 500;Max 1000
331
+ # @param kwargs [Integer] :orderId
332
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-allocations-user_data
333
+ def my_allocations(symbol:, **kwargs)
334
+ Binance::Utils::Validation.require_param('symbol', symbol)
335
+
336
+ @session.sign_request(:get, '/api/v3/myAllocations', params: kwargs.merge(symbol: symbol))
337
+ end
338
+
339
+ # Query Commission Rates (USER_DATA)
340
+ #
341
+ # GET /api/v3/account/commission
342
+ #
343
+ # @param symbol [String]
344
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#query-commission-rates-user_data
345
+ def commission_rate(symbol:)
346
+ Binance::Utils::Validation.require_param('symbol', symbol)
347
+
348
+ @session.sign_request(:get, '/api/v3/account/commission', params: { symbol: symbol })
349
+ end
350
+
293
351
  # Cancel an Existing Order and Send a New Order (TRADE)
294
352
  #
295
353
  # POST /api/v3/order/cancelReplace
@@ -307,12 +365,18 @@ module Binance
307
365
  # @option kwargs [String] :cancelOrigClientOrderId
308
366
  # @option kwargs [Integer] :cancelOrderId
309
367
  # @option kwargs [String] :newClientOrderId
368
+ # @option kwargs [Integer] :strategyId
369
+ # @option kwargs [Integer] :strategyType The value cannot be less than 1000000
310
370
  # @option kwargs [Float] :stopPrice
311
371
  # @option kwargs [Integer] :trailingDelta
312
372
  # @option kwargs [Float] :icebergQty
313
373
  # @option kwargs [String] :newOrderRespType
374
+ # @option kwargs [String] :selfTradePreventionMode The allowed enums is dependent on what is configured on the symbo
375
+ # @option kwargs [String] :cancelRestrictions ONLY_NEW - Cancel will succeed if the order status is NEW. ONLY_PARTIALLY_FILLED - Cancel will succeed if order status is PARTIALLY_FILLED
376
+ # @option kwargs [String] :orderRateLimitExceededMode DO_NOTHING (default)- will only attempt to cancel the order if account has not exceeded the unfilled order rate limit
377
+ # CANCEL_ONLY - will always cancel the order
314
378
  # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
315
- # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api#cancel-an-existing-order-and-send-a-new-order-trade
379
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/rest-api/public-api-endpoints#cancel-an-existing-order-and-send-a-new-order-trade
316
380
  def cancel_replace(symbol:, side:, type:, cancelReplaceMode:, **kwargs)
317
381
  Binance::Utils::Validation.require_param('symbol', symbol)
318
382
  Binance::Utils::Validation.require_param('side', side)
@@ -16,6 +16,17 @@ module Binance
16
16
  @session.public_request(path: '/sapi/v1/system/status')
17
17
  end
18
18
 
19
+ # Get symbols delist schedule for spot (MARKET_DATA)
20
+ #
21
+ # GET /sapi/v1/spot/delist-schedule
22
+ #
23
+ # @param kwargs [Hash]
24
+ # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
25
+ # @see https://developers.binance.com/docs/wallet/others/delist-schedule
26
+ def delist_schedule(**kwargs)
27
+ @session.public_request(path: '/sapi/v1/spot/delist-schedule', params: kwargs)
28
+ end
29
+
19
30
  # All Coins' Information (USER_DATA)
20
31
  #
21
32
  # GET /sapi/v1/capital/config/getall
@@ -149,6 +160,36 @@ module Binance
149
160
  ))
150
161
  end
151
162
 
163
+ # Fetch deposit address list with network (USER_DATA)
164
+ #
165
+ # GET /sapi/v1/capital/deposit/address/list
166
+ #
167
+ # @param coin [String] coin refers to the parent network address format that the address is using
168
+ # @param kwargs [Hash]
169
+ # @option kwargs [String] :network
170
+ # @see https://developers.binance.com/docs/wallet/capital/fetch-deposit-address-list-with-network
171
+ def deposit_address_list(coin:, **kwargs)
172
+ Binance::Utils::Validation.require_param('coin', coin)
173
+
174
+ @session.sign_request(:get, '/sapi/v1/capital/deposit/address/list', params: kwargs.merge(
175
+ coin: coin
176
+ ))
177
+ end
178
+
179
+ # One click arrival deposit apply (for expired address deposit) (USER_DATA)
180
+ #
181
+ # POST /sapi/v1/capital/deposit/credit-apply
182
+ #
183
+ # @param kwargs [Hash]
184
+ # @option kwargs [String] :depositId Deposit record Id, priority use
185
+ # @option kwargs [String] :txId Deposit txId, used when depositId is not specified
186
+ # @option kwargs [String] :subAccountId Sub-accountId of Cloud user
187
+ # @option kwargs [String] :subUserId Sub-userId of parent user
188
+ # @see https://developers.binance.com/docs/wallet/capital/one-click-arrival-deposite-apply
189
+ def one_click_arrival_deposit_apply(**kwargs)
190
+ @session.sign_request(:post, '/sapi/v1/capital/deposit/credit-apply', params: kwargs)
191
+ end
192
+
152
193
  # Account Status (USER_DATA)
153
194
  #
154
195
  # GET /sapi/v1/account/status
@@ -233,6 +274,17 @@ module Binance
233
274
  @session.sign_request(:get, '/sapi/v1/asset/assetDetail', params: kwargs)
234
275
  end
235
276
 
277
+ # Query User Wallet Balance (USER_DATA)
278
+ #
279
+ # GET /sapi/v1/asset/wallet/balance
280
+ #
281
+ # @param kwargs [Hash]
282
+ # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
283
+ # @see https://developers.binance.com/docs/wallet/asset/query-user-wallet-balance
284
+ def wallet_balance(**kwargs)
285
+ @session.sign_request(:get, '/sapi/v1/asset/wallet/balance', params: kwargs)
286
+ end
287
+
236
288
  # Trade Fee (USER_DATA)
237
289
  #
238
290
  # GET /sapi/v1/asset/tradeFee
@@ -288,6 +340,18 @@ module Binance
288
340
  @session.sign_request(:get, '/sapi/v1/asset/transfer', params: kwargs.merge(type: type))
289
341
  end
290
342
 
343
+ # Get Assets That Can Be Converted Into BNB (USER_DATA)
344
+ #
345
+ # POST /sapi/v1/asset/dust-btc
346
+ #
347
+ # @param kwargs [Hash]
348
+ # @option kwargs [String] :accountType SPOT or MARGIN,default SPOT
349
+ # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
350
+ # @see https://developers.binance.com/docs/wallet/asset/assets-can-convert-bnb
351
+ def get_assets_converted_into_bnb(**kwargs)
352
+ @session.sign_request(:post, '/sapi/v1/asset/dust-btc', params: kwargs)
353
+ end
354
+
291
355
  # Funding Wallet (USER_DATA)
292
356
  #
293
357
  # POST /sapi/v1/asset/get-funding-asset
@@ -301,6 +365,60 @@ module Binance
301
365
  @session.sign_request(:post, '/sapi/v1/asset/get-funding-asset', params: kwargs)
302
366
  end
303
367
 
368
+ # Get Cloud-Mining payment and refund history (USER_DATA)
369
+ #
370
+ # GET /sapi/v1/asset/ledger-transfer/cloud-mining/queryByPage
371
+ #
372
+ # @param kwargs [Hash]
373
+ # @option kwargs [Integer] :tranId
374
+ # @option kwargs [String] :clientTranId The unique flag
375
+ # @option kwargs [String] :asset If it is blank, we will query all assets
376
+ # @option kwargs [Integer] :startTime inclusive, unit: ms
377
+ # @option kwargs [Integer] :endTime exclusive, unit: ms
378
+ # @option kwargs [Integer] :current current page, default 1, the min value is 1
379
+ # @option kwargs [Integer] :size page size, default 10, the max value is 100
380
+ # @see https://developers.binance.com/docs/wallet/asset/cloud-mining-payment-and-refund-history
381
+ def cloud_mining_payment_and_refund_history(**kwargs)
382
+ @session.sign_request(:get, '/sapi/v1/asset/ledger-transfer/cloud-mining/queryByPage', params: kwargs)
383
+ end
384
+
385
+ # Query User Delegation History (For Master Account)(USER_DATA)
386
+ #
387
+ # GET /sapi/v1/asset/custody/transfer-history
388
+ #
389
+ # @param email [String]
390
+ # @param startTime [Integer]
391
+ # @param endTime [Integer]
392
+ # @param kwargs [Hash]
393
+ # @option kwargs [String] :type Delegate/Undelegate
394
+ # @option kwargs [String] :asset
395
+ # @option kwargs [Integer] :current Default 1
396
+ # @option kwargs [Integer] :size default 10, max 100
397
+ # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
398
+ # @see https://developers.binance.com/docs/wallet/asset/query-user-delegation
399
+ def user_delegation_history(email:, startTime:, endTime:, **kwargs)
400
+ Binance::Utils::Validation.require_param('email', email)
401
+ Binance::Utils::Validation.require_param('startTime', startTime)
402
+ Binance::Utils::Validation.require_param('endTime', endTime)
403
+
404
+ @session.sign_request(:get, '/sapi/v1/asset/custody/transfer-history', params: kwargs.merge(
405
+ email: email,
406
+ startTime: startTime,
407
+ endTime: endTime
408
+ ))
409
+ end
410
+
411
+ # Account info (USER_DATA)
412
+ #
413
+ # GET /sapi/v1/account/info
414
+ #
415
+ # @param kwargs [Hash]
416
+ # @option kwargs [Integer] :recvWindow The value cannot be greater than 60000
417
+ # @see https://developers.binance.com/docs/wallet/account
418
+ def account_info(**kwargs)
419
+ @session.sign_request(:get, '/sapi/v1/account/info', params: kwargs)
420
+ end
421
+
304
422
  # Get API Key Permission (USER_DATA)
305
423
  #
306
424
  # GET /sapi/v1/account/apiRestrictions
@@ -99,6 +99,18 @@ module Binance
99
99
  create_connection(url, callbacks)
100
100
  end
101
101
 
102
+ # Average Price
103
+ # Average price streams push changes in the average price over a fixed time interval.
104
+ # Stream Name: <symbol>@avgPrice
105
+ # Update Speed: 1000ms
106
+ #
107
+ # @param symbol [String]
108
+ # @see https://developers.binance.com/docs/binance-spot-api-docs/web-socket-streams#average-price
109
+ def avg_price(symbol:, callbacks:)
110
+ url = "#{@base_url}/ws/#{symbol.downcase}@avgPrice"
111
+ create_connection(url, callbacks)
112
+ end
113
+
102
114
  # Partial Book Depth Streams
103
115
  # Top bids and asks, Valid are 5, 10, or 20.
104
116
  # Stream Name: <symbol>@depth<levels> OR <symbol>@depth<levels>@100ms.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Binance
4
- VERSION = '1.6.0'
4
+ VERSION = '1.7.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: binance-connector-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Binance
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-02 00:00:00.000000000 Z
11
+ date: 2024-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -95,7 +95,7 @@ dependencies:
95
95
  - !ruby/object:Gem::Version
96
96
  version: '1.3'
97
97
  description: ''
98
- email:
98
+ email:
99
99
  executables: []
100
100
  extensions: []
101
101
  extra_rdoc_files: []
@@ -135,7 +135,7 @@ licenses:
135
135
  - MIT
136
136
  metadata:
137
137
  rubygems_mfa_required: 'true'
138
- post_install_message:
138
+ post_install_message:
139
139
  rdoc_options: []
140
140
  require_paths:
141
141
  - lib
@@ -151,7 +151,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
151
151
  version: '0'
152
152
  requirements: []
153
153
  rubygems_version: 3.3.3
154
- signing_key:
154
+ signing_key:
155
155
  specification_version: 4
156
156
  summary: This is a lightweight library that works as a connector to the Binance public
157
157
  API.