def update_table(ticker, table, od_today, limitdays): print "--" funcname = sys._getframe().f_code.co_name print ",".join(map(str, ["--", funcname, ticker, table.name])) od_first, od_last = table.get_timestamp_range() od_limit = int(od_today - limitdays) print ",".join(map(str, ["f-l-to-li", od_first, od_last, od_today, od_limit])) # fill until today days = int(od_today - od_last) + 2 # explain why +2 here months = days / 30 + 1 # print ','.join(map(str, ['days', days, 'months', months])); timespan = None if table.name == "daily": timespan = str(months) + "m" elif table.name == "fivemin": timespan = str(days) + "d" elif table.name == "onemin": timespan = "1d" if timespan: # print timespan columns, data = quotes.get_quote_intraday(ticker, timespan) table.fill(data) # clamp up to limits if od_first < od_limit: table.clampto(od_limit)
def update_table(ticker, table, od_today, limitdays): print '--' funcname = sys._getframe().f_code.co_name print ','.join(map(str, ['--', funcname, ticker, table.name])) od_first, od_last = table.get_timestamp_range() od_limit = int(od_today - limitdays) print ','.join(map(str,['f-l-to-li',od_first, od_last, od_today, od_limit])) # fill until today days = int(od_today - od_last) + 2 # explain why +2 here months = days / 30 + 1 #print ','.join(map(str, ['days', days, 'months', months])); timespan = None if table.name == 'daily': timespan = str(months)+'m' elif table.name == 'fivemin': timespan = str(days)+'d' elif table.name == 'onemin': timespan = '1d' if timespan: #print timespan columns, data = quotes.get_quote_intraday(ticker, timespan) table.fill(data) # clamp up to limits if od_first < od_limit: table.clampto(od_limit)
def init_table(ticker, table, timespan): print "--" funcname = sys._getframe().f_code.co_name print ",".join(["--", funcname, ticker, table.name, timespan]) # timespan = '1y' #'6m' #'1d', '1y' if table.name != "daily": columns, data = quotes.get_quote_intraday(ticker, timespan) table.fill(data) else: # data = quotes.get_quote_daily_matplotlib(ticker) data = quotes.get_quote_daily_pandas(ticker) # # data from matplotlib: a numpy record array with fields: date, open, high, low, close, volume, adj_close # schema = 'Timestamp FLOAT PRIMARY KEY,close FLOAT,high FLOAT,low FLOAT,open FLOAT,volume FLOAT' # DCHLOV = zip(mdates.date2num(data.date), # data.close, data.high, data.low, data.open, data.volume) # print DCHLOV[:5] # data from pandas: index:pandas.DatetimeIndex, # columns: "Open", "High", "Low", "Close", "Volume", "Adj Close" # convert from pandas.DatetimeIndex to numpy.datetime64, to datetime # http://stackoverflow.com/questions/13703720/converting-between-datetime-timestamp-and-datetime64 DCHLOV = zip( mdates.date2num(data.index.to_pydatetime()), data.Close, data.High, data.Low, data.Open, data.Volume ) table.fill(DCHLOV) print "first and last timestamp of table:" print table.get_first_ts() print table.get_last_ts()
def init_table(ticker, table, timespan): print '--' funcname = sys._getframe().f_code.co_name print ','.join(['--', funcname, ticker, table.name, timespan]) #timespan = '1y' #'6m' #'1d', '1y' if table.name != 'daily': columns, data = quotes.get_quote_intraday(ticker, timespan) table.fill(data) else: #data = quotes.get_quote_daily_matplotlib(ticker) data = quotes.get_quote_daily_pandas(ticker) # # data from matplotlib: a numpy record array with fields: date, open, high, low, close, volume, adj_close # schema = 'Timestamp FLOAT PRIMARY KEY,close FLOAT,high FLOAT,low FLOAT,open FLOAT,volume FLOAT' #DCHLOV = zip(mdates.date2num(data.date), # data.close, data.high, data.low, data.open, data.volume) #print DCHLOV[:5] # data from pandas: index:pandas.DatetimeIndex, # columns: "Open", "High", "Low", "Close", "Volume", "Adj Close" # convert from pandas.DatetimeIndex to numpy.datetime64, to datetime # http://stackoverflow.com/questions/13703720/converting-between-datetime-timestamp-and-datetime64 DCHLOV = zip(mdates.date2num(data.index.to_pydatetime()), data.Close, data.High, data.Low, data.Open, data.Volume) table.fill(DCHLOV) print 'first and last timestamp of table:' print table.get_first_ts() print table.get_last_ts()