Skip to content

Commit

Permalink
simplify
Browse files Browse the repository at this point in the history
  • Loading branch information
Cuizi7 committed Nov 18, 2020
1 parent 40b5214 commit 2c14297
Showing 1 changed file with 2 additions and 20 deletions.
22 changes: 2 additions & 20 deletions rqalpha/data/base_data_source/storages.py
Expand Up @@ -19,7 +19,6 @@
import json
import locale
import os
import pickle
import sys
from copy import copy
from itertools import chain
Expand All @@ -39,7 +38,6 @@
AbstractInstrumentStore,
AbstractSimpleFactorStore)

FUTURES_MISSING_FIELDS = ['open_interest']

class ExchangeTradingCalendarStore(AbstractCalendarStore):
def __init__(self, f):
Expand Down Expand Up @@ -181,26 +179,10 @@ def get_date_range(self, order_book_id):
except KeyError:
return 20050104, 20050104


class FutureDayBarStore(DayBarStore):
def __init__(self, *args, **kwargs):
self.DEFAULT_DTYPE = np.dtype(self.DEFAULT_DTYPE.descr + [(field, '<f8') for field in FUTURES_MISSING_FIELDS])
super().__init__(*args, **kwargs)
DEFAULT_DTYPE = np.dtype(DayBarStore.DEFAULT_DTYPE.descr + [("open_interest", '<f8')])

def get_bars(self, order_book_id):
try:
bars = self._h5[order_book_id][:]
except KeyError:
bars = np.empty(0, dtype=self.DEFAULT_DTYPE)
new_fields = [field for field in FUTURES_MISSING_FIELDS if field not in bars.dtype.names]
if new_fields:
new_dt = np.dtype(bars.dtype.descr + [(field, '<f8') for field in new_fields])
b = np.zeros(bars.shape, dtype=new_dt)
for name in bars.dtype.names:
b[name] = bars[name]
for field in new_fields:
b[field] = np.nan
bars = b
return bars

class DividendStore(AbstractDividendStore):
def __init__(self, path):
Expand Down

0 comments on commit 2c14297

Please sign in to comment.