docstr: Mark the given order as 'rejected', which is functionally similar to
  cancelled. The distinction is that rejections are involuntary (and
  usually include a message from a broker indicating why the order was
  rejected) while cancels are typically user-driven.
docstr_tok: ["Mark","the","given","order","as","'rejected","'",",","which","is","functionally","similar","to","cancelled",".","The","distinction","is","that","rejections","are","involuntary","(","and","usually","include","a","message","from","a","broker","indicating","why","the","order","was","rejected",")","while","cancels","are","typically","user-driven","."]
code: def reject(self, order_id, reason=""):
      """
      Mark the given order as 'rejected', which is functionally similar to
      cancelled. The distinction is that rejections are involuntary (and
      usually include a message from a broker indicating why the order was
      rejected) while cancels are typically user-driven.
      """
      if order_id not in self.orders:
          return
  
      cur_order = self.orders[order_id]
  
      order_list = self.open_orders[cur_order.asset]
      if cur_order in order_list:
          order_list.remove(cur_order)
  
      if cur_order in self.new_orders:
          self.new_orders.remove(cur_order)
      cur_order.reject(reason=reason)
      cur_order.dt = self.current_dt
      # we want this order's new status to be relayed out
      # along with newly placed orders.
      self.new_orders.append(cur_order)
  
imports: from logbook import Logger
  from collections import defaultdict
  from copy import copy
  from six import iteritems
  from zipline.assets import Equity, Future, Asset
  from .blotter import Blotter
  from zipline.extensions import register
  from zipline.finance.order import Order
  from zipline.finance.slippage import DEFAULT_FUTURE_VOLUME_SLIPPAGE_BAR_LIMIT, VolatilityVolumeShare, FixedBasisPointsSlippage
  from zipline.finance.commission import DEFAULT_PER_CONTRACT_COST, FUTURE_EXCHANGE_FEES_BY_SYMBOL, PerContract, PerShare
  from zipline.utils.input_validation import expect_types
label_desc: Use image node_id 7 for calling the SimulationBlotter obj's underlying member method code with example usage: obj.reject(order_id, reason) without return types