Skip to content
 
 

Latest commit

 

History

52 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoFundBot

License: MIT Python Vue.js

说明:本项目 Fork 自 Sebastian6848/GoFundBot,在其基础上进行了二次开发和功能增强。感谢原作者的开源贡献。

GoFundBot 是一个基于 Python (Flask) 和 Vue 3 构建的智能基金分析与可视化工具。它不仅提供实时的基金数据查询和可视化图表,还集成了先进的 AI 大模型(LLM),为用户提供深度的基金投资分析、风险评估及市场研判报告。

✨ 本 Fork 新增功能

相较于原项目,本 Fork 新增了以下功能:

🤖 AI 分析增强

  • AI 持仓分析:支持对用户持仓组合进行 AI 智能诊断,评估持仓结构合理性与风险敞口
  • AI 建议策略优化:优化 LLM 提示词,引入多维度投资策略(如价值投资、定投策略、行业轮动等),分析结论更具参考价值

📊 净值显示优化

  • 净值优先策略:优先展示基金实际净值,实际净值不可用时才使用估算净值,数据更可靠
  • 涨跌幅区分显示:界面中明确区分"最新净值涨跌幅"和"估算净值涨跌幅",避免混淆
  • 实时净值更新机制:优化实时净值刷新逻辑,提升数据时效性

🗃 持仓管理增强

  • 持仓输入优化:改进持仓录入体验,支持更便捷的基金持仓信息管理
  • 持仓数据库重构:优化数据库表结构,支持更灵活的持仓数据存储与查询

🐳 部署方式

  • Docker 支持:新增 Docker 部署方案,一键容器化运行,降低环境配置门槛

🛠 工程优化

  • Git 仓库清理:移除误提交的 .pyc 缓存文件,完善 .gitignore 规则

🚀 原项目功能特性

🤖 AI 智能投顾

  • 深度基金分析:基于 LLM 生成专业的基金诊断报告,涵盖业绩归因、风险特征、经理风格及后市策略。
  • 智能仪表盘:通过 AI 对基金的业绩、管理能力、持仓及市场前景进行多维度打分。
  • 市场情绪摘要:每日自动生成市场行情摘要,捕捉关键市场动态与板块机会。

📊 全面数据可视化

  • 基金详情页
    • 基本信息:实时净值、估算涨幅、费率结构等。
    • 业绩走势:多周期业绩趋势图,支持同类对比。
    • 资产配置:股票/债券/现金占比分析。
    • 持仓透视:前十大重仓股及其占比变化。
    • 能力雷达:直观展示基金的盈利能力、抗风险能力等 5 维指标。
  • 市场概览
    • 全球行情:上证、深证、纳指、恒生等主要指数实时行情。
    • 贵金属追踪:黄金、白银等大宗商品的历史走势与实时数据。

🛠 便捷工具

  • 基金搜索:支持代码/名称快速搜索(本地缓存优化)。
  • 自选管理:一键添加/移除自选基金,随时跟踪关注标的。
  • 一键部署:提供 Windows 一键启动脚本,开箱即用。

📊 使用方法

(1)市场大盘页面

  • 市场指数实时走势:展示了上证指数、深证成指、沪深300指数的当日走势。
  • 全球行情板块:展示A股、港股、美股重要指数的走势。
  • 近7日A股成交量:展示近7个交易日A股的成交量情况。
  • 实时贵金属价格:展示黄金9999、现货黄金、现货白银的实时价格及走势。
  • 7×24 快讯(右侧边栏):展示实时重要新闻及其影响行业。
  • 行业板块排行(右侧边栏):展示当日强势板块和弱势板块、主力资金流动情况。

市场大盘.png

(2)基金详情页面

  • 搜索基金代码或名称,可以显示基金的详细信息,辅助挑选基金。
  • 左侧自选栏:可以将持有的基金添加自选,实时查询估值情况。
  • 业绩走势:包含本基金的历史走势、与同类基金和沪深300指数的收益对比、最大回撤及修复情况。
  • 同类排名走势:包含选定基金在同类基金中的收益排名情况。
  • 资产配置、持有人结构、基金规模变动、申购赎回情况:反应基金持仓的变化与热门度。
  • 基金经理能力评估:调用东方财富API,绘制经理能力雷达图。
  • 同类基金涨幅榜:辅助挑选同类型优质基金。

