Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Jamailar/VibeTrading

Repository files navigation

VibeTrading

VibeTrading Logo

create your trading strategies just by chatting

VibeTrading Screenshot

VibeTrading 是一个基于 Electron 的开源桌面应用,让人们通过与 AI 聊天的方式创建量化交易策略、并立即完成回测,支持美股、港股与比特币等市场。它不是给专业量化团队的黑箱,而是面向好奇者、学习者与独立开发者的开放实验室。值得一提的是,该项目源于 Miyoo AI Club 的一次活动,成员之间自发组织的一次开源实验,在"能不能把交易策略做成对话式体验"的讨论中自然诞生,并持续由社区共同完善。

VibeTrading is an open-source Electron desktop application that lets you build quantitative trading strategies simply by chatting with AI—then instantly backtest them across U.S. stocks, Hong Kong equities, and Bitcoin. It's not a closed, institutional quant system, but a playground for curious builders, traders, and learners. The project originated from an activity inside the Miyoo AI Club, where members spontaneously launched a collaborative open-source experiment to explore whether trading strategy creation could become conversational—and it has grown with the community ever since.

特性

  • 🤖 AI 策略生成 - 使用 LangChain + LangGraph 通过对话生成交易策略,支持流式输出
  • 💬 智能文件编辑 - AI 可以主动编辑策略文件,支持 diff 预览和 Accept/Reject 确认(类似 Cursor)
  • 🧠 思考过程可视化 - 实时显示 AI 的推理步骤和 LangGraph 节点执行状态
  • 🛠️ LangChain Tools 集成 - AI 可以调用工具(编辑文件、读取文件、验证 JSON)完成复杂任务
  • 📊 回测引擎 - 完整的回测系统,支持多种性能指标
  • 📈 市场数据 - 支持股票和加密货币数据获取
  • 💾 本地存储 - 使用 DuckDB 本地数据库,数据完全在本地
  • 🖥️ 桌面应用 - 基于 Electron,支持 macOS、Windows、Linux,无需服务器部署
  • 🔒 安全执行 - 策略代码在沙箱中安全执行

快速开始

前置要求

  • Node.js 20+
  • npmyarn

安装

# 克隆项目
git clone https://github.com/Jamailar/VibeTrading.git
cd VibeTrading
# 安装依赖
npm install

配置(可选)

创建 .env 文件配置 AI API Key:

# 管理员账号(用于登录)
ADMIN_USERNAME=admin
ADMIN_PASSWORD=admin123
# AI 服务配置
LLM_PROVIDER=openai
OPENAI_API_KEY=sk-your-openai-api-key-here
# 市场数据配置(可选)
POLYGON_API_KEY=your-polygon-api-key # 用于股票数据

运行

# 开发模式(同时启动 Vite 开发服务器和 Electron)
npm run dev
# 仅构建前端和主进程代码(不启动应用)
npm run build
# 打包为可分发应用
npm run dist # 所有平台
npm run dist:mac # macOS (.dmg)
npm run dist:win # Windows (.exe)
npm run dist:linux # Linux (AppImage)

打包后的应用文件位于 release/ 目录中。

项目结构

VibeTrading/
├── electron/ # Electron 主进程
│ ├── main/ # 主进程代码
│ └── preload/ # 预加载脚本
├── src/ # 渲染进程 (React)
│ ├── components/ # React 组件
│ └── pages/ # 页面
├── services/ # 后端服务代码
│ ├── ai-worker/ # AI 策略生成
│ ├── backtest-engine/ # 回测引擎
│ ├── market-data/ # 市场数据
│ └── market-research/ # 市场研究
└── docs/ # 项目文档

详细结构说明请参考 docs/PROJECT_STRUCTURE.md

核心功能

1. AI 策略生成

  • 通过自然语言对话描述策略想法
  • AI 使用 LangChain + LangGraph 生成策略代码
  • 流式输出:实时显示 AI 生成的内容
  • 思考过程可视化:查看 AI 的推理步骤和决策过程
  • 自动验证代码安全性

2. 智能文件编辑(类似 Cursor)

  • AI 可以主动编辑策略文件
  • Diff 预览:清晰显示代码变更
  • Accept/Reject:用户确认后才应用更改
  • 多种编辑模式:
    • suggestion:AI 生成建议,用户手动接受(默认)
    • direct:AI 直接修改(需要用户授权)
    • auto:AI 自动修改(高风险,仅限信任环境)
  • LangChain Tools:AI 可以调用工具完成文件操作

