def METHOD_NAME(
    self, broker_order_id: int
) -> brokerOrder:
    broker_order = self.broker_stack.get_order_with_id_from_stack(broker_order_id)
    if broker_order is missing_order:
        return missing_order
    if broker_order.fill_equals_desired_trade():
        # no need to cancel
        return missing_order
    log = broker_order.log_with_attributes(self.log)
    log.debug("Cancelling order on stack with broker %s" % str(broker_order))
    data_broker = self.data_broker
    data_broker.cancel_order_on_stack(broker_order)
    return broker_order