基金详情.png

  • 使用LLM辅助分析基金情况(结论仅供参考)

LLM

(3)基金筛选

Note

本功能使用需要下载全部基金数据到本地,数据库大小约8G。受限于API接口,下载速度极慢(大概需要6小时),若不使用本功能不建议下载。

  • 提供了4433法则、夏普比率、低波动策略等快速筛选策略,点击即可使用。
  • 提供了自定义筛选条件的选择,可以根据基金类型、收益率、回撤等选项筛选基金。

基金筛选.png

(4)基金对比

Note

最多支持5只基金同时对比,对比前需要先添加基金到自选页。

  • 多维度对比基金的收益率、规模、回撤、经理能力等指标,辅助挑选基金。
  • 对比最好在同类型基金中展开,跨板块对比意义不大。

基金对比.png

(5)定投回测

  • 目前只支持单基回测,后续会加入组合回测。

定投回测.png

  • 回测结果:

回测结果.png

(6)实时估值(新)

  • 可以对持有的基金进行实时估值并计算当日盈亏

实时估值

🛠 技术栈

后端 (Backend)

  • 语言: Python 3
  • 框架: Flask
  • AI/LLM: LangChain, OpenAI SDK (适配 SiliconFlow/DeepSeek 等模型)
  • 数据存储: SQLAlchemy (SQLite)
  • 网络请求: Requests, Curl_cffi (处理复杂反爬)

前端 (Frontend)

  • 框架: Vue 3 (Composition API)
  • 构建工具: Vite
  • UI 组件: 自定义响应式组件 (FundDetail, MarketOverview 等)
  • 可视化: ECharts
  • Markdown: 支持 AI 报告的 Markdown 渲染

📋 环境准备

在运行项目之前,请确保您的本地环境已安装以下软件:

  • Node.js (推荐 LTS 版本) 和 npm
  • Python 3.8+Anaconda/Miniconda

⚡ 快速开始

1. 配置环境变量 (重要)

Backend 目录下创建一个 .env 文件(可复制 .env.example),并配置您的 LLM API 密钥:

LLM_API_KEY=your_api_key_here
LLM_API_BASE=https://api.siliconflow.cn/v1
LLM_MODEL=Qwen/Qwen2.5-7B-Instruct

2. 启动方式

方式一:一键启动 (Windows)

确保已安装 Conda 且存在名为 fundbot 的虚拟环境(或修改脚本适配)。 双击运行根目录下的:

一键启动.bat

方式二:手动安装与启动

创建环境(Conda)

conda create -n fundbot python=3.9
conda init  #这步完成以后重启终端
conda activate fundbot

后端服务 (Backend)

cd Backend
pip install -r requirements.txt
python app.py

前端界面 (Frontend)

cd Frontend
npm install
npm run dev

启动成功后,访问终端显示的本地地址(通常为 http://localhost:5173)。

📂 项目结构

MyBot/
├── Backend/                 # 后端源码
│   ├── ai_service.py        # AI 分析核心服务
│   ├── fund_api.py          # 基金数据接口
│   ├── app.py               # 应用入口
│   └── ...
├── Frontend/                # 前端源码
│   ├── src/
│   │   ├── components/      # Vue 组件
│   │   │   ├── FundAIAnalysis.vue   # AI 分析组件
│   │   │   ├── FundBasicInfo.vue    # 基础信息组件
│   │   │   ├── MarketOverview.vue   # 市场概览
│   │   │   └── ...
│   │   └── ...
└── ...

📝 免责声明

本项目所有数据均来自公开接口,仅供个人学习及参考使用。数据可能存在延迟,不作为任何投资建议。

About

一个专注于中国基金市场的基金分析工具,能够提供实时估值、定投回测、基金筛选、基金对比等功能,并能结合大语言模型技术对市场行情进行分析。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages