mirror of
https://github.com/wassname/catalyst.git
synced 2026-06-27 20:04:30 +08:00
Fixed an issue with minute bundles
This commit is contained in:
@@ -41,12 +41,14 @@ class BcolzExchangeBarReader(BcolzMinuteBarReader):
|
||||
|
||||
def load_raw_arrays(self, fields, start_dt, end_dt, sids):
|
||||
|
||||
if self._data_frequency == 'minute':
|
||||
return super(BcolzExchangeBarReader, self) \
|
||||
.load_raw_arrays(fields, start_dt, end_dt, sids)
|
||||
# if self._data_frequency == 'minute':
|
||||
# return super(BcolzExchangeBarReader, self) \
|
||||
# .load_raw_arrays(fields, start_dt, end_dt, sids)
|
||||
#
|
||||
# else:
|
||||
# return self._load_daily_raw_arrays(fields, start_dt, end_dt, sids)
|
||||
|
||||
else:
|
||||
return self._load_daily_raw_arrays(fields, start_dt, end_dt, sids)
|
||||
return self._load_daily_raw_arrays(fields, start_dt, end_dt, sids)
|
||||
|
||||
def _load_daily_raw_arrays(self, fields, start_dt, end_dt, sids):
|
||||
start_idx = self._find_position_of_minute(start_dt)
|
||||
@@ -62,7 +64,10 @@ class BcolzExchangeBarReader(BcolzMinuteBarReader):
|
||||
mask = None
|
||||
data = []
|
||||
for field in fields:
|
||||
out = np.full(shape, np.nan)
|
||||
if field != 'volume':
|
||||
out = np.full(shape, np.nan)
|
||||
else:
|
||||
out = np.zeros(shape, dtype=np.float64)
|
||||
|
||||
for i, sid in enumerate(sids):
|
||||
carray = self._open_minute_file(field, sid)
|
||||
|
||||
@@ -319,7 +319,6 @@ class ExchangeBundle:
|
||||
for index, field in enumerate(
|
||||
['open', 'high', 'low', 'close', 'volume']):
|
||||
ohlcv[field] = arrays[index].flatten()
|
||||
ohlcv[field] = ohlcv[field][~np.isnan(ohlcv[field])]
|
||||
|
||||
df = pd.DataFrame(
|
||||
data=ohlcv,
|
||||
|
||||
@@ -17,7 +17,7 @@ log = Logger('test_exchange_bundle')
|
||||
|
||||
class ExchangeBundleTestCase:
|
||||
def test_ingest_minute(self):
|
||||
exchange_name = 'poloniex'
|
||||
exchange_name = 'bitfinex'
|
||||
|
||||
# start = pd.to_datetime('2017-09-01', utc=True)
|
||||
start = pd.to_datetime('2017-9-1', utc=True)
|
||||
@@ -27,8 +27,8 @@ class ExchangeBundleTestCase:
|
||||
|
||||
log.info('ingesting exchange bundle {}'.format(exchange_name))
|
||||
exchange_bundle.ingest(
|
||||
data_frequency='daily',
|
||||
include_symbols='etc_btc',
|
||||
data_frequency='minute',
|
||||
include_symbols='neo_eth',
|
||||
# include_symbols=None,
|
||||
exclude_symbols=None,
|
||||
start=start,
|
||||
|
||||
Reference in New Issue
Block a user