class_docstr: Execution style representing a limit order to be placed if market price
  reaches a threshold.
  
  Parameters
  ----------
  limit_price : float
      Maximum price for buys, or minimum price for sells, at which the order
      should be filled, if placed.
  stop_price : float
      Price threshold at which the order should be placed. For sells, the
      order will be placed if market price falls below this value. For buys,
      the order will be placed if market price rises above this value.
class_docstr_tok: ["Execution","style","representing","a","limit","order","to","be","placed","if","market","price","reaches","a","threshold",".","Parameters","--","--","--","--","--","limit_price",":","float","Maximum","price","for","buys",",","or","minimum","price","for","sells",",","at","which","the","order","should","be","filled",",","if","placed",".","stop_price",":","float","Price","threshold","at","which","the","order","should","be","placed",".","For","sells",",","the","order","will","be","placed","if","market","price","falls","below","this","value",".","For","buys",",","the","order","will","be","placed","if","market","price","rises","above","this","value","."]
code: def __init__(
      self, limit_price, stop_price, asset=None, exchange=None
  ):
      check_stoplimit_prices(limit_price, "limit")
      check_stoplimit_prices(stop_price, "stop")
  
      self.limit_price = limit_price
      self.stop_price = stop_price
      self._exchange = exchange
      self.asset = asset
  
imports: import abc
  from sys import float_info
  from six import with_metaclass
  from numpy import isfinite
  import zipline.utils.math_utils
  from zipline.errors import BadOrderParameters
  from zipline.utils.compat import consistent_round
label_desc: Use image node_id 1 to create a new StopLimitOrder object from inherited base classes: ExecutionStyle with example: obj = StopLimitOrder(limit_price, stop_price, asset, exchange)