docstr: Removes all given orders from the blotter's open_orders list.
  
  Parameters
  ----------
  closed_orders: iterable of orders that are closed.
  
  Returns
  -------
  None
docstr_tok: ["Removes","all","given","orders","from","the","blotter","'s","open_orders","list",".","Parameters","--","--","--","--","--","closed_orders",":","iterable","of","orders","that","are","closed",".","Returns","--","--","--","-","None"]
code: def prune_orders(self, closed_orders):
      """
      Removes all given orders from the blotter's open_orders list.
  
      Parameters
      ----------
      closed_orders: iterable of orders that are closed.
  
      Returns
      -------
      None
      """
      # remove all closed orders from our open_orders dict
      for order in closed_orders:
          asset = order.asset
          asset_orders = self.open_orders[asset]
          try:
              asset_orders.remove(order)
          except ValueError:
              continue
  
      # now clear out the assets from our open_orders dict that have
      # zero open orders
      for asset in list(self.open_orders.keys()):
          if len(self.open_orders[asset]) == 0:
              del self.open_orders[asset]
  
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 11 for calling the SimulationBlotter obj's underlying member method code with example usage: obj.prune_orders(closed_orders) without return types