Ejemplo n.º 1
0
 def read(cls, value_list):
     repo = EXTRACT.instance().repo
     ret = {}
     for name, data in STOCK_TIMESERIES.read(repo, value_list):
         logging.info((name, type(data), data.shape))
         ret[name] = data
     return ret
Ejemplo n.º 2
0
def load(file_list, value_list):
    ret = {}
    for name, data in STOCK_TIMESERIES.read(file_list, value_list):
        if len(data) < 7 * FINANCE.YEAR:
            logging.info(
                "{} of length {} rejected for being less than {}".format(
                    name, len(data), 7 * FINANCE.YEAR))
            continue
        data = MONTECARLO.find(data['Adj Close'], period=FINANCE.YEAR)
        #filter stocks that have less than a year
        sharpe = data.get('sharpe', 0)
        if sharpe == 0:
            continue
        #filter stocks that have negative returns
        returns = data.get('returns', 0)
        if returns <= 0:
            logging.info(
                "{} of returns {} rejected for being unprofitable".format(
                    name, returns))
            continue
        key_list = data.keys()
        value_list = map(lambda x: data[x], key_list)
        value_list = map(lambda x: round(x, 2), value_list)
        msg = dict(zip(key_list, value_list))
        logging.info((name, msg))
        ret[name] = data
    return ret
Ejemplo n.º 3
0
 def read(cls, value_list) :
     repo = VARIABLES().repo_stock
     ret = {}
     for name, data in STOCK_TIMESERIES.read(repo, value_list) :
         logging.info((name,type(data),data.shape))
         ret[name] = data
     return ret
def load(file_list, stock_list) :
    name_list = []
    data_list = pd.DataFrame() 
    for name, stock in STOCK_TIMESERIES.read(file_list, stock_list) :
        try :
            data_list[name] = stock['Adj Close']
            name_list.append(name)
        except Exception as e : logging.error(e, exc_info=True)
        finally : pass
    return name_list, data_list
Ejemplo n.º 5
0
def load(value_list) :
    file_list = PREP.singleton().file_list
    ret = {}
    for name, data in STOCK_TIMESERIES.read(file_list, value_list) :
        flag, data = HELPER.is_stock_invalid(name, data)
        if flag :
            continue
        ret[name] = data
        msg = HELPER.round_values(**data)
        logging.info((name, msg))
    return ret
Ejemplo n.º 6
0
def process(file_list, value_list):
    ret = {}
    for name, data in STOCK_TIMESERIES.read(file_list, value_list):
        data.sort_index(inplace=True)
        data = data['Adj Close']
        data = MONTECARLO.find(data,
                               risk_free_rate=0.02,
                               period=FINANCE.YEAR,
                               span=0)

        # filter stocks that have less than a year
        sharpe = data.get('sharpe', 0)
        if sharpe == 0: continue
        ret[name] = data
    return ret
Ejemplo n.º 7
0
def load(file_list, value_list):
    ret = {}
    for name, data in STOCK_TIMESERIES.read(file_list, value_list):
        data = MONTECARLO.find(data['Adj Close'], period=FINANCE.YEAR)
        #filter stocks that have less than a year
        sharpe = data.get('sharpe', 0)
        if sharpe == 0: continue
        #filter stocks that have negative returns
        returns = data.get('returns', 0)
        if returns <= 0: continue
        key_list = data.keys()
        value_list = map(lambda x: data[x], key_list)
        value_list = map(lambda x: round(x, 2), value_list)
        msg = dict(zip(key_list, value_list))
        logging.info((name, msg))
        ret[name] = data
    return ret
Ejemplo n.º 8
0
 def load(cls, value_list):
     ret = {}
     for name, data in STOCK_TIMESERIES.read(cls.stock_data, value_list):
         ret[name] = data['Adj Close']
     return ret
Ejemplo n.º 9
0
 def load(cls, value_list):
     file_list = cls.singleton().file_list
     ret = {}
     for name, data in STOCK_TIMESERIES.read(file_list, value_list):
         ret[name] = data['Adj Close']
     return ret