一个简洁实用的个人股票投资组合管理工具,帮助您追踪持仓、管理分批解禁、分析收益、复盘交易。像乌龟一样稳健投资,通过复盘追踪投资足迹。
TurtleTrace(龟迹复盘)是一款面向个人投资者的股票组合管理工具,专注于持仓追踪、分批管理、收益分析和交易复盘。所有数据本地存储,无需注册登录,保护您的投资隐私。
- 支持通过代码/名称/拼音快速搜索添加股票
- 自动计算动态成本价(移动加权平均法)
- 交易情绪与原因标签,帮助复盘决策逻辑
- 完整的交易历史记录
- 支持同一股票分批持仓管理
- 适用于股权激励分批解禁场景
- 自动识别解禁状态(基于日期)
- FIFO(先进先出)卖出分配
- 独立追踪每批次的成本和解禁日期
- 支持创建多个证券账户
- 账户间数据独立隔离
- 快速切换查看不同账户
- 一键汇总全部账户收益
- 快速计算做T成本和盈亏平衡点
- 自定义佣金费率、印花税、过户费
- 历史记录本地保存
- 全局快捷入口,随时可用
- 接入东方财富 API,获取实时行情数据
- 直观展示总成本、总市值、盈亏比例
- 个股明细与清仓收益追踪
- 一键生成收益分享截图
- 每日复盘:大盘指数自动同步,自动提取当日交易
- 每周复盘:周度维度总结回顾
- AI 智能复盘:支持 AI 辅助分析和评价
- 模板化复盘板块:市场观察、持仓回顾、操作分析
- 支持 Markdown/PDF 导出
- 实时获取市场新闻快讯
- 自动筛选持仓相关股票资讯
- 简洁的卡片式阅读界面
- 所有数据存储在浏览器本地
- 支持 JSON 格式数据导入/导出
- 无需云端账户,完全掌控您的数据
- Node.js >= 18.0.0
- npm >= 9.0.0
# 克隆项目
git clone https://github.com/TurtleTrace2026/TurtleTrace.git
cd TurtleTrace
# 安装依赖
npm install
# 启动开发服务器
npm run dev
# 构建生产版本
npm run build
# 预览生产构建
npm run preview开发服务器默认运行在 http://localhost:5173
TurtleTrace/
├── src/
│ ├── components/
│ │ ├── ui/ # shadcn/ui 基础组件
│ │ └── dashboard/
│ │ ├── PositionManager.tsx # 持仓管理
│ │ ├── PositionBatch/ # 分批管理模块
│ │ ├── ProfitDashboard.tsx # 收益分析
│ │ ├── TCalculator/ # 做T计算器
│ │ ├── AccountManager.tsx # 账户管理
│ │ ├── AccountSwitcher.tsx # 账户切换
│ │ ├── NewsFeed.tsx # 新闻快讯
│ │ ├── DataExport.tsx # 数据管理
│ │ └── review/ # 复盘模块
│ ├── services/ # 服务层
│ │ ├── accountService.ts # 账户服务
│ │ ├── batchService.ts # 分批管理服务
│ │ ├── tCalculatorService.ts # 做T计算器服务
│ │ └── welcomeService.ts # 欢迎页服务
│ ├── types/ # TypeScript 类型定义
│ ├── utils/ # 工具函数
│ └── App.tsx # 主应用入口
├── scripts/ # 构建脚本
├── public/ # 静态资源
└── dist/ # 构建输出
| 依赖 | 版本 | 用途 |
|---|---|---|
| React | 19.2.0 | 前端框架 |
| TypeScript | 5.9.3 | 类型检查 |
| Vite | 7.2.4 | 构建工具 |
| Tailwind CSS | 3.4.19 | 样式框架 |
| Framer Motion | 12.x | 动画库 |
| Lucide React | latest | 图标库 |
| Recharts | 3.7.0 | 图表库 |
首次打开应用时,会显示欢迎向导:
- 欢迎页:了解产品定位
- 功能介绍:核心功能概览
- 初始配置:设置账户名称和可选费率
- 开始使用:进入主界面
- 在「持仓管理」点击添加按钮
- 输入股票代码/名称/拼音搜索
- 填写买入价格、数量
- 可选:添加交易情绪和原因标签
适用于股权激励等分批解禁场景:
- 展开持仓,点击「添加批次」
- 填写数量、成本价、解禁日期
- 系统自动识别锁定/解禁状态
- 卖出时自动按 FIFO 分配
- 点击顶部栏「做T」按钮
- 输入买入价、卖出价、数量
- 查看盈亏金额、收益率、手续费明细
- 可自定义费率设置
- 选择复盘日期
- 系统自动填充:大盘指数、持仓盈亏、当日交易
- 填写复盘内容
- 保存并导出分享
// 导出数据
exportData(); // 下载 JSON 备份文件
// 导入数据
importData(jsonFile); // 从备份文件恢复欢迎社区贡献!请遵循以下流程:
- Fork 本项目
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 提交 Pull Request
- 遵循 ESLint 配置的代码规范
- 使用 TypeScript 编写,确保类型安全
- 组件使用函数式组件 + Hooks
- 提交信息清晰描述改动内容
Q: 数据是否会上传到服务器?
A: 不会。所有数据存储在您的浏览器本地,完全保护您的隐私。
Q: 支持哪些市场?
A: 目前支持 A 股市场(沪市、深市、北交所)。
Q: 如何备份数据?
A: 在「设置」页面点击「导出数据」即可下载 JSON 备份文件。
Q: 股票数据多久更新一次?
A: 点击「刷新价格」按钮可手动获取最新行情,数据来自东方财富 API。
Q: 如何管理多个证券账户?
A: 在「账户管理」中添加多个账户,支持在不同账户间切换查看持仓和收益。
Q: 分批管理适合什么场景?
A: 适用于股权激励分批解禁、定投分批建仓等需要按批次追踪成本和解禁日期的场景。
本项目采用 Apache License 2.0 开源协议。
本项目仅供学习交流使用,所有数据仅供参考,不构成任何投资建议。股票投资有风险,入市需谨慎。
Made with ❤️ by TurtleTrace Team