docstr: Place an order.
  
  Parameters
  ----------
  asset : zipline.assets.Asset
      The asset that this order is for.
  amount : int
      The amount of shares to order. If ``amount`` is positive, this is
      the number of shares to buy or cover. If ``amount`` is negative,
      this is the number of shares to sell or short.
  style : zipline.finance.execution.ExecutionStyle
      The execution style for the order.
  order_id : str, optional
      The unique identifier for this order.
  
  Returns
  -------
  order_id : str or None
      The unique identifier for this order, or None if no order was
      placed.
  
  Notes
  -----
  amount > 0 :: Buy/Cover
  amount < 0 :: Sell/Short
  Market order:    order(asset, amount)
  Limit order:     order(asset, amount, style=LimitOrder(limit_price))
  Stop order:      order(asset, amount, style=StopOrder(stop_price))
  StopLimit order: order(asset, amount, style=StopLimitOrder(limit_price,
                         stop_price))
docstr_tok: ["Place","an","order",".","Parameters","--","--","--","--","--","asset",":","zipline.assets.Asset","The","asset","that","this","order","is","for",".","amount",":","int","The","amount","of","shares","to","order",".","If","``","amount","``","is","positive",",","this","is","the","number","of","shares","to","buy","or","cover",".","If","``","amount","``","is","negative",",","this","is","the","number","of","shares","to","sell","or","short",".","style",":","zipline.finance.execution.ExecutionStyle","The","execution","style","for","the","order",".","order_id",":","str",",","optional","The","unique","identifier","for","this","order",".","Returns","--","--","--","-","order_id",":","str","or","None","The","unique","identifier","for","this","order",",","or","None","if","no","order","was","placed",".","Notes","--","--","-","amount",">","0",":",":","Buy\/Cover","amount","<","0",":",":","Sell\/Short","Market","order",":","order","(","asset",",","amount",")","Limit","order",":","order","(","asset",",","amount",",","style=LimitOrder","(","limit_price",")",")","Stop","order",":","order","(","asset",",","amount",",","style=StopOrder","(","stop_price",")",")","StopLimit","order",":","order","(","asset",",","amount",",","style=StopLimitOrder","(","limit_price",",","stop_price",")",")"]
code: def order(self, asset, amount, style, order_id=None):
      """Place an order.
  
      Parameters
      ----------
      asset : zipline.assets.Asset
          The asset that this order is for.
      amount : int
          The amount of shares to order. If ``amount`` is positive, this is
          the number of shares to buy or cover. If ``amount`` is negative,
          this is the number of shares to sell or short.
      style : zipline.finance.execution.ExecutionStyle
          The execution style for the order.
      order_id : str, optional
          The unique identifier for this order.
  
      Returns
      -------
      order_id : str or None
          The unique identifier for this order, or None if no order was
          placed.
  
      Notes
      -----
      amount > 0 :: Buy/Cover
      amount < 0 :: Sell/Short
      Market order:    order(asset, amount)
      Limit order:     order(asset, amount, style=LimitOrder(limit_price))
      Stop order:      order(asset, amount, style=StopOrder(stop_price))
      StopLimit order: order(asset, amount, style=StopLimitOrder(limit_price,
                             stop_price))
      """
  
      raise NotImplementedError("order")
  
file_path: zipline/zipline/finance/blotter/blotter.py
imports: from abc import ABCMeta, abstractmethod
  from six import with_metaclass
  from zipline.extensions import extensible
  from zipline.finance.cancel_policy import NeverCancel
label_desc: Use image node_id 3 for calling the Blotter obj's underlying member method code with example usage: obj.order(asset, amount, style, order_id) without return types