Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. import manhattan as mh
  2. import datetime as dt
  3. import matplotlib.pyplot as plt
  4. import numpy as np
  5. import QuantLib as ql
  6. import pytz
  7. import pandas as pd
  8. import time
  9.  
  10. est = pytz.timezone('America/New_York')
  11. utc = pytz.utc
  12.  
  13. begining_day = dt.datetime(2017, 6, 26)
  14. ending_day = dt.datetime.today()
  15.  
  16. def get_symbols():
  17. lines = open('sp.txt', 'r').readlines()
  18. symbols = []
  19. for line in lines[1:]:
  20. symbols.append(line.split(',')[0])
  21.  
  22. return symbols
  23.  
  24.  
  25. def generate_dataframe():
  26. american_calendar = ql.UnitedStates(ql.UnitedStates.NYSE)
  27. days = mh.trading_days_between(begining_day, ending_day, american_calendar)
  28.  
  29. sp = pd.DataFrame()
  30.  
  31. data = {}
  32. stocks = {}
  33. symbols = get_symbols()
  34.  
  35. for s in symbols:
  36. data[s] = pd.DataFrame()
  37. stocks[s] = mh.find_product('SIAC', s)
  38. if stocks[s] is None:
  39. stocks[s] = mh.find_product('UTP', s)
  40.  
  41.  
  42. for d in days:
  43. print(d)
  44.  
  45. for s in symbols:
  46. try:
  47. data[s] = data[s].append(mh.get_snapshot(d + dt.timedelta(hours=9, minutes=30), d + dt.timedelta(hours=15), stocks[s], freq=60))
  48. except:
  49. pass
  50.  
  51.  
  52. for s in symbols:
  53. data[s].to_pickle('stock_data/{}.pkl'.format(s))
  54.  
  55.  
  56.  
  57.  
  58. if __name__ == '__main__':
  59. generate_dataframe()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement