handle execution error 'NO'

This commit is contained in:
Tim
2024-04-17 14:13:01 -04:00
parent f13ef9d55e
commit 22606c3732

View File

@@ -178,15 +178,19 @@ class Order:
if self.is_open:
Order.open_orders.remove(self.key)
Order.vault_open_orders.listremove(self.key.vault, self.key.order_index)
# set final fill values in the status
of = Order.order_filled[self.key]
order_log.debug(f'deleting order_filled[{self.key}]')
del Order.order_filled[self.key]
status.filledIn = of.filled.filled_in
status.filledOut = of.filled.filled_out
for i, tf in enumerate(of.tranche_filled):
status.trancheFilledIn[i] += of.tranche_filled[i].filled_in
status.trancheFilledOut[i] += of.tranche_filled[i].filled_out
try:
# set final fill values in the status
of = Order.order_filled[self.key]
except KeyError:
log.warning(f'While completing with status {final_state}, no order fills found for {self.key}')
else:
order_log.debug(f'deleting order_filled[{self.key}]')
del Order.order_filled[self.key]
status.filledIn = of.filled.filled_in
status.filledOut = of.filled.filled_out
for i, tf in enumerate(of.tranche_filled):
status.trancheFilledIn[i] += of.tranche_filled[i].filled_in
status.trancheFilledOut[i] += of.tranche_filled[i].filled_out
Order.order_statuses[self.key] = status # set the status in order to save it
Order.order_statuses.unload(self.key) # but then unload from memory after root promotion
order_log.debug(f'order completed {status}')