docstr: :param asset:
  :param amount:
  :param dt:
  :param price:
  :param order_id:
  :param commission:
  :param fee_currency: str; from what currency is the commission
                              reduced from- only on live mode
  :param is_quote_live: bool; is the fee_currency the quote_currency
                              of the algorithm and running on live mode
code: def __init__(
      self,
      asset,
      amount,
      dt,
      price,
      order_id,
      commission=None,
      fee_currency=None,
      is_quote_live=False,
  ):
      """
  
      :param asset:
      :param amount:
      :param dt:
      :param price:
      :param order_id:
      :param commission:
      :param fee_currency: str; from what currency is the commission
                                  reduced from- only on live mode
      :param is_quote_live: bool; is the fee_currency the quote_currency
                                  of the algorithm and running on live mode
      """
      self.asset = asset
      self.amount = amount
      self.dt = dt
      self.price = price
      self.order_id = order_id
      self.commission = commission
      self.fee_currency = fee_currency
      self.is_quote_live = is_quote_live
      self.type = DATASOURCE_TYPE.TRANSACTION
  
file_path: catalyst/catalyst/finance/transaction.py
imports: from __future__ import division
  from copy import copy
  from catalyst.assets import Asset
  from catalyst.protocol import DATASOURCE_TYPE
  from catalyst.utils.input_validation import expect_types
label_desc: Use image node_id 1 to create a new Transaction object from inherited base classes: object with example: obj = Transaction(asset, amount, dt, price, order_id, commission, fee_currency, is_quote_live)