Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions poloniex/api/async.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,10 @@ async def decorator(data):


def trades_wrapper(topic, handler):
async def decorator(data):

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@clayrichardson Will other handlers work in this case?

for event in data:
async def decorator(event_args, event_kwargs):
for event in event_args:
event["currency_pair"] = topic
event.update(event_kwargs)

if inspect.isgeneratorfunction(handler):
await handler(**event)
Expand Down
107 changes: 93 additions & 14 deletions poloniex/constants.py
Original file line number Diff line number Diff line change
@@ -1,21 +1,100 @@
__author__ = 'andrey.samokhvalov21@yandex.ru'

CHART_DATA_PERIODS = [300, 900, 1800, 7200, 14400, 86400]

# Pulled from var currencyPairArray on https://poloniex.com/exchange
# Current as of Sun May 7 07:11:23 UTC 2017
CURRENCY_PAIRS = [
'BTC_HUC', 'BTC_CNMT', 'BTC_UNITY', 'BTC_BITS', 'BTC_SWARM', 'BTC_NXT', 'BTC_GMC', 'BTC_BITCNY', 'BTC_BLOCK',
'XMR_LTC', 'BTC_EMC2', 'BTC_POT', 'BTC_DOGE', 'BTC_RIC', 'BTC_XCR', 'BTC_SC', 'BTC_RDD', 'BTC_PIGGY', 'BTC_EXP',
'BTC_XPM', 'USDT_ETH', 'BTC_SYNC', 'BTC_XPB', 'BTC_PPC', 'BTC_XCH', 'BTC_ABY', 'BTC_MINT', 'USDT_DASH', 'BTC_XRP',
'BTC_DIEM', 'XMR_DSH', 'BTC_XEM', 'USDT_XMR', 'BTC_VTC', 'BTC_XDP', 'BTC_STR', 'BTC_GRS', 'BTC_DGB', 'BTC_FLT',
'BTC_XC', 'BTC_HZ', 'BTC_CLAM', 'USDT_XRP', 'BTC_XBC', 'XMR_HYP', 'BTC_NOTE', 'BTC_INDEX', 'BTC_MMNXT', 'BTC_NAUT',
'USDT_LTC', 'BTC_SYS', 'USDT_STR', 'BTC_FLO', 'BTC_MYR', 'XMR_BTCD', 'BTC_BBR', 'XMR_BLK', 'BTC_RBY', 'BTC_LTBC',
'BTC_MAID', 'BTC_1CR', 'BTC_BTM', 'BTC_GEMZ', 'BTC_NOXT', 'BTC_FCT', 'BTC_OMNI', 'BTC_FLDC', 'BTC_VRC', 'XMR_DASH',
'BTC_XUSD', 'BTC_MMC', 'BTC_BTS', 'BTC_PTS', 'BTC_EXE', 'BTC_IOC', 'BTC_SDC', 'BTC_QORA', 'XMR_MNTA', 'BTC_XMG',
'BTC_C2', 'XMR_XDN', 'BTC_BELA', 'BTC_BITUSD', 'XMR_NXT', 'BTC_BURST', 'BTC_MRS', 'USDT_BTC', 'BTC_BCN', 'BTC_XMR',
'BTC_GRC', 'BTC_CURE', 'BTC_NEOS', 'BTC_BTCD', 'BTC_QBK', 'BTC_NOBL', 'BTC_MCN', 'XMR_BBR', 'BTC_XCN', 'BTC_NBT',
'BTC_XDN', 'BTC_YACC', 'BTC_QTL', 'BTC_LQD', 'BTC_NAV', 'BTC_NMC', 'BTC_NSR', 'BTC_MIL', 'BTC_FIBRE', 'BTC_WDC',
'BTC_ADN', 'BTC_ARCH', 'BTC_VIA', 'XMR_BCN', 'XMR_DIEM', 'BTC_GEO', 'BTC_XCP', 'BTC_BLK', 'BTC_ETH', 'BTC_DASH',
'XMR_IFC', 'BTC_XST', 'BTC_SILK', 'XMR_QORA', 'BTC_BCY', 'BTC_VNL', 'XMR_MAID', 'USDT_NXT', 'BTC_CGA', 'BTC_PINK',
'BTC_SJCX', 'BTC_LTC', 'BTC_GAP', 'BTC_HYP', 'BTC_DAO', 'BTC_LSK'
"BTC_AMP",
"BTC_ARDR",
"BTC_BCN",
"BTC_BCY",
"BTC_BELA",
"BTC_BLK",
"BTC_BTCD",
"BTC_BTM",
"BTC_BTS",
"BTC_BURST",
"BTC_CLAM",
"BTC_DASH",
"BTC_DCR",
"BTC_DGB",
"BTC_DOGE",
"BTC_EMC2",
"BTC_ETC",
"BTC_ETH",
"BTC_EXP",
"BTC_FCT",
"BTC_FLDC",
"BTC_FLO",
"BTC_GAME",
"BTC_GNO",
"BTC_GNT",
"BTC_GRC",
"BTC_HUC",
"BTC_LBC",
"BTC_LSK",
"BTC_LTC",
"BTC_MAID",
"BTC_NAUT",
"BTC_NAV",
"BTC_NEOS",
"BTC_NMC",
"BTC_NOTE",
"BTC_NXC",
"BTC_NXT",
"BTC_OMNI",
"BTC_PASC",
"BTC_PINK",
"BTC_POT",
"BTC_PPC",
"BTC_RADS",
"BTC_REP",
"BTC_RIC",
"BTC_SBD",
"BTC_SC",
"BTC_SJCX",
"BTC_STEEM",
"BTC_STR",
"BTC_STRAT",
"BTC_SYS",
"BTC_VIA",
"BTC_VRC",
"BTC_VTC",
"BTC_XBC",
"BTC_XCP",
"BTC_XEM",
"BTC_XMR",
"BTC_XPM",
"BTC_XRP",
"BTC_XVC",
"BTC_ZEC",
"ETH_ETC",
"ETH_GNO",
"ETH_GNT",
"ETH_LSK",
"ETH_REP",
"ETH_STEEM",
"ETH_ZEC",
"USDT_BTC",
"USDT_DASH",
"USDT_ETC",
"USDT_ETH",
"USDT_LTC",
"USDT_NXT",
"USDT_REP",
"USDT_STR",
"USDT_XMR",
"USDT_XRP",
"USDT_ZEC",
"XMR_BCN",
"XMR_BLK",
"XMR_BTCD",
"XMR_DASH",
"XMR_LTC",
"XMR_MAID",
"XMR_NXT",
"XMR_ZEC"
]

AVAILABLE_SUBSCRIPTIONS = CURRENCY_PAIRS[:]
Expand Down
5 changes: 4 additions & 1 deletion poloniex/wamp/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,10 @@ async def _on_event(self, event):
subscription = self.subscriptions[subscription_id]

handler = subscription['handler']
await handler(event.args)
if event.kwargs is not None:
await handler(event.args, event.kwargs)
else:
await handler(event.args)

async def _on_subscribed(self, msg):
request_id = msg.request
Expand Down