mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-20 15:24:21 +01:00
models: create static create methods
This commit is contained in:
@@ -4,17 +4,27 @@ class Trade:
|
||||
SHORT = 'SHORT'
|
||||
LONG = 'LONG'
|
||||
|
||||
def __init__(self, order, tag=''):
|
||||
self.order = order
|
||||
self.amount = order.amount
|
||||
self.price = order.priceAvg
|
||||
self.fee = (order.priceAvg * abs(order.amount)) * 0.002
|
||||
self.mts = order.mtsCreate
|
||||
self.date = datetime.datetime.fromtimestamp(order.mtsCreate/1000.0)
|
||||
self.direction = self.SHORT if order.amount < 0 else self.LONG
|
||||
self.tag = tag
|
||||
def __init__(self, id, pair, mts_create, order_id, amount, price, order_type,
|
||||
order_price, maker, fee, fee_currency):
|
||||
self.id = id
|
||||
self.pair = pair
|
||||
self.mts_create = mts_create
|
||||
self.date = datetime.datetime.fromtimestamp(mts_create/1000.0)
|
||||
self.order_id = order_id
|
||||
self.amount = amount
|
||||
self.direction = Trade.SHORT if amount < 0 else Trade.LONG
|
||||
self.price = price
|
||||
self.order_type = order_type
|
||||
self.order_price = order_price
|
||||
self.maker = maker
|
||||
self.fee = fee
|
||||
self.fee_currency = fee_currency
|
||||
|
||||
@staticmethod
|
||||
def from_raw_rest_trade(raw_trade):
|
||||
# [24224048, 'tBTCUSD', 1542800024000, 1151353484, 0.09399997, 19963, None, None, -1, -0.000188, 'BTC']
|
||||
return Trade(*raw_trade)
|
||||
|
||||
def __str__(self):
|
||||
''' Allow us to print the Trade object in a pretty format '''
|
||||
return "Trade {} @ {} fee={} <order='{}'>".format(
|
||||
self.amount, self.price, self.fee, self.order)
|
||||
return "Trade '{}' x {} @ {} <direction='{}' fee={}>".format(
|
||||
self.pair, self.amount, self.price, self.direction, self.fee)
|
||||
|
||||
Reference in New Issue
Block a user