Example #1
0
    def cancel(self, orderNumbers, account=None):
        """ Cancels an order you have placed in a given market. Requires
            only the "orderNumbers". An order number takes the form
            ``1.7.xxx``.

            :param str orderNumbers: The Order Object ide of the form ``1.7.xxxx``
        """
        if not account:
            if "default_account" in config:
                account = config["default_account"]
        if not account:
            raise ValueError("You need to provide an account")
        account = Account(account, full=False, bitshares_instance=self)

        if not isinstance(orderNumbers, (list, set)):
            orderNumbers = set(orderNumbers)

        op = []
        for order in orderNumbers:
            op.append(
                operations.Limit_order_cancel(
                    **{
                        "fee": {
                            "amount": 0,
                            "asset_id": "1.3.0"
                        },
                        "fee_paying_account": account["id"],
                        "order": order,
                        "extensions": [],
                        "prefix": self.rpc.chain_params["prefix"]
                    }))
        return self.finalizeOp(op, account["name"], "active")
Example #2
0
 def test_limit_order_cancel(self):
     self.op = operations.Limit_order_cancel(**{
         "fee": {"amount": 0,
                 "asset_id": "1.3.0"
                 },
         "fee_paying_account": "1.2.104",
         "order": "1.7.51840",
         "extensions": []
     })
     self.cm = ("f68585abf4dce7c8045701020000000000000000006880950300000"
                "11f3fb754814f3910c1a8845486b86057d2b4588ae559b4c3810828"
                "c0d4cbec0e5b23517937cd7e0cc5ee8999d0777af7fe56d3c4b2e58"
                "7421bfb7400d4efdae97a")
     self.doit()
 def test_limit_order_cancel(self):
     op = operations.Limit_order_cancel(
         **{
             "fee": {
                 "amount": 0,
                 "asset_id": "1.3.0"
             },
             "fee_paying_account": "1.2.104",
             "order": "1.7.51840",
             "extensions": []
         })
     ops = [Operation(op)]
     tx = Signed_Transaction(ref_block_num=ref_block_num,
                             ref_block_prefix=ref_block_prefix,
                             expiration=expiration,
                             operations=ops)
     tx = tx.sign([wif], chain=prefix)
     tx.verify([PrivateKey(wif).pubkey], "BTS")
     txWire = hexlify(bytes(tx)).decode("ascii")
     compare = ("f68585abf4dce7c8045701020000000000000000006880950300000"
                "11f3fb754814f3910c1a8845486b86057d2b4588ae559b4c3810828"
                "c0d4cbec0e5b23517937cd7e0cc5ee8999d0777af7fe56d3c4b2e58"
                "7421bfb7400d4efdae97a")
     self.assertEqual(compare[:-130], txWire[:-130])