def test_sqlite(self):
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(
         sqlite_file_path=':memory:', table='price', metric='Adj Close')
     self.run_load_from_cache_yahoo(cache=cache)
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(
         sqlite_file_path=':memory:', table='price', metric='Adj Close')
     self.run_load_from_cache_multiple_tickers(cache=cache)
 def test_sqlite(self):
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(sqlite_file_path=':memory:', 
                                                                   table='price', 
                                                                   metric='Adj Close')
     self.run_load_from_cache_yahoo(cache=cache)
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(sqlite_file_path=':memory:', 
                                                                    table='price', 
                                                                    metric='Adj Close')
     self.run_load_from_cache_multiple_tickers(cache=cache)
Example #3
0
def sqlite_price_cache(db_file_path=DEFAULT_PRICE_PATH):
    '''Return a cache that persists prices downloaded from yahoo.
    
    '''
    return FinancialDataTimeSeriesCache.build_sqlite_price_cache(sqlite_file_path=db_file_path, 
                                                                 table='prices', 
                                                                 metric='Adj Close')
 def test_indexes(self):
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(sqlite_file_path=':memory:', 
                                                                   table='price', 
                                                                   metric='Adj Close')
     df = cache.load_from_cache(indexes={'SPX' : '^GSPC'},
                                start=datetime.datetime(2012, 12, 1, tzinfo=pytz.UTC),
                                end=datetime.datetime(2012, 12, 31, tzinfo=pytz.UTC))
     self.assertEqual(df['SPX'][datetime.datetime(2012, 12, 3, tzinfo=pytz.UTC)], 1409.46)
 def run_load_from_cache_multiple_tickers(self, cache):
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(sqlite_file_path=':memory:', 
                                                                   table='price', 
                                                                   metric='Adj Close')
     symbols = ['GOOG', 'AAPL']  
     df = cache.load_from_cache(stocks=symbols,
                                start=datetime.datetime(2012, 12, 1, tzinfo=pytz.UTC), 
                                end=datetime.datetime(2012, 12, 31, tzinfo=pytz.UTC))
     self.assertEqual(df['GOOG'][datetime.datetime(2012, 12, 3, tzinfo=pytz.UTC)], 695.25)
     self.assertEqual(df['AAPL'][datetime.datetime(2012, 12, 31, tzinfo=pytz.UTC)], 522.16)
 def test_indexes(self):
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(
         sqlite_file_path=':memory:', table='price', metric='Adj Close')
     df = cache.load_from_cache(indexes={'SPX': '^GSPC'},
                                start=datetime.datetime(2012,
                                                        12,
                                                        1,
                                                        tzinfo=pytz.UTC),
                                end=datetime.datetime(2012,
                                                      12,
                                                      31,
                                                      tzinfo=pytz.UTC))
     self.assertEqual(
         df['SPX'][datetime.datetime(2012, 12, 3, tzinfo=pytz.UTC)],
         1409.46)
 def run_load_from_cache_multiple_tickers(self, cache):
     cache = FinancialDataTimeSeriesCache.build_sqlite_price_cache(
         sqlite_file_path=':memory:', table='price', metric='Adj Close')
     symbols = ['GOOG', 'AAPL']
     df = cache.load_from_cache(stocks=symbols,
                                start=datetime.datetime(2012,
                                                        12,
                                                        1,
                                                        tzinfo=pytz.UTC),
                                end=datetime.datetime(2012,
                                                      12,
                                                      31,
                                                      tzinfo=pytz.UTC))
     self.assertEqual(
         df['GOOG'][datetime.datetime(2012, 12, 3, tzinfo=pytz.UTC)],
         695.25)
     self.assertEqual(
         df['AAPL'][datetime.datetime(2012, 12, 31, tzinfo=pytz.UTC)],
         522.16)