From 99b519f35cd64d6d53ed8b2aefc4f6309b53dbc5 Mon Sep 17 00:00:00 2001 From: ttt733 Date: Thu, 29 Nov 2018 14:48:36 -0600 Subject: [PATCH] Handle null last trade data from Polygon with NaN & NaT when querying portfolio --- pylivetrader/backend/alpaca.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pylivetrader/backend/alpaca.py b/pylivetrader/backend/alpaca.py index 73bad90..a30df8e 100644 --- a/pylivetrader/backend/alpaca.py +++ b/pylivetrader/backend/alpaca.py @@ -177,11 +177,13 @@ def positions(self): trades = self._symbol_trades(symbols) for symbol, trade in trades.items(): - price = trade.price - dt = trade.timestamp z_position = position_map[symbol] - z_position.last_sale_price = float(price) - z_position.last_sale_date = dt + if trade is None: + z_position.last_sale_price = np.nan + z_position.last_sale_date = pd.NaT + else: + z_position.last_sale_price = float(trade.price) + z_position.last_sale_date = trade.timestamp return z_positions @property