3. 策略管理

  • 保存策略到本地数据库
  • 查看和管理策略列表
  • 编辑和删除策略
  • 策略文件 JSON 格式编辑

4. 回测执行

  • 执行策略回测
  • 计算性能指标(CAGR、Sharpe、最大回撤等)
  • 可视化回测结果

5. 市场数据

  • 获取股票数据(需要 Polygon API Key)
  • 获取加密货币数据(免费)
  • 支持多种时间框架

6. 市场洞察

  • 市场情绪分析
  • 趋势识别
  • 策略推荐

技术栈

主进程

  • Electron 28+ - 桌面应用框架
  • Node.js 20+ - 运行时
  • TypeScript - 类型安全
  • DuckDB - 本地数据库

渲染进程

  • React 19 - UI 框架
  • Vite 5 - 构建工具
  • TypeScript - 类型安全
  • TailwindCSS - 样式框架

服务层

  • LangChain + LangGraph - AI 工作流
  • technicalindicators - 技术指标
  • ccxt - 加密货币数据
  • VM2 - 代码沙箱

数据存储

  • 数据库: DuckDB(本地文件数据库)
  • 存储位置:
    • macOS: ~/Library/Application Support/vibetrading/vibetrading.duckdb
    • Windows: %APPDATA%/vibetrading/vibetrading.duckdb
    • Linux: ~/.config/vibetrading/vibetrading.duckdb

文档

部署

VibeTrading 是一个桌面应用,所有功能都在本地运行,无需服务器部署。

开发模式

npm run dev

这会启动:

构建和打包

# 构建前端和主进程代码
npm run build
# 打包为可分发应用
npm run dist # 所有平台
npm run dist:mac # macOS (.dmg)
npm run dist:win # Windows (.exe)
npm run dist:linux # Linux (AppImage)

打包后的应用文件位于 release/ 目录中,可以直接分发给用户安装使用。

分发方式

  • macOS: 生成 .dmg 文件,用户双击安装
  • Windows: 生成 .exe 安装程序,用户运行安装
  • Linux: 生成 AppImage 文件,用户直接运行

注意:首次打包需要下载 Electron 二进制文件,可能需要一些时间。

常见问题

Q: 如何配置 AI API Key?

A: 在 .env 文件中设置 OPENAI_API_KEY 或其他 AI 服务的 API Key。也可以在应用设置中配置(存储在数据库中)。

Q: 数据库文件在哪里?

A: 数据库文件存储在用户数据目录中,具体路径见上面的"数据存储"部分。

Q: 支持哪些 AI 服务?

A: 支持 OpenAI、Anthropic Claude 和 Google Gemini。通过 LLM_PROVIDER 环境变量选择。

Q: 如何获取市场数据?

A:

  • 加密货币数据:免费,使用 CCXT 库
  • 股票数据:需要 Polygon.io API Key(可选)

Q: AI 文件编辑功能如何使用?

A:

  1. 在聊天界面中,AI 会自动检测是否需要编辑策略文件
  2. 编辑建议会显示在策略编辑器的侧边栏
  3. 点击 "Accept" 应用更改,或 "Reject" 拒绝
  4. 可以在聊天界面切换编辑模式(suggestion/direct/auto)

Q: 如何查看 AI 的思考过程?

A: 在 AI 回复时,会自动显示思考过程面板,展示:

  • 当前执行的 LangGraph 节点
  • 节点执行状态(processing/completed/failed)
  • 详细的执行信息

贡献

欢迎贡献!请查看 CONTRIBUTING.md 了解如何参与项目。

许可证

MIT License (Non-Commercial) - 详见 LICENSE 文件

致谢

感谢 Miyoo AI Club 的成员们,这个项目源于一次社区活动中的讨论和实验。


注意: 本项目已从 Docker 微服务架构迁移到 Electron 桌面应用。所有功能都在本地运行,无需服务器部署。数据完全存储在本地,保护用户隐私。

About

An AI project to create quant trading strategies by chatting.一个量化交易的AI工具,像使用Cursor一样让AI帮你创建交易策略

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /