From a3812cd169b4671a35b6aee5db896e990337c4ed Mon Sep 17 00:00:00 2001 From: Tyler Goodlet Date: Mon, 8 Aug 2022 13:47:17 -0400 Subject: [PATCH] Fix for TWS created position loading --- piker/brokers/ib/broker.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/piker/brokers/ib/broker.py b/piker/brokers/ib/broker.py index 93a5b9b8..012975ac 100644 --- a/piker/brokers/ib/broker.py +++ b/piker/brokers/ib/broker.py @@ -533,8 +533,6 @@ async def trades_dialogue( ): trans = norm_trade_records(ledger) updated = table.update_from_trans(trans) - pp = updated[bsuid] - # update trades ledgers for all accounts from connected # api clients which report trades for **this session**. trades = await proxy.trades() @@ -562,6 +560,12 @@ async def trades_dialogue( table.update_from_trans(trans) updated = table.update_from_trans(trans) + # XXX: not sure exactly why it wouldn't be in + # the updated output (maybe this is a bug?) but + # if you create a pos from TWS and then load it + # from the api trades it seems we get a key + # error from ``update[bsuid]`` ? + pp = table.pps[bsuid] if msg.size != pp.size: log.error( 'Position mismatch {pp.symbol.front_fqsn()}:\n'