From 2568f96851a3c5f5b70a641a7b2558ec048e28d3 Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Tue, 10 Dec 2019 19:39:43 +0000 Subject: [PATCH] - improved git-svn-id: http://moon:8086/svn/projects/Stock@300 fda53097-d464-4ada-af97-ba876c37ca34 --- pandas_eval.py | 45 ++++++++++++++++++++++++++++++++------------- 1 file changed, 32 insertions(+), 13 deletions(-) diff --git a/pandas_eval.py b/pandas_eval.py index 5e546e2..f7626a9 100644 --- a/pandas_eval.py +++ b/pandas_eval.py @@ -95,22 +95,40 @@ def bollinger(data, window_days, f=2): return result data = {} -title = 'AAPL' +titles = [] +titles.append('AAPL') +titles.append('XLNX') -if 0: - # Get stock price via data reader - start = datetime.datetime(2016,1,1) - end = datetime.date.today() - data = web.DataReader(title, "av-daily", start, end, api_key=key) -# data = web.DataReader(title, "stooq", start, end) - print(data) - hdf = pd.HDFStore(title + '.h5') - hdf[title] = data +for title in titles: + + fetch = False + today = datetime.date.today() + + try: + hdf = pd.HDFStore(title + '.h5', 'r') + except IOError as e: + fetch = True + print (e) + + try: + data = hdf[title] + except Exception as e: + fetch = True + print (e) + + if fetch: + print ("Fetching \"{}\"".format(title)) + hdf.close() + # Get stock price via data reader + start = datetime.datetime(2016,1,1) + end = datetime.date.today() + data = web.DataReader(title, "av-daily", start, end, api_key=key) + # data = web.DataReader(title, "stooq", start, end) + hdf = pd.HDFStore(title + '.h5') + hdf[title] = data + hdf.close() -else: - hdf = pd.HDFStore(title + '.h5', 'r') - data = hdf[title] data['ema'] = ema(data, key='close', alpha=0.75) data['macd'] = macd(data, key='close') @@ -118,6 +136,7 @@ data['sma'] = sma(data, key='close', window_days=30) boll = bollinger(data, window_days=30) plt.subplot(311) +plt.title(title) data['close'].plot() data['ema'].plot() data['sma'].plot()