class_docstr: Abstract interface for defining a slippage model.
      
class_docstr_tok: ["Abstract","interface","for","defining","a","slippage","model","."]
docstr: Process how orders get filled.
  
  Parameters
  ----------
  data : BarData
      The data for the given bar.
  order : Order
      The order to simulate.
  
  Returns
  -------
  execution_price : float
      The price to execute the trade at.
  execution_volume : int
      The number of shares that could be filled. This may not be all
      the shares ordered in which case the order will be filled over
      multiple bars.
docstr_tok: ["Process","how","orders","get","filled",".","Parameters","--","--","--","--","--","data",":","BarData","The","data","for","the","given","bar",".","order",":","Order","The","order","to","simulate",".","Returns","--","--","--","-","execution_price",":","float","The","price","to","execute","the","trade","at",".","execution_volume",":","int","The","number","of","shares","that","could","be","filled",".","This","may","not","be","all","the","shares","ordered","in","which","case","the","order","will","be","filled","over","multiple","bars","."]
code: def process_order(self, data, order):
      """Process how orders get filled.
  
      Parameters
      ----------
      data : BarData
          The data for the given bar.
      order : Order
          The order to simulate.
  
      Returns
      -------
      execution_price : float
          The price to execute the trade at.
      execution_volume : int
          The number of shares that could be filled. This may not be all
          the shares ordered in which case the order will be filled over
          multiple bars.
      """
      pass
  
imports: from __future__ import division
  from abc import abstractmethod
  import math
  import numpy
  from pandas import isnull
  from six import with_metaclass
  from toolz import merge
  from catalyst.assets import Equity, Future
  from catalyst.errors import HistoryWindowStartsBeforeData
  from catalyst.finance.constants import ROOT_SYMBOL_TO_ETA
  from catalyst.finance.shared import AllowedAssetMarker, FinancialModelMeta
  from catalyst.finance.transaction import create_transaction
  from catalyst.utils.cache import ExpiringCache
  from catalyst.utils.dummy import DummyMapping
label_desc: Use image node_id 3 for calling the SlippageModel obj's underlying member method code with example usage: obj.process_order(data, order) without return types