INNER CODE UNIT · Python

build

renee-jia/trading-bot · ai_portfolio.py:142

def build(ranked, macro_result=None, sell_put_plan=None, held=None, today=None):
    """Return {'names': [...core], 'watch': [...], 'summary': {...}, 'event': {...}}."""
    import daily_watch

    names = portfolio_list()
    watch = watchlist_names(names)
    rows = {(r.get("ticker") or "").upper(): r for r in (ranked or [])}
    subset = [rows[n] for n in names + watch if n in rows]
    cards, event = daily_watch.annotate(
        subset, held=held, today=today, tape=(macro_result or {}).get("macro_tape"))
    card_map = {c["ticker"]: c for c in cards}
    plan_map = {p["ticker"]: p for p in ((sell_put_plan or {}).get("names") or [])}

    out = [_item(n, rows.get(n), card_map.get(n), plan_map.get(n)) for n in names]
    watch_items = [_item(n, rows.get(n), card_map.get(n), plan_map.get(n)) for n in watch]

    scored = [x for x in out if x["score"] is not None]
    d1 = [x["change_1d"] for x in out if x["change_1d"] is not None]

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…