mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-19 23:04:21 +01:00
Add derivatives_status_update event in handlers.py. Add DerivativesStatus in serializers.py and typings.py.
This commit is contained in:
@@ -29,6 +29,7 @@ class PublicChannelsHandler(object):
|
|||||||
Channels.TRADES: self.__trades_channel_handler,
|
Channels.TRADES: self.__trades_channel_handler,
|
||||||
Channels.BOOK: self.__book_channel_handler,
|
Channels.BOOK: self.__book_channel_handler,
|
||||||
Channels.CANDLES: self.__candles_channel_handler,
|
Channels.CANDLES: self.__candles_channel_handler,
|
||||||
|
Channels.STATUS: self.__status_channel_handler
|
||||||
}
|
}
|
||||||
|
|
||||||
def handle(self, subscription, *stream):
|
def handle(self, subscription, *stream):
|
||||||
@@ -116,6 +117,16 @@ class PublicChannelsHandler(object):
|
|||||||
serializers.Candle(*stream[0])
|
serializers.Candle(*stream[0])
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def __status_channel_handler(self, subscription, *stream):
|
||||||
|
subscription = _get_sub_dictionary(subscription, [ "chanId", "key" ])
|
||||||
|
|
||||||
|
if subscription["key"].startswith("deriv:"):
|
||||||
|
return self.event_emitter.emit(
|
||||||
|
"derivatives_status_update",
|
||||||
|
subscription,
|
||||||
|
serializers.DerivativesStatus(*stream[0])
|
||||||
|
)
|
||||||
|
|
||||||
class AuthenticatedChannelsHandler(object):
|
class AuthenticatedChannelsHandler(object):
|
||||||
def __init__(self, event_emitter, strict = False):
|
def __init__(self, event_emitter, strict = False):
|
||||||
self.event_emitter, self.strict = event_emitter, strict
|
self.event_emitter, self.strict = event_emitter, strict
|
||||||
|
|||||||
@@ -95,4 +95,30 @@ Candle = _Serializer("Candle", labels=[
|
|||||||
"HIGH",
|
"HIGH",
|
||||||
"LOW",
|
"LOW",
|
||||||
"VOLUME"
|
"VOLUME"
|
||||||
|
])
|
||||||
|
|
||||||
|
DerivativesStatus = _Serializer("DerivativesStatus", labels=[
|
||||||
|
"TIME_MS",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"DERIV_PRICE",
|
||||||
|
"SPOT_PRICE",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"INSURANCE_FUND_BALANCE",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"NEXT_FUNDING_EVT_TIMESTAMP_MS",
|
||||||
|
"NEXT_FUNDING_ACCRUED",
|
||||||
|
"NEXT_FUNDING_STEP",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"CURRENT_FUNDING"
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"MARK_PRICE",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"OPEN_INTEREST",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"_PLACEHOLDER",
|
||||||
|
"CLAMP_MIN",
|
||||||
|
"CLAMP_MAX"
|
||||||
])
|
])
|
||||||
@@ -117,6 +117,21 @@ Candle = TypedDict("Candle", {
|
|||||||
|
|
||||||
Candles = List[Candle]
|
Candles = List[Candle]
|
||||||
|
|
||||||
|
DerivativesStatus = TypedDict("DerivativesStatus", {
|
||||||
|
"TIME_MS": int,
|
||||||
|
"DERIV_PRICE": float,
|
||||||
|
"SPOT_PRICE": float,
|
||||||
|
"INSURANCE_FUND_BALANCE": float,
|
||||||
|
"NEXT_FUNDING_EVT_TIMESTAMP_MS": int,
|
||||||
|
"NEXT_FUNDING_ACCRUED": float,
|
||||||
|
"NEXT_FUNDING_STEP": int,
|
||||||
|
"CURRENT_FUNDING": float,
|
||||||
|
"MARK_PRICE": float,
|
||||||
|
"OPEN_INTEREST": float,
|
||||||
|
"CLAMP_MIN": float,
|
||||||
|
"CLAMP_MAX": float
|
||||||
|
})
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Type hinting for Websocket Authenticated Channels
|
#region Type hinting for Websocket Authenticated Channels
|
||||||
|
|||||||
Reference in New Issue
Block a user