def connectTo(self, connections, **kwargs): ''' Set up allowed data sources ''' tz = kwargs.get('timezone', self.tz) log = kwargs.get('logger', None) lvl = kwargs.get('lvl', 'debug') if 'database' in connections: db_name = kwargs.get('db_name', str(os.environ['QTRADEDB'])) self.db = QuantSQLite(db_name, timezone=tz, logger=log, lvl=lvl) self._logger.info('Database location provided, Connected to %s' % db_name) self.connected['database'] = True if 'remote' in connections: self.remote = Fetcher(timezone=tz, logger=log, lvl=lvl) self.connected['remote'] = True if 'csv' in connections: raise NotImplementedError()
def __init__(self, data, **kwargs): assert isinstance(data['index'], pd.tseries.index.DatetimeIndex) self.data = data # Unpack config dictionary with default values. self.sids = kwargs.get('sids', data['tickers']) self.start = kwargs.get('start', data['index'][0]) self.end = kwargs.get('end', data['index'][-1]) self.fake_index = pd.date_range(self.start, self.end, freq=pd.datetools.BDay()) # Hash_value for downstream sorting. self.arg_string = hash_args(data, **kwargs) self._raw_data = None self.remote = Fetcher() self.feed = DataFeed()