【免费下载链接】ContestTrade
A Multi-Agent Trading System Based on Internal Contest Mechanism
ContestTrade 是一个基于内部竞赛机制的多智能体(Multi-Agent)交易系统,本文带你用 CLI 命令行从选择市场、触发分析到查看投资信号报告,完整走一遍交互式全流程,新手也能快速上手出报告。
一、ContestTrade 能帮你做什么?
简单说,ContestTrade 就是给你配备一支AI 交易团队:你只需设定一个分析时刻,系统就会自动扫描全市场,从新闻、行情、资金流等数据中挖掘事件驱动型投资机会,最后输出一份包含交易信号的研究报告。
整个系统分为两大团队、四步流水线:
- 数据团队(Data Analysis Agents):并行处理多源数据,提炼成结构化"文本因子",并通过内部竞赛(Contest)选出最优因子组合;
- 研究团队(Research Agents):每位"研究员"持有一条交易信念,基于因子用 ReAct 方式调用工具深度研究,各自提交交易提案,再经第二轮竞赛评选出最终信号。
二、一键安装:三步完成部署
# 1. 克隆项目仓库 git clone https://gitcode.com/gh_mirrors/co/ContestTrade.git cd ContestTrade # 2. 创建并激活虚拟环境(推荐 Python 3.10+) conda create -n contesttrade python=3.10 conda activate contesttrade # 3. 安装依赖 pip install -r requirements.txt装好依赖后,编辑 config.yaml,重点只有一件事:填入 LLM 配置(llm段的provider、base_url、api_key、model_name),支持 OpenAI 兼容接口、Gemini、本地 Ollama 等。数据接口默认使用 AKShare,无需密钥即可运行;若配置了tushare_key,系统会自动改用 Tushare 数据源并做连接校验。
💡 选股偏好(每位 Research Agent 的"交易信念")在 contest_trade/config/belief_list.json 中配置,每条信念最多输出 5 个信号,改成你自己的投资风格即可。
三、一条命令启动:CLI 交互式全流程
python -m cli.main run这条命令进入终端交互式界面后,全流程只有四个动作:选市场 → 定时间 → 跑分析 → 看报告。
第 1 步:选择分析市场(A股 / 美股)
启动后用方向键在CN-Stock (A股市场)和US-Stock (美股市场)之间选择。系统会根据市场自动加载对应配置:A股用 config.yaml,美股用 config_us.yaml,界面语言也会自动切换(美股为英文界面)。
第 2 步:确定触发时间并通过系统校验
- A股:选择"A股当前时间"作为触发时间;
- 美股:自动使用美东时区当前时间。
随后系统自动执行必要服务校验(见 cli/utils.py 中的validate_required_services):检查 Tushare/akshare 数据源可用性,并向 LLM 发送一条测试消息验证连通性。看到"所有必要系统配置验证通过,系统准备就绪!"即可开始:
第 3 步:进入实时运行面板,观看 AI 团队"开工"
验证通过后进入 Rich 实时面板,四块区域一目了然:
| 面板 | 内容 |
|---|---|
| 🤖 Agent 状态 | 各 Data / Research Agent 的等待中、分析中、完成状态 |
| 📊 进度信息 | 触发时间、当前任务(数据收集 1/4 → 研究分析 2/4 → 竞赛评选 3/4 → 结果生成 4/4) |
| 📄 事件流 | 实时滚动的事件日志,如"hot_money_agent 完成数据分析" |
| 🏆 结果摘要 | 完成后展示数据源数、研究信号数与有效信号清单 |
两个团队的工作方式如下——数据 Agent 从多源数据做"泛读 + 精读"生成因子:
Research Agent 则制定研究计划,通过"观察—思考—工具调用"循环做出投资决策:
全部 Agent 跑完并生成 MD 报告后,结果摘要区会直接列出有效信号(如"Research Agent0:工商银行(buy)"),按回车即可退出运行面板。A股运行完成界面如下:
第 4 步:查看研究报告与数据报告
退出运行面板后,终端会提示你选择下一步操作(逻辑见 cli/main.py 中的ask_user_for_next_action):
输入 'rr' 查看研究报告 | 'dr' 查看数据报告 | 'n' 运行新分析 | 'q' 退出rr:交互式翻阅详细研究报告,含执行摘要、每个推荐信号的投资动作、支撑证据(来源 + 时间)与潜在风险提示;dr:查看数据分析报告,逐条展示各数据源(新闻、行情、资金面等)的分析详情;n:重新选市场发起新一轮分析,支持 A股 / 美股连续切换。
美股(US-Stock)分析完成后的英文运行面板示例:
📁 所有报告都会以 Markdown 格式自动保存在
contest_trade/agents_workspace/results目录下(数据报告在results/data_reports子目录),运行日志在contest_trade/agents_workspace/logs,方便事后复盘和分享。报告模板生成逻辑可参考 cli/static/report_template.py。
四、常用文件速查表
| 文件/目录 | 作用 |
|---|---|
| cli/main.py | CLI 入口:市场选择、实时面板、报告交互(rr/dr/n/q) |
| config.yaml / config_us.yaml | A股 / 美股配置:LLM 密钥、数据源与研究工具列表 |
| contest_trade/config/belief_list.json | 交易信念清单,决定 Research Agent 的选股风格 |
| contest_trade/agents/results/ | 研究报告与数据报告输出目录(Markdown) |
| contest_trade/agents/logs/ | 每次运行的事件日志 |
| contest_trade/main.py | 核心工作流 SimpleTradeCompany:数据→研究→竞赛→定稿 |
五、新手常见问题(FAQ)
Q1:启动后提示"系统验证失败"?一般是config.yaml中llm.api_key未填或不可用,先确认provider/base_url/model_name三要素;未配置 Tushare 时还需确保pip install akshare成功。
Q2:一次分析要等多久?底部状态栏提示"预计等待 10 分钟"左右,具体取决于 Agent 数量与 LLM 响应速度,事件流面板可随时观察进度。
Q3:如何只分析美股 / 跳过交互选择?可直接带参数启动:python -m cli.main run --market US-Stock(或CN-Stock),省去市场选择步骤。
Q4:报告在哪里、是什么格式?运行结束即自动生成,位于contest_trade/agents_workspace/results目录,均为 Markdown 文件,用任意编辑器即可打开。
六、写在最后
从python -m cli.main run一条命令,到选市场、定时间、看面板、取报告,ContestTrade 的 CLI 把"多智能体选股"这件复杂的事压缩成了 4 个交互动作。建议第一次使用时保持默认信念配置跑一轮 A 股,熟悉信号结构后再到 contest_trade/config/belief_list.json 里写你自己的交易信念——这也是它最有趣的地方:你的投资风格,直接决定 AI 团队的选股结果。
官方回测中,ContestTrade 的净值曲线在多个策略对比中表现突出,可以作为了解其设计思路的参考:
⚠️风险声明:ContestTrade 为开源研究项目,输出信号基于历史数据的 AI 模型推演,不构成任何投资建议。数据可能存在延迟或缺失,AI 模型存在幻觉风险,投资有风险,入市需谨慎。
【免费下载链接】ContestTrade
A Multi-Agent Trading System Based on Internal Contest Mechanism
相关推荐
VizTracer报告分析完全指南:从JSON到交互式可视化
VizTracer报告分析完全指南:从JSON到交互式可视化 VizTracer是一个强大的Python代码执行跟踪和可视化工具,能够以极低的性能开销记录和分析
开发工具可观测性CANN/asc-devkit Arange等差数列生成示例
Arange Example Overview This example uses the Arange high level API to implement
人工智能深度学习高性能计算CANN告别繁琐报表!Automa数据可视化全流程指南:从数据采集到交互式看板
告别繁琐报表!Automa数据可视化全流程指南:从数据采集到交互式看板 你是否还在为手动整理网页数据、制作静态报表而烦恼?作为一款强大的浏览器自动化工具,Aut
工作流自动化RPA
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考