from pyalgotrade.tools import googlefinance from pytrade.feed import DynamicFeed rowFilter = lambda row: row["Close"] == "-" or row["Open"] == "-" or row["High"] == "-" or row["Low"] == "-" or row["Volume"] == "-" instruments = ["PETR4", "PETR3"] # googleFeed = googlefinance.build_feed(instruments, 2015, 2015, storage="./googlefinance", skipErrors=True, rowFilter=rowFilter) dynamicFeed = DynamicFeed("./sqlitedb", instruments, maxLen=10) dynamicFeed.positionFeed(datetime.datetime(2015, 1, 2, tzinfo=pytz.UTC)) print dynamicFeed.getCurrentDateTime() for instrument in dynamicFeed.getRegisteredInstruments(): series = dynamicFeed.getDataSeries(instrument) print("%s %s") % (instrument, series.getCloseDataSeries()[0:len(series)]) #2015-01-01 #datetime: None #PETR4: #close value: #close series [] #PETR3 # close value # close series [] dynamicFeed.positionFeed(datetime.datetime(2015, 1, 1, tzinfo=pytz.UTC)) assert dynamicFeed.getCurrentDateTime() is None assert dynamicFeed.getCurrentBars() is None
import pytz, datetime from pyalgotrade.tools import googlefinance from pytrade.feed import DynamicFeed rowFilter = lambda row: row["Close"] == "-" or row["Open"] == "-" or row[ "High"] == "-" or row["Low"] == "-" or row["Volume"] == "-" instruments = ["PETR4", "PETR3"] # googleFeed = googlefinance.build_feed(instruments, 2015, 2015, storage="./googlefinance", skipErrors=True, rowFilter=rowFilter) dynamicFeed = DynamicFeed("./sqlitedb", instruments, maxLen=10) dynamicFeed.positionFeed(datetime.datetime(2015, 1, 2, tzinfo=pytz.UTC)) print dynamicFeed.getCurrentDateTime() for instrument in dynamicFeed.getRegisteredInstruments(): series = dynamicFeed.getDataSeries(instrument) print("%s %s") % (instrument, series.getCloseDataSeries()[0:len(series)]) #2015-01-01 #datetime: None #PETR4: #close value: #close series [] #PETR3 # close value # close series [] dynamicFeed.positionFeed(datetime.datetime(2015, 1, 1, tzinfo=pytz.UTC)) assert dynamicFeed.getCurrentDateTime() is None assert dynamicFeed.getCurrentBars() is None assert len(dynamicFeed.getDataSeries("PETR4")) == 0