feat: market regime, self-learning journal, AI investment committee
- regime.py: computed SPY/VIX/sector-momentum snapshot injected into every kickoff - journal.py: each agent sees its own past picks marked-to-market (learns from wins/losses) - committee.py: Chief-Risk-Officer LLM pass over the whole book — approve/reduce/veto per pick with reasons; memo lands in reports; executor enforces verdicts at open Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016DvdRZkyCy9NJpHYDdPqmS
This commit is contained in:
1 parent
6b1c461a80
commit
4beee3dc82
6 files changed
+323
-2
No files matched your search
+5
-1
@@ -237,6 +237,7 @@ def run_agent(
|
||||
step_budget: int,
|
||||
min_steps: int = 0,
|
||||
min_seconds: float = 0.0,
|
||||
context_blurb: str = "",
|
||||
checkpointer=None,
|
||||
model_name: str = "",
|
||||
) -> AgentOutput:
|
||||
@@ -252,9 +253,12 @@ def run_agent(
|
||||
compact_budget = get_settings().compaction_token_budget
|
||||
|
||||
date_str = datetime.now().astimezone().strftime("%A %Y-%m-%d")
|
||||
kickoff = RESEARCH_KICKOFF.format(date=date_str, n=persona.target_pick_count)
|
||||
if context_blurb: # market regime + the agent's own track record (self-learning)
|
||||
kickoff = f"{context_blurb}\n\n{kickoff}"
|
||||
messages: list = [
|
||||
SystemMessage(content=persona.system_prompt),
|
||||
HumanMessage(content=RESEARCH_KICKOFF.format(date=date_str, n=persona.target_pick_count)),
|
||||
HumanMessage(content=kickoff),
|
||||
]
|
||||
running_summary = ""
|
||||
reasoning_trace: list[str] = []
|
||||
|
||||
Reference in new issue
Block a user