Guest User

Untitled

a guest
Apr 14th, 2022
594
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. import yfinance as yf
  2. import datetime
  3. import os
  4. import matplotlib.pylab as pl
  5. import numpy as np
  6. from scipy import stats
  7.  
  8.  
  9. def get_ticker(symbol, startDate=datetime.datetime(2022, 4, 1), endDate=datetime.datetime(2022, 4, 8)):
  10. ticker = yf.Ticker(symbol)
  11. data = ticker.history(start=startDate, end=endDate, interval="1m")
  12. return data
  13.  
  14.  
  15. def get_ticker_sharesOutstanding(symbol):
  16. ticker = yf.Ticker(symbol)
  17. return int(ticker.get_info()['sharesOutstanding'])
  18.  
  19.  
  20.  
  21. ticker_names = ['GME', 'AMC', 'BBBY', 'DDS', 'EXPR']
  22. #ticker_names = []
  23. with open('./Stocks in the Russell 1000 Index.csv', 'r') as f:
  24. lines = f.readlines()
  25.  
  26. for line in lines:
  27.  
  28. symbol = line.split(',')[0].replace('"','')
  29. ticker_names.append(symbol)
  30.  
  31. print(ticker_names)
  32.  
  33. res = []
  34. for name in ticker_names:
  35. try:
  36. print('Getting data for:', name)
  37.  
  38. delta = datetime.timedelta(days=7)
  39. num_days = 5
  40. start_week = datetime.datetime(2022, 4, 13)
  41.  
  42. date_list = [start_week - datetime.timedelta(days=x*7) for x in reversed(range(num_days))]
  43.  
  44. start_date_list = []
  45. gap_p = []
  46.  
  47. for date in date_list[:-1]:
  48. print(name, date, date + delta)
  49. data = get_ticker(name, startDate=date, endDate=date + delta)
  50.  
  51. #data = get_ticker(name)
  52. shares_out = get_ticker_sharesOutstanding(name)
  53. output_path = './data/' + name + '_' + str(shares_out) + '.csv'
  54. output_file_exists = os.path.exists(output_path)
  55. data.to_csv(output_path, mode='a', header=not output_file_exists)
  56.  
  57. except Exception as err:
  58. print(err)
  59.  
Advertisement
Add Comment
Please, Sign In to add comment