Exemple #1
0
def test_qty_to_size():
    assert utils.qty_to_size(2, 50) == 100
    assert utils.qty_to_size(2, 49) == 98

    with pytest.raises(TypeError):
        utils.qty_to_size(-10, 'invalid_input')
        utils.qty_to_size('invalid_input', -10)
    with pytest.raises(TypeError):
        utils.qty_to_size(-10, None)
        utils.qty_to_size(None, -10)
Exemple #2
0
    def _on_canceled_order(self, order):
        qty = order.qty
        price = order.price
        size = ju.qty_to_size(qty, price)
        available_qty = self.exchange.available_assets[jh.base_asset(self.symbol)]

        if order.is_reduce_only:
            return
Exemple #3
0
    def _on_canceled_order(self, order):
        qty = order.qty
        price = order.price
        size = ju.qty_to_size(qty, price)

        if order.is_reduce_only:
            return

        # open-position order
        if self.qty == 0:
            if self.exchange:
                self.exchange.increase_balance(self, size, True)
        # increase-position order
        elif self.qty * qty > 0:
            if self.exchange:
                self.exchange.increase_balance(self, size, True)
        # reduce-position order
        elif self.qty * qty < 0:
            if abs(qty) > abs(self.qty):
                diff_qty = qty + self.qty
                size = ju.qty_to_size(diff_qty, price)
                if self.exchange:
                    self.exchange.increase_balance(self, size, True)