Я пишу алго, чтобы оценивать изменения цены данного списка акций каждый день. Сейчас я работаю с двумя акциями: Apple и Amex. Я хотел бы ранжировать их от наибольшего изменения цены до минимального изменения цены, ежедневно.Оценка ежедневных изменений цен
Например, данные у меня есть выглядит следующим образом:
День 1:
AAPL = 60,40
AMX = 15,50
День 2:
AAPL = 61,00
AMX = 15.60
И я хотел бы, чтобы результат выглядел так, с самым высоким положительным изменением, которое должно быть оценено кулаком. Это возможно?
Изменение:
AAPLchg = 0,60 Уровень 1
AMXchg = 0,10 Уровень 2
Это то, что я до сих пор:
def handle_data(context, data):
price_history = data.history(context.security_list, "price", bar_count=2, frequency="1d")
for s in context.security_list:
PrevAMX = price_history[sid(679)][-2]
CurrAMX = price_history[sid(679)][1]
PrevAAPL = price_history[sid(24)][-2]
CurrAAPL = price_history[sid(24)][1]
AMXchg = CurrAMX - PrevAMX
AAPLchg = CurrAAPL - PrevAAPL
if AMXchg < AAPLchg:
order(sid(679), 20)
if AAPLchg < AMXchg:
order(sid(24), 20)
price_history = data.history(context.security_list, "price", 20, "1d")
print price_history.mean()
print AMXchg
print AAPLchg
print log.info(str(context.chg_list.sort('adv_rank', descending=True).head()))
Конечно, есть, что вы пробовали до сих пор. Сейчас есть слишком много возможных ответов. – MooingRawr
context.chg_list = [AMXchg, AAPLchg] price_history = data.history (context.security_list, "цена", 20, "1d") печати price_history.mean() печати AMXchg печати AAPLchg печати log.info (str (context.chg_list.sort ('adv_rank', descending = True) .head())) –
Измените свой вопрос, чтобы включить то, что вы пробовали при правильном форматировании, а не в комментарии. – MooingRawr