def get_open_interest(self, symbol): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_get("/fapi/v1/openInterest", builder) def parse(json_wrapper): result = list() element = OpenInterest.json_parse(json_wrapper) result.append(element) return element request.json_parser = parse return request
def auto_cancel_all_orders(self, symbol, countdownTime): check_should_not_none(symbol, "symbol") check_should_not_none(symbol, "countdownTime") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("countdownTime", countdownTime) request = self.__create_request_by_post_with_signature("/fapi/v1/countdownCancelAll", builder) def parse(json_wrapper): result = CountdownCancelAll.json_parse(json_wrapper) return result request.json_parser = parse return request
def get_composite_index_info(self, symbol): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_get("/fapi/v1/indexInfo", builder) def parse(json_wrapper): result = list() element = IndexInfo.json_parse(json_wrapper) result.append(element) return element request.json_parser = parse return request
def change_margin_type(self, symbol, marginType): check_should_not_none(symbol, "symbol") check_should_not_none(marginType, "marginType") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("marginType", marginType) request = self.__create_request_by_post_with_signature("/fapi/v1/marginType", builder) def parse(json_wrapper): result = CodeMsg.json_parse(json_wrapper) return result request.json_parser = parse return request
def change_initial_leverage(self, symbol, leverage): check_should_not_none(symbol, "symbol") check_should_not_none(leverage, "leverage") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("leverage", leverage) request = self.__create_request_by_post_with_signature("/fapi/v1/leverage", builder) def parse(json_wrapper): result = Leverage.json_parse(json_wrapper) return result request.json_parser = parse return request
def post_change_position_mode(self, dualSidePosition): builder = UrlParamsBuilder() builder.put_url("dualSidePosition", dualSidePosition) request = self.__create_request_by_post_with_signature("/fapi/v1/positionSide/dual", builder) def parse(json_wrapper): result = list() element = PositionMode.json_parse(json_wrapper) result.append(element) return element request.json_parser = parse return request
def get_klines(self, symbol, interval, startTime, endTime, limit): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("interval", interval) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/api/v3/klines", builder) def parse(json_wrapper): result = json_wrapper.json_object return result request.json_parser = parse return request
def get_adl_quantile(self, symbol): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_get_with_signature("/fapi/v1/adlQuantile", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = AdlQuantile.json_parse(item) result.append(element) return result request.json_parser = parse return request
def change_position_margin(self, symbol, amount, type): check_should_not_none(symbol, "symbol") check_should_not_none(amount, "amount") check_should_not_none(type, "type") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("amount", amount) builder.put_url("type", type) request = self.__create_request_by_post_with_signature("/fapi/v1/positionMargin", builder) def parse(json_wrapper): result = PositionMargin.json_parse(json_wrapper) return result request.json_parser = parse return request
def cancel_all_orders(self, symbol): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_delete_with_signature("/fapi/v1/allOpenOrders", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = Order.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_recent_trades_list(self, symbol, limit): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("limit", limit) request = self.__create_request_by_get("/fapi/v1/trades", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = Trade.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_symbol_orderbook_ticker(self, symbol): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_get("/fapi/v1/ticker/bookTicker", builder) def parse(json_wrapper): result = list() if symbol: element = SymbolOrderBook.json_parse(json_wrapper) result.append(element) else: data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = SymbolOrderBook.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_income_history(self, symbol, incomeType, startTime, endTime, limit): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("incomeType", incomeType) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get_with_signature("/fapi/v1/income", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = Income.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_account_trades(self, symbol, startTime, endTime, fromId, limit): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("fromId", fromId) builder.put_url("limit", limit) request = self.__create_request_by_get_with_signature("/fapi/v1/userTrades", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = MyTrade.json_parse(item) result.append(element) return result request.json_parser = parse return request
def post_list_orders(self, batchOrders): check_should_not_none(batchOrders, "batchOrders") builder = UrlParamsBuilder() builder.put_url("batchOrders", batchOrders) request = self.__create_request_by_post_with_signature( "/fapi/v1/batchOrders", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): if item.contain_key("code"): element = Msg.json_parse(item) else: element = Order.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_position_margin_change_history(self, symbol, type, startTime, endTime, limit): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("type", type) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get_with_signature("/fapi/v1/positionMargin/history", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = PositionMarginHist.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_leverage_bracket(self, symbol): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_get_with_signature("/fapi/v1/leverageBracket", builder) def parse(json_wrapper): result = list() if symbol: element = LeverageBracket.json_parse(json_wrapper) result.append(element) else: data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = LeverageBracket.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_blvt_nav_candlestick_data(self, symbol, interval, startTime, endTime, limit): check_should_not_none(symbol, "symbol") check_should_not_none(symbol, "interval") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("interval", interval) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/fapi/v1/lvtKlines", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = BLVTNAVCandlestick.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_ticker_price_change_statistics(self, symbol): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) request = self.__create_request_by_get("/fapi/v1/ticker/24hr", builder) def parse(json_wrapper): result = list() if symbol: element = TickerPriceChangeStatistics.json_parse(json_wrapper) result.append(element) else: data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = TickerPriceChangeStatistics.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_liquidation_orders(self, symbol, startTime, endTime, limit): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/fapi/v1/allForceOrders", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = LiquidationOrder.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_taker_buy_sell_ratio(self, symbol, period, startTime, endTime, limit): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("period", period) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/futures/data/takerlongshortRatio", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = TakerBuySellRatio.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_global_long_short_accounts(self, symbol, period, startTime, endTime, limit): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("period", period) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/futures/data/globalLongShortAccountRatio", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = LongShortRatio.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_open_interest_stats(self, symbol, period, startTime, endTime, limit): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("period", period) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/futures/data/openInterestHist", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = OpenInterestStats.json_parse(item) result.append(element) return result request.json_parser = parse return request
def futures_transfer(self, asset, amount, type): builder = UrlParamsBuilder() builder.put_url("asset", asset) builder.put_url("amount", amount) builder.put_url("type", type) request = self.__create_request_by_post_with_signature("/sapi/v1/futures/transfer", builder) def parse(json_wrapper): result = Order.json_parse(json_wrapper) return result request.json_parser = parse return request
def get_funding_rate(self, symbol, startTime, endTime, limit): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/fapi/v1/fundingRate", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): element = FundingRate.json_parse(item) result.append(element) return result request.json_parser = parse return request
def get_aggregate_trades_list(self, symbol, fromId, startTime, endTime, limit): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("fromId", fromId) builder.put_url("startTime", startTime) builder.put_url("endTime", endTime) builder.put_url("limit", limit) request = self.__create_request_by_get("/fapi/v1/aggTrades", builder) def parse(json_wrapper): aggregate_trades_list = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): trade = AggregateTrade.json_parse(item) aggregate_trades_list.append(trade) return aggregate_trades_list request.json_parser = parse return request
def get_myTrades(self, symbol, start, end): builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("startTime", start) builder.put_url("endTime", end) request = self.__create_request_by_get_with_signature( "/api/v3/myTrades", builder) def parse(json_wrapper): result = json_wrapper.json_object return result request.json_parser = parse return request
def cancel_order(self, symbol, orderId, origClientOrderId): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("orderId", orderId) builder.put_url("origClientOrderId", origClientOrderId) request = self.__create_request_by_delete_with_signature("/fapi/v1/order", builder) def parse(json_wrapper): result = Order.json_parse(json_wrapper) return result request.json_parser = parse return request
def cancel_list_orders(self, symbol, orderIdList, origClientOrderIdList): check_should_not_none(symbol, "symbol") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("orderIdList", orderIdList) builder.put_url("origClientOrderIdList", origClientOrderIdList) request = self.__create_request_by_delete_with_signature("/fapi/v1/batchOrders", builder) def parse(json_wrapper): result = list() data_list = json_wrapper.convert_2_array() for item in data_list.get_items(): if item.contain_key("code"): element = Msg.json_parse(item) else: element = Order.json_parse(item) result.append(element) return result request.json_parser = parse return request
def post_order(self, symbol, side, ordertype, timeInForce, quantity, reduceOnly, price, newClientOrderId, stopPrice, workingType, closePosition, positionSide, callbackRate, activationPrice, newOrderRespType): check_should_not_none(symbol, "symbol") check_should_not_none(side, "side") check_should_not_none(ordertype, "ordertype") builder = UrlParamsBuilder() builder.put_url("symbol", symbol) builder.put_url("side", side) builder.put_url("type", ordertype) builder.put_url("timeInForce", timeInForce) builder.put_url("quantity", quantity) builder.put_url("reduceOnly", reduceOnly) builder.put_url("price", price) builder.put_url("newClientOrderId", newClientOrderId) builder.put_url("stopPrice", stopPrice) builder.put_url("workingType", workingType) builder.put_url("closePosition", closePosition) builder.put_url("positionSide", positionSide) builder.put_url("callbackRate", callbackRate) builder.put_url("activationPrice", activationPrice) builder.put_url("newOrderRespType", newOrderRespType) request = self.__create_request_by_post_with_signature( "/fapi/v1/order", builder) def parse(json_wrapper): result = Order.json_parse(json_wrapper) return result request.json_parser = parse return request