diff --git a/dockerfiles/Pipfile b/dockerfiles/Pipfile index d336d2c..35e4ae2 100644 --- a/dockerfiles/Pipfile +++ b/dockerfiles/Pipfile @@ -7,7 +7,7 @@ name = "pypi" numpy = ">1.16" alpaca-trade-api = "==0.28" pylivetrader = "==0.0.29" -pipeline-live = "==0.1.4" +pipeline-live = "==0.1.5" ta-lib = "==0.4.17" [dev-packages] diff --git a/pylivetrader/backend/alpaca.py b/pylivetrader/backend/alpaca.py index e8e46f4..7d01883 100644 --- a/pylivetrader/backend/alpaca.py +++ b/pylivetrader/backend/alpaca.py @@ -600,11 +600,12 @@ def fetch(symbol): if size == 'minute': df.index += pd.Timedelta('1min') - # mask out bars outside market hours - mask = self._cal.minutes_in_range( - df.index[0], df.index[-1], - ).tz_convert(NY) - df = df.reindex(mask) + if not df.empty: + # mask out bars outside market hours + mask = self._cal.minutes_in_range( + df.index[0], df.index[-1], + ).tz_convert(NY) + df = df.reindex(mask) if limit is not None: df = df.iloc[-limit:] diff --git a/pylivetrader/data/bardata.py b/pylivetrader/data/bardata.py index 7e2fd84..abf5369 100644 --- a/pylivetrader/data/bardata.py +++ b/pylivetrader/data/bardata.py @@ -123,6 +123,9 @@ def fetch(asset, field): def history(self, assets, fields, bar_count, frequency): + if not (assets and fields): + return None + if isinstance(fields, str): single_asset = isinstance(assets, Asset)