MCPcopy Create free account
hub / github.com/FinStep-AI/ContestTrade / update_display

Method update_display

cli/main.py:221–339  ·  view source on GitHub ↗

更新显示

(self, layout: Layout, trigger_time: str)

Source from the content-addressed store, hash-verified

219 return layout
220
221 def update_display(self, layout: Layout, trigger_time: str):
222 """更新显示"""
223 welcome_text = Path(__file__).parent / "static" / "welcome.txt"
224 if welcome_text.exists():
225 with open(welcome_text, "r", encoding="utf-8") as f:
226 welcome = f.read()
227 else:
228 welcome = get_text("ContestTrade: 基于内部竞赛机制的Multi-Agent交易系统", "ContestTrade: Multi-Agent Trading System Based on Internal Contest Mechanism")
229
230 header_panel = Panel(
231 Align.center(welcome),
232 title=get_text("🎯 ContestTrade - 基于内部竞赛机制的Multi-Agent交易系统", "🎯 ContestTrade - Multi-Agent Trading System Based on Internal Contest Mechanism"),
233 border_style="blue",
234 padding=(0, 1),
235 expand=True # 自适应宽度
236 )
237 layout["header"].update(header_panel)
238
239 # 更新Agent状态面板
240 status_text = Text()
241
242 # Data Analysis Agent状态
243 data_agents = {k: v for k, v in self.agent_status.items() if not k.startswith("agent_")}
244 if data_agents:
245 status_text.append(get_text("📊 Data Analysis Agent\n", "📊 Data Analysis Agent\n"), style="bold cyan")
246 for agent_name, status in data_agents.items():
247 status_icon = {
248 "pending": get_text("⏳等待中...", "⏳ Pending..."),
249 "running": get_text("🔄分析中...", "🔄 Analyzing..."),
250 "completed": get_text("✅分析完成", "✅ Analysis Complete")
251 }.get(status, "❓")
252
253 agent_display = agent_name[:20].ljust(20)
254 status_text.append(f"{agent_display} {status_icon}\n")
255
256 # Research Agent状态
257 research_agents = {k: v for k, v in self.agent_status.items() if k.startswith("agent_")}
258 if research_agents:
259 status_text.append(get_text("\n🔍 Research Agent\n", "\n🔍 Research Agent\n"), style="bold green")
260 for agent_name, status in research_agents.items():
261 status_icon = {
262 "pending": get_text("⏳等待中...", "⏳ Pending..."),
263 "running": get_text("🔄分析中...", "🔄 Analyzing..."),
264 "completed": get_text("✅分析完成", "✅ Analysis Complete")
265 }.get(status, "❓")
266
267 agent_display = agent_name[:20].ljust(20)
268 status_text.append(f"{agent_display} {status_icon}\n")
269
270 status_panel = Panel(
271 status_text,
272 title=get_text("🤖 Agent状态", "🤖 Agent Status"),
273 border_style="yellow",
274 padding=(0, 1),
275 expand=True # 自适应宽度
276 )
277 layout["status"].update(status_panel)
278

Callers 3

run_with_events_captureFunction · 0.80
periodic_status_checkFunction · 0.80

Calls 2

get_textFunction · 0.85

Tested by

no test coverage detected