Files
bitfinex-api-py/bfxapi/websocket/typings.py

148 lines
2.9 KiB
Python

from typing import Type, List, Dict, TypedDict, Union, Optional
JSON = Union[Dict[str, "JSON"], List["JSON"], bool, int, float, str, Type[None]]
Order = TypedDict("Order", {
"ID": int,
"GID": int,
"CID": int,
"SYMBOL": str,
"MTS_CREATE": int,
"MTS_UPDATE": int,
"AMOUNT": float,
"AMOUNT_ORIG": float,
"ORDER_TYPE": str,
"TYPE_PREV": str,
"MTS_TIF": int,
"FLAGS": int,
"ORDER_STATUS": str,
"PRICE": float,
"PRICE_AVG": float,
"PRICE_TRAILING": float,
"PRICE_AUX_LIMIT": float,
"NOTIFY": int,
"HIDDEN": int,
"PLACED_ID": int,
"ROUTING": str,
"META": JSON
})
Orders = List[Order]
Position = TypedDict("Position", {
"SYMBOL": str,
"STATUS": str,
"AMOUNT": float,
"BASE_PRICE": float,
"MARGIN_FUNDING": float,
"MARGIN_FUNDING_TYPE": int,
"PL": float,
"PL_PERC": float,
"PRICE_LIQ": float,
"LEVERAGE": float,
"POSITION_ID": int,
"MTS_CREATE": int,
"MTS_UPDATE": int,
"TYPE": int,
"COLLATERAL": float,
"COLLATERAL_MIN": float,
"META": JSON,
})
Positions = List[Position]
Trade = TypedDict("Trade", {
"ID": int,
"CID": int,
"SYMBOL": str,
"MTS_CREATE": int,
"ORDER_ID": int,
"EXEC_AMOUNT": float,
"EXEC_PRICE": float,
"ORDER_TYPE": str,
"ORDER_PRICE": float,
"MAKER": int,
"FEE": float,
"FEE_CURRENCY": str
})
FundingOffer = TypedDict("FundingOffer", {
"ID": int,
"SYMBOL": str,
"MTS_CREATED": int,
"MTS_UPDATED": int,
"AMOUNT": float,
"AMOUNT_ORIG": float,
"OFFER_TYPE": str,
"FLAGS": int,
"STATUS": str,
"RATE": float,
"PERIOD": int,
"NOTIFY": int,
"HIDDEN": int,
"RENEW": int,
})
FundingOffers = List[FundingOffer]
FundingCredit = TypedDict("FundingCredit", {
"ID": int,
"SYMBOL": str,
"SIDE": int,
"MTS_CREATE": int,
"MTS_UPDATE": int,
"AMOUNT": float,
"FLAGS": int,
"STATUS": str,
"RATE": float,
"PERIOD": int,
"MTS_OPENING": int,
"MTS_LAST_PAYOUT": int,
"NOTIFY": int,
"HIDDEN": int,
"RENEW": int,
"RATE_REAL": float,
"NO_CLOSE": int,
"POSITION_PAIR": str
})
FundingCredits = List[FundingCredit]
FundingLoan = TypedDict("FundingLoan", {
"ID": int,
"SYMBOL": str,
"SIDE": int,
"MTS_CREATE": int,
"MTS_UPDATE": int,
"AMOUNT": float,
"FLAGS": int,
"STATUS": str,
"RATE": float,
"PERIOD": int,
"MTS_OPENING": int,
"MTS_LAST_PAYOUT": int,
"NOTIFY": int,
"HIDDEN": int,
"RENEW": int,
"RATE_REAL": float,
"NO_CLOSE": int
})
FundingLoans = List[FundingLoan]
Wallet = TypedDict("Wallet", {
"WALLET_TYPE": str,
"CURRENCY": str,
"BALANCE": float,
"UNSETTLED_INTEREST": float,
"BALANCE_AVAILABLE": float,
"DESCRIPTION": str,
"META": JSON
})
Wallets = List[Wallet]
BalanceInfo = TypedDict("BalanceInfo", {
"AUM": float,
"AUM_NET": float
})