#!/usr/bin/env python import urllib, urlparse, sys, string, os, time, re min=[] max=[] comment = re.compile("^\s*#") blankline = re.compile("^\s*$") try: print "Opening "+sys.argv[1] except: print "Need to specify a file with list of tickers" sys.exit(1) t = time.localtime() year = t[0] mon = t[1]-1 day = t[2] setup = open('mpt_setup.m', 'w') setup.write('investments = {') for line in open(sys.argv[1], 'r').readlines(): if(comment.search(line) or blankline.search(line)): continue ticker, a, b = line.split() ticker = string.upper(ticker) ticker = string.rstrip(ticker) min.append(a) max.append(b) print ticker if not os.path.isfile(ticker+'.csv'): urllib.urlretrieve('http://ichart.finance.yahoo.com/table.csv?s=%s&a=00&b=20&c=1900&d=%s&e=%s&f=%s&g=m&ignore=.csv' % (ticker,mon,day,year),ticker+'.csv') setup.write('"'+ticker+'.csv"\n') setup.write('};\n') setup.write('lb = [') for val in min: setup.write(val+'\n') setup.write('];\n') setup.write('ub = [') for val in max: setup.write(val+'\n') setup.write('];\n') setup.write('more off\n') setup.close()