mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-20 15:24:21 +01:00
Added Margin Info endpoint
This commit is contained in:
@@ -10,7 +10,7 @@ import datetime
|
||||
|
||||
from ..utils.custom_logger import CustomLogger
|
||||
from ..utils.auth import generate_auth_headers, calculate_order_flags, gen_unique_cid
|
||||
from ..models import Wallet, Order, Position, Trade, FundingLoan, FundingOffer, FundingTrade
|
||||
from ..models import Wallet, Order, Position, Trade, FundingLoan, FundingOffer, FundingTrade, MarginInfoBase, MarginInfo
|
||||
from ..models import FundingCredit, Notification, Ledger
|
||||
|
||||
|
||||
@@ -385,6 +385,22 @@ class BfxRest:
|
||||
raw_wallets = await self.post(endpoint)
|
||||
return [Wallet(*rw[:5]) for rw in raw_wallets]
|
||||
|
||||
async def get_margin_info(self, symbol='base'):
|
||||
"""
|
||||
Get account margin information (like P/L, Swaps, Margin Balance, Tradable Balance and others).
|
||||
Use different keys (base, SYMBOL, sym_all) to retrieve different kinds of data.
|
||||
|
||||
@return Array
|
||||
"""
|
||||
endpoint = f"auth/r/info/margin/{symbol}"
|
||||
raw_margin_info = await self.post(endpoint)
|
||||
if symbol == 'base':
|
||||
return MarginInfoBase.from_raw_margin_info(raw_margin_info)
|
||||
elif symbol == 'sym_all':
|
||||
return [MarginInfo.from_raw_margin_info(record) for record in raw_margin_info]
|
||||
else:
|
||||
return MarginInfo.from_raw_margin_info(raw_margin_info)
|
||||
|
||||
async def get_active_orders(self, symbol):
|
||||
"""
|
||||
Get all of the active orders associated with API_KEY - Requires authentication.
|
||||
|
||||
Reference in New Issue
Block a user