mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-19 06:44:22 +01:00
Create FundingLoan model
This commit is contained in:
82
bfxapi/models/FundingLoan.py
Normal file
82
bfxapi/models/FundingLoan.py
Normal file
@@ -0,0 +1,82 @@
|
||||
|
||||
class FundingLoanModel:
|
||||
ID = 0
|
||||
SYMBOL = 1
|
||||
SIDE = 2
|
||||
MTS_CREATE = 3
|
||||
MTS_UPDATE = 4
|
||||
AMOUNT = 5
|
||||
FLAGS = 6
|
||||
STATUS = 7
|
||||
RATE = 11
|
||||
PERIOD = 12
|
||||
MTS_OPENING = 13
|
||||
MTS_LAST_PAYOUT = 14
|
||||
NOTIFY = 15
|
||||
HIDDEN = 16
|
||||
RENEW = 18
|
||||
NO_CLOSE = 20
|
||||
|
||||
class FundingLoan:
|
||||
"""
|
||||
ID integer Offer ID
|
||||
SYMBOL string The currency of the offer (fUSD, etc)
|
||||
SIDE string "Lend" or "Loan"
|
||||
MTS_CREATE int Millisecond Time Stamp when the offer was created
|
||||
MTS_UPDATE int Millisecond Time Stamp when the offer was created
|
||||
AMOUNT float Amount the offer is for
|
||||
FLAGS object future params object (stay tuned)
|
||||
STATUS string Offer Status: ACTIVE, EXECUTED, PARTIALLY FILLED, CANCELED
|
||||
RATE float Rate of the offer
|
||||
PERIOD int Period of the offer
|
||||
MTS_OPENING int Millisecond Time Stamp for when the loan was opened
|
||||
MTS_LAST_PAYOUT int Millisecond Time Stamp for when the last payout was made
|
||||
NOTIFY int 0 if false, 1 if true
|
||||
HIDDEN int 0 if false, 1 if true
|
||||
RENEW int 0 if false, 1 if true
|
||||
NO_CLOSE int If funding will be returned when position is closed. 0 if false, 1 if true
|
||||
"""
|
||||
|
||||
def __init__(self, id, symbol, side, mts_create, mts_update, amount, flags, status, rate,
|
||||
period, mts_opening, mts_last_payout, notify, hidden, renew, no_close):
|
||||
self.id = id
|
||||
self.symbol = symbol
|
||||
self.side = side
|
||||
self.mts_create = mts_create
|
||||
self.mts_update = mts_update
|
||||
self.amount = amount
|
||||
self.flags = flags
|
||||
self.status = status
|
||||
self.rate = rate
|
||||
self.period = period
|
||||
self.mts_opening = mts_opening
|
||||
self.mts_last_payout = mts_last_payout
|
||||
self.notify = notify
|
||||
self.hidden = hidden
|
||||
self.renew = renew
|
||||
self.no_close = no_close
|
||||
|
||||
@staticmethod
|
||||
def from_raw_loan(raw_loan):
|
||||
id = raw_loan[FundingLoanModel.ID]
|
||||
symbol = raw_loan[FundingLoanModel.SYMBOL]
|
||||
side = raw_loan[FundingLoanModel.SIDE]
|
||||
mts_create = raw_loan[FundingLoanModel.MTS_CREATE]
|
||||
mts_update = raw_loan[FundingLoanModel.MTS_UPDATE]
|
||||
amount = raw_loan[FundingLoanModel.AMOUNT]
|
||||
flags = raw_loan[FundingLoanModel.FLAGS]
|
||||
status = raw_loan[FundingLoanModel.STATUS]
|
||||
rate = raw_loan[FundingLoanModel.RATE]
|
||||
period = raw_loan[FundingLoanModel.PERIOD]
|
||||
mts_opening = raw_loan[FundingLoanModel.MTS_OPENING]
|
||||
mts_last_payout = raw_loan[FundingLoanModel.MTS_LAST_PAYOUT]
|
||||
notify = raw_loan[FundingLoanModel.NOTIFY]
|
||||
hidden = raw_loan[FundingLoanModel.HIDDEN]
|
||||
renew = raw_loan[FundingLoanModel.RENEW]
|
||||
no_close = raw_loan[FundingLoanModel.NO_CLOSE]
|
||||
return FundingLoan(id, symbol, side, mts_create, mts_update, amount, flags, status, rate,
|
||||
period, mts_opening, mts_last_payout, notify, hidden, renew, no_close)
|
||||
|
||||
def __str__(self):
|
||||
return "FundingLoan '{}' <id={} rate={} amount={} period={} status='{}'>".format(
|
||||
self.symbol, self.id, self.rate, self.amount, self.period, self.status)
|
||||
Reference in New Issue
Block a user