diff --git a/aster/rest_api/account.py b/aster/rest_api/account.py index 45e031b..d0d44d7 100644 --- a/aster/rest_api/account.py +++ b/aster/rest_api/account.py @@ -1,5 +1,6 @@ from aster.lib.utils import check_required_parameter from aster.lib.utils import check_required_parameters +from aster.lib.utils import convert_list_to_json_array def change_position_mode(self, dualSidePosition: str, **kwargs): @@ -113,7 +114,12 @@ def query_order(self, symbol: str, orderId: int = None, origClientOrderId: str = """ check_required_parameter(symbol, "symbol") - params = {"symbol": symbol, **kwargs} + params = { + "symbol": symbol, + "orderId": orderId, + "origClientOrderId": origClientOrderId, + **kwargs, + } url_path = "/fapi/v1/order" return self.sign_request("GET", url_path, params) @@ -131,7 +137,12 @@ def cancel_order(self, symbol: str, orderId: int = None, origClientOrderId: str """ check_required_parameter(symbol, "symbol") - params = {"symbol": symbol, **kwargs} + params = { + "symbol": symbol, + "orderId": orderId, + "origClientOrderId": origClientOrderId, + **kwargs, + } url_path = "/fapi/v1/order" return self.sign_request("DELETE", url_path, params) @@ -152,7 +163,7 @@ def cancel_open_orders(self, symbol: str, **kwargs): return self.sign_request("DELETE", url_path, params) -def cancel_batch_order(self, symbol: str, orderIdList: list, origClientOrderIdList: list, **kwargs): +def cancel_batch_order(self, symbol: str, orderIdList: list = None, origClientOrderIdList: list = None, **kwargs): """ | | **Cancel Multiple Orders (TRADE)** @@ -164,7 +175,14 @@ def cancel_batch_order(self, symbol: str, orderIdList: list, origClientOrderIdLi """ check_required_parameter(symbol, "symbol") - params = {"symbol": symbol, **kwargs} + params = { + "symbol": symbol, + # the endpoint takes these as JSON arrays with no spaces, e.g. + # orderIdList=[1234567,2345678] and origClientOrderIdList=["id1","id2"] + "orderIdList": convert_list_to_json_array(orderIdList), + "origClientOrderIdList": convert_list_to_json_array(origClientOrderIdList), + **kwargs, + } url_path = "/fapi/v1/batchOrders" return self.sign_request("DELETE", url_path, params) @@ -198,7 +216,12 @@ def get_open_orders(self, symbol: str, orderId: int = None, origClientOrderId: s """ check_required_parameter(symbol, "symbol") - params = {"symbol": symbol, **kwargs} + params = { + "symbol": symbol, + "orderId": orderId, + "origClientOrderId": origClientOrderId, + **kwargs, + } url_path = "/fapi/v1/openOrder" return self.sign_request("GET", url_path, params)