Пример #1
0
def compare():
    syms = request.args.get('symbols').split(';')
    series = {}
    for sym in syms:
        stock = Market.get_stock(sym)
        close = stock.prices.close
        series[sym] = close.to_json(orient="split")
    return render_template('compare.html', data=series)
Пример #2
0
def event_profile(algo, size=30):
    buy_window = np.zeros(size)
    buy_count = 0
    sell_window = np.zeros(size)
    sell_count = 0
    orders = algo.blotter.orders
    for order in orders.values():
        stock = Market.get_stock(order.sid, reindex=False)
        index = stock.index.searchsorted(order.created)
        w = stock['close'].ix[index-size/2:index+size/2] / stock['close'].ix[index]
        if order.amount > 0:
            buy_window += w
            buy_count += 1
        else:
            sell_window += w
            sell_count += 1
    buy_window /= buy_count
    sell_window /= sell_count
    return buy_window, sell_window
Пример #3
0
def _stock(sym):
    stock = Market.get_stock(sym)
    return stock.prices.to_json(orient="split")
Пример #4
0
 def get_benchmark(sym, start_date, end_date):
     bench = Market.get_stock(sym,
                              start_date,
                              end_date)
     benchmark = bench.prices['close']
     return benchmark