feat: add analysis-only crypto asset mode

This commit is contained in:
CadeYu committed 2026-04-18 20:42:11 +08:00
1 parent f362a160c3
commit e7ec980021
13 files changed
+141 -19

No files matched your search

@@ -10,7 +10,8 @@ def create_market_analyst(llm):
def market_analyst_node(state):
current_date = state["trade_date"]
ticker = state["company_of_interest"]
company_name = state["company_of_interest"]
asset_type = state.get("asset_type", "stock")
asset_label = "stock" if asset_type == "stock" else "crypto asset"
tools = [
get_stock_data,
@@ -57,7 +58,7 @@ Volume-Based Indicators:
" If you or any other assistant has the FINAL TRANSACTION PROPOSAL: **BUY/HOLD/SELL** or deliverable,"
" prefix your response with FINAL TRANSACTION PROPOSAL: **BUY/HOLD/SELL** so the team knows to stop."
" You have access to the following tools: {tool_names}.\n{system_message}"
"For your reference, the current date is {current_date}. The company we want to look at is {ticker}",
"For your reference, the current date is {current_date}. The {asset_label} we want to look at is {ticker}",
),
MessagesPlaceholder(variable_name="messages"),
]
@@ -67,6 +68,7 @@ Volume-Based Indicators:
prompt = prompt.partial(tool_names=", ".join([tool.name for tool in tools]))
prompt = prompt.partial(current_date=current_date)
prompt = prompt.partial(ticker=ticker)
prompt = prompt.partial(asset_label=asset_label)
chain = prompt | llm.bind_tools(tools)