From 7d49335f8b8149f3d8eb2f750119490d82792736 Mon Sep 17 00:00:00 2001 From: Tyler Goodlet Date: Thu, 7 Jul 2022 16:27:14 -0400 Subject: [PATCH] Lol, gotta `float()` that vlm before `*` XD --- piker/brokers/kraken/broker.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/piker/brokers/kraken/broker.py b/piker/brokers/kraken/broker.py index 35293a61..c1e8e108 100644 --- a/piker/brokers/kraken/broker.py +++ b/piker/brokers/kraken/broker.py @@ -368,6 +368,10 @@ async def handle_order_updates( defined in the signature clear to the reader. ''' + # transaction records which will be updated + # on new trade clearing events (aka order "fills") + trans: list[pp.Transaction] + async for msg in stream_messages(ws): match msg: # process and relay clearing trade events to ems @@ -379,7 +383,7 @@ async def handle_order_updates( # 'userref': reqid, {'sequence': seq}, ]: - # flatten msgs for processing + # flatten msgs to an {id -> data} table for processing trades = { tid: trade for entry in trades_msgs @@ -725,7 +729,7 @@ def norm_trade_records( records: list[pp.Transaction] = [] for tid, record in ledger.items(): - size = record.get('vol') * { + size = float(record.get('vol')) * { 'buy': 1, 'sell': -1, }[record['type']] @@ -736,7 +740,7 @@ def norm_trade_records( pp.Transaction( fqsn=f'{norm_sym}.kraken', tid=tid, - size=float(size), + size=size, price=float(record['price']), cost=float(record['fee']), dt=pendulum.from_timestamp(float(record['time'])),