mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-20 15:24:21 +01:00
Fix small bug in BfxRestInterface.py file.
This commit is contained in:
@@ -30,20 +30,24 @@ class BfxRestInterface(object):
|
|||||||
return serializers.PlatformStatus.parse(*self.__GET("platform/status"))
|
return serializers.PlatformStatus.parse(*self.__GET("platform/status"))
|
||||||
|
|
||||||
def tickers(self, symbols: List[str]) -> List[Union[TradingPairTicker, FundingCurrencyTicker]]:
|
def tickers(self, symbols: List[str]) -> List[Union[TradingPairTicker, FundingCurrencyTicker]]:
|
||||||
|
data = self.__GET("tickers", params={ "symbols": ",".join(symbols) })
|
||||||
|
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
"t": serializers.TradingPairTicker.parse,
|
"t": serializers.TradingPairTicker.parse,
|
||||||
"f": serializers.FundingCurrencyTicker.parse
|
"f": serializers.FundingCurrencyTicker.parse
|
||||||
}[subdata[0][0]](*subdata)
|
}[subdata[0][0]](*subdata)
|
||||||
|
|
||||||
for subdata in self.__GET("tickers", params={ "symbols": ",".join(symbols) })
|
for subdata in data
|
||||||
]
|
]
|
||||||
|
|
||||||
def ticker(self, symbol: str) -> Union[TradingPairTicker, FundingCurrencyTicker]:
|
def ticker(self, symbol: str) -> Union[TradingPairTicker, FundingCurrencyTicker]:
|
||||||
|
data = self.__GET(f"ticker/{symbol}")
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"t": serializers.TradingPairTicker.parse,
|
"t": serializers.TradingPairTicker.parse,
|
||||||
"f": serializers.FundingCurrencyTicker.parse
|
"f": serializers.FundingCurrencyTicker.parse
|
||||||
}[symbol[0]](*self.__GET(f"ticker/{symbol}"), skip=["SYMBOL"])
|
}[symbol[0]](*data, skip=["SYMBOL"])
|
||||||
|
|
||||||
def tickers_history(self, symbols: List[str], start: Optional[int] = None, end: Optional[int] = None, limit: Optional[int] = None) -> TickerHistories:
|
def tickers_history(self, symbols: List[str], start: Optional[int] = None, end: Optional[int] = None, limit: Optional[int] = None) -> TickerHistories:
|
||||||
params = {
|
params = {
|
||||||
@@ -52,28 +56,34 @@ class BfxRestInterface(object):
|
|||||||
"limit": limit
|
"limit": limit
|
||||||
}
|
}
|
||||||
|
|
||||||
return [ serializers.TickerHistory.parse(*subdata) for subdata in self.__GET("tickers/hist", params=params) ]
|
data = self.__GET("tickers/hist", params=params)
|
||||||
|
|
||||||
|
return [ serializers.TickerHistory.parse(*subdata) for subdata in data ]
|
||||||
|
|
||||||
def trades(self, symbol: str, limit: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, sort: Optional[int] = None) -> Union[TradingPairTrades, FundingCurrencyTrades]:
|
def trades(self, symbol: str, limit: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, sort: Optional[int] = None) -> Union[TradingPairTrades, FundingCurrencyTrades]:
|
||||||
params = { "symbol": symbol, "limit": limit, "start": start, "end": end, "sort": sort }
|
params = { "symbol": symbol, "limit": limit, "start": start, "end": end, "sort": sort }
|
||||||
|
|
||||||
|
data = self.__GET(f"trades/{symbol}/hist", params=params)
|
||||||
|
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
"t": serializers.TradingPairTrade.parse,
|
"t": serializers.TradingPairTrade.parse,
|
||||||
"f": serializers.FundingCurrencyTrade.parse
|
"f": serializers.FundingCurrencyTrade.parse
|
||||||
}[symbol[0]](*subdata)
|
}[symbol[0]](*subdata)
|
||||||
|
|
||||||
for subdata in self.__GET(f"trades/{symbol}/hist", params=params)
|
for subdata in data
|
||||||
]
|
]
|
||||||
|
|
||||||
def book(self, symbol: str, precision: str, len: Optional[int] = None) -> Union[TradingPairBooks, FundingCurrencyBooks, TradingPairRawBooks, FundingCurrencyRawBooks]:
|
def book(self, symbol: str, precision: str, len: Optional[int] = None) -> Union[TradingPairBooks, FundingCurrencyBooks, TradingPairRawBooks, FundingCurrencyRawBooks]:
|
||||||
|
data = self.__GET(f"book/{symbol}/{precision}", params={ "len": len })
|
||||||
|
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
"t": precision == "R0" and serializers.TradingPairRawBook.parse or serializers.TradingPairBook.parse,
|
"t": precision == "R0" and serializers.TradingPairRawBook.parse or serializers.TradingPairBook.parse,
|
||||||
"f": precision == "R0" and serializers.FundingCurrencyRawBook.parse or serializers.FundingCurrencyBook.parse,
|
"f": precision == "R0" and serializers.FundingCurrencyRawBook.parse or serializers.FundingCurrencyBook.parse,
|
||||||
}[symbol[0]](*subdata)
|
}[symbol[0]](*subdata)
|
||||||
|
|
||||||
for subdata in self.__GET(f"book/{symbol}/{precision}", params={ "len": len })
|
for subdata in data
|
||||||
]
|
]
|
||||||
|
|
||||||
def stats(
|
def stats(
|
||||||
@@ -81,47 +91,48 @@ class BfxRestInterface(object):
|
|||||||
resource: str, section: Literal["hist", "last"],
|
resource: str, section: Literal["hist", "last"],
|
||||||
sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None
|
sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None
|
||||||
) -> Union[Stat, Stats]:
|
) -> Union[Stat, Stats]:
|
||||||
endpoint = f"stats1/{resource}/{section}"
|
|
||||||
|
|
||||||
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
||||||
|
|
||||||
|
data = self.__GET(f"stats1/{resource}/{section}", params=params)
|
||||||
|
|
||||||
if section == "last":
|
if section == "last":
|
||||||
return serializers.Stat.parse(*self.__GET(endpoint, params=params))
|
return serializers.Stat.parse(*data)
|
||||||
return [ serializers.Stat.parse(*subdata) for subdata in self.__GET(endpoint, params=params) ]
|
return [ serializers.Stat.parse(*subdata) for subdata in data ]
|
||||||
|
|
||||||
def candles(
|
def candles(
|
||||||
self,
|
self,
|
||||||
resource: str, section: Literal["hist", "last"],
|
resource: str, section: Literal["hist", "last"],
|
||||||
sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None
|
sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None
|
||||||
) -> Union[Candle, Candles]:
|
) -> Union[Candle, Candles]:
|
||||||
endpoint = f"candles/{resource}/{section}"
|
|
||||||
|
|
||||||
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
||||||
|
|
||||||
|
data = self.__GET(f"candles/{resource}/{section}", params=params)
|
||||||
|
|
||||||
if section == "last":
|
if section == "last":
|
||||||
return serializers.Candle.parse(*self.__GET(endpoint, params=params))
|
return serializers.Candle.parse(*data)
|
||||||
return [ serializers.Candle.parse(*subdata) for subdata in self.__GET(endpoint, params=params) ]
|
return [ serializers.Candle.parse(*subdata) for subdata in data ]
|
||||||
|
|
||||||
def derivatives_status(self, type: str, keys: Optional[List[str]] = None) -> DerivativeStatuses:
|
def derivatives_status(self, type: str, keys: List[str] = None) -> DerivativeStatuses:
|
||||||
params = None
|
|
||||||
|
|
||||||
if keys != None:
|
|
||||||
params = { "keys": ",".join(keys) }
|
params = { "keys": ",".join(keys) }
|
||||||
|
|
||||||
return [ serializers.DerivativesStatus.parse(*subdata) for subdata in self.__GET(f"status/{type}", params=params) ]
|
data = self.__GET(f"status/{type}", params=params)
|
||||||
|
|
||||||
|
return [ serializers.DerivativesStatus.parse(*subdata) for subdata in data ]
|
||||||
|
|
||||||
def derivatives_status_history(
|
def derivatives_status_history(
|
||||||
self,
|
self,
|
||||||
type: str, symbol: str,
|
type: str, symbol: str,
|
||||||
sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None
|
sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None
|
||||||
) -> DerivativeStatuses:
|
) -> DerivativeStatuses:
|
||||||
endpoint = f"status/{type}/{symbol}/hist"
|
|
||||||
|
|
||||||
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
||||||
|
|
||||||
return [ serializers.DerivativesStatus.parse(*subdata, skip=[ "KEY" ]) for subdata in self.__GET(endpoint, params=params) ]
|
data = self.__GET(f"status/{type}/{symbol}/hist", params=params)
|
||||||
|
|
||||||
|
return [ serializers.DerivativesStatus.parse(*subdata, skip=[ "KEY" ]) for subdata in data ]
|
||||||
|
|
||||||
def liquidations(self, sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None) -> Liquidations:
|
def liquidations(self, sort: Optional[int] = None, start: Optional[str] = None, end: Optional[str] = None, limit: Optional[int] = None) -> Liquidations:
|
||||||
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
params = { "sort": sort, "start": start, "end": end, "limit": limit }
|
||||||
|
|
||||||
return [ serializers.Liquidation.parse(*subdata[0]) for subdata in self.__GET("liquidations/hist", params=params) ]
|
data = self.__GET("liquidations/hist", params=params)
|
||||||
|
|
||||||
|
return [ serializers.Liquidation.parse(*subdata[0]) for subdata in data ]
|
||||||
Reference in New Issue
Block a user