MCPcopy Create free account
hub / github.com/ccxt/ccxt / cancel_order

Method cancel_order

python/ccxt/async_support/exmo.py:1611–1657  ·  view source on GitHub ↗

cancels an open order https://documenter.getpostman.com/view/10287440/SzYXWKPi#1f710d4b-75bc-4b65-ad68-006f863a3f26 https://documenter.getpostman.com/view/10287440/SzYXWKPi#a4d0aae8-28f7-41ac-94fd-c4030130453d # stop market https://documenter.getpostman.com/view/10

(self, id: str, symbol: Str = None, params={})

Source from the content-addressed store, hash-verified

1609 return self.parse_order(response, market)
1610
1611 async def cancel_order(self, id: str, symbol: Str = None, params={}):
1612 """
1613 cancels an open order
1614
1615 https://documenter.getpostman.com/view/10287440/SzYXWKPi#1f710d4b-75bc-4b65-ad68-006f863a3f26
1616 https://documenter.getpostman.com/view/10287440/SzYXWKPi#a4d0aae8-28f7-41ac-94fd-c4030130453d # stop market
1617 https://documenter.getpostman.com/view/10287440/SzYXWKPi#705dfec5-2b35-4667-862b-faf54eca6209 # margin
1618
1619 :param str id: order id
1620 :param str symbol: not used by exmo cancelOrder()
1621 :param dict [params]: extra parameters specific to the exchange API endpoint
1622 :param boolean [params.trigger]: True to cancel a trigger order
1623 :param str [params.marginMode]: set to 'cross' or 'isolated' to cancel a margin order
1624 :returns dict: An `order structure <https://docs.ccxt.com/?id=order-structure>`
1625 """
1626 await self.load_markets()
1627 request = {}
1628 trigger = self.safe_value_2(params, 'trigger', 'stop')
1629 params = self.omit(params, ['trigger', 'stop'])
1630 marginMode = None
1631 marginMode, params = self.handle_margin_mode_and_params('cancelOrder', params)
1632 if marginMode == 'cross':
1633 raise BadRequest(self.id + ' only supports isolated margin')
1634 response: dict
1635 if (marginMode == 'isolated'):
1636 request['order_id'] = id
1637 response = await self.privatePostMarginUserOrderCancel(self.extend(request, params))
1638 #
1639 # {}
1640 #
1641 else:
1642 if trigger:
1643 request['parent_order_id'] = id
1644 response = await self.privatePostStopMarketOrderCancel(self.extend(request, params))
1645 #
1646 # {}
1647 #
1648 else:
1649 request['order_id'] = id
1650 response = await self.privatePostOrderCancel(self.extend(request, params))
1651 #
1652 # {
1653 # "error": '',
1654 # "result": True
1655 # }
1656 #
1657 return self.parse_order(response)
1658
1659 async def fetch_order(self, id: str, symbol: Str = None, params={}):
1660 """

Callers

nothing calls this directly

Calls 10

parse_orderMethod · 0.95
BadRequestClass · 0.90
safe_value_2Method · 0.80
load_marketsMethod · 0.45
omitMethod · 0.45
extendMethod · 0.45

Tested by

no test coverage detected