Skip to content

Delk/xiaoliji

Repository files navigation

小理基

Next.js React TypeScript Supabase

AI 驱动的基金组合分析与模拟理财工具。

用更直观的方式筛基金、搭组合、看风险、做回测,让理财决策不再只是一堆难读的数字。


项目简介

小理基是一个面向基金投资者的智能理财辅助 Web 应用。它将基金市场浏览、组合模拟、风险体检、历史回测、AI 点评和个性化配置建议整合在一个产品里,帮助用户更清楚地理解自己的基金组合。

项目采用“理财餐厅”的产品表达:基金是食材,组合是菜品,风险体检像后厨质检,AI 点评像主厨食评。相比传统基金工具只展示冷冰冰的数据,小理基更关注“用户能不能看懂、能不能做出下一步判断”。

本项目仅用于学习、研究和产品演示,不构成任何投资建议。


核心功能

基金市场

  • 支持按基金名称、代码、拼音搜索基金。
  • 支持股票型、债券型、混合型、货币型等类型筛选。
  • 展示基金代码、名称、类型、规模、净值、近一年收益等信息。
  • 对规模过小或规模过大的基金给出风险提示。
  • 查看基金详情,包括历史净值、实时指标、风险等级和前十大重仓股。

我的组合

  • 支持模拟买入、卖出、删除持仓和清空组合。
  • 支持现金、持仓、市值、盈亏、初始本金等账户信息管理。
  • 支持刷新基金净值,更新组合市值。
  • 支持查看组合资产配比和持仓占比。
  • 支持将系统推荐组合应用到模拟盘。

组合体检

小理基会从多个维度对基金组合进行评分和诊断:

  • 底层关联度
  • 盈亏性价比
  • 全球对冲力
  • 极端抗压力
  • 风格纯净度
  • 费率磨损度

诊断结果会以雷达图、等级标签和文字点评的方式展示,帮助用户快速识别组合中可能存在的问题。

深度分析与回测

  • 支持将用户组合与沪深 300、纳斯达克 100、红利低波等指数进行收益曲线对比。
  • 支持自定义时间范围。
  • 支持定投模拟,展示累计投入、期末资产和收益变化。
  • 支持按当前持仓比例自动拆分每期定投资金。

AI 私房配餐

  • 通过问卷识别用户风险偏好。
  • 根据风险等级生成资产配置比例。
  • 从内置基金白名单中筛选候选基金。
  • 生成可直接应用到模拟盘的专属组合。
  • 用更容易理解的语言解释推荐理由。

AI 食评报告

  • 支持接入 DeepSeek Chat API。
  • 根据持仓结构和量化指标生成 Markdown 深度点评。
  • 使用“小理基主厨”的产品人设,将复杂投资指标转化为更直观的解释。
  • 未配置 API Key 时,会自动返回 Mock 点评,方便开发和演示。

账号与邀请制

  • 基于 Supabase Auth 实现登录、注册和密码找回。
  • 支持邀请码注册。
  • 支持订单核销生成邀请码。
  • 支持日卡、终身卡等访问权限逻辑。
  • 登录用户的资产、持仓、现金和定制方案可同步到 Supabase。

技术栈

  • 框架:Next.js 16、React 19、TypeScript
  • 样式:Tailwind CSS 4
  • 组件:Radix UI、shadcn/ui 风格组件
  • 图标:lucide-react
  • 图表:Recharts
  • 动效:Framer Motion
  • 表单与校验:react-hook-form、zod
  • 数据与认证:Supabase
  • AI 服务:DeepSeek Chat API

工作原理

  1. 基金数据获取
    基金列表通过东方财富基金公开数据接口获取,并在服务端进行短期内存缓存,减少重复请求。

  2. 基金指标生成
    基金收益、规模、风险等级、历史曲线和部分指标结合真实数据接口与确定性模拟逻辑生成,用于产品演示和交互体验。

  3. 组合状态管理
    前端通过 PortfolioProvider 管理用户现金、持仓、盈亏、初始本金和系统推荐状态。

  4. 用户数据同步
    登录用户的数据通过 Supabase 表进行持久化;未登录用户会被引导回登录页。

  5. AI 组合点评
    组合体检结果会被整理为 Prompt,并发送给 DeepSeek Chat API 生成结构化 Markdown 点评。


快速开始

1. 安装依赖

npm install

2. 配置环境变量

在项目根目录创建 .env.local

NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key

# 可选:用于生成 AI 食评报告
DEEPSEEK_API_KEY=your_deepseek_api_key
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1

如果没有配置 DeepSeek Key,AI 点评接口会返回内置 Mock 内容。
如果没有配置 Supabase,登录、注册、邀请码、资产同步等功能将无法正常使用。

3. 启动开发服务

npm run dev

启动后访问:

http://localhost:3000

可用脚本

npm run dev      # 启动本地开发服务
npm run build    # 构建生产版本
npm run start    # 启动生产服务
npm run lint     # 运行 ESLint

项目结构

.
├── public/
│   └── logo.png
├── src/
│   ├── app/
│   │   ├── api/
│   │   │   ├── customize/
│   │   │   ├── diagnose/
│   │   │   ├── funds/
│   │   │   ├── generate-chef-review/
│   │   │   └── indices/
│   │   ├── customizer/
│   │   ├── dashboard/
│   │   ├── portfolio/
│   │   ├── globals.css
│   │   ├── layout.tsx
│   │   └── page.tsx
│   ├── components/
│   │   ├── ui/
│   │   ├── deep-analysis.tsx
│   │   ├── export-report.tsx
│   │   ├── market-temperature.tsx
│   │   └── simulator-view.tsx
│   ├── hooks/
│   │   └── use-backtest.ts
│   └── lib/
│       ├── allocation-logic.ts
│       ├── fund-selection.ts
│       ├── fund-whitelist.ts
│       ├── portfolio-context.tsx
│       ├── quantitative-analysis.ts
│       ├── risk-engine.ts
│       ├── supabase.ts
│       └── types.ts
├── package.json
├── next.config.ts
├── tsconfig.json
└── README.md

主要页面

页面 路径 说明
登录 / 注册 / 账号登录、邀请制注册、订单核销、密码找回
基金市场 /dashboard 搜索基金、筛选基金、查看基金详情、模拟买入
我的组合 /portfolio 管理持仓、查看盈亏、组合体检、深度回测
AI 私房配餐 /customizer 风险问卷、生成配置方案、应用推荐组合

环境变量

变量名 必填 说明
NEXT_PUBLIC_SUPABASE_URL Supabase 项目 URL
NEXT_PUBLIC_SUPABASE_ANON_KEY Supabase 匿名访问 Key
DEEPSEEK_API_KEY DeepSeek API Key,用于生成 AI 食评
DEEPSEEK_BASE_URL DeepSeek API 地址,默认 https://api.deepseek.com/v1

数据来源说明

  • 基金列表来自东方财富基金公开数据接口。
  • 部分收益、规模、风险和历史指标为产品演示逻辑生成,不代表真实投资表现。
  • AI 点评基于用户组合数据、量化评分和 DeepSeek Chat API 生成。
  • 用户账号、邀请码、资产、持仓和自定义方案依赖 Supabase 表结构。

注意事项

  • 本项目不是投顾产品,不提供任何确定性收益承诺。
  • 页面中的基金推荐、风险评分、收益模拟和 AI 点评仅供学习与产品演示。
  • 实际投资请结合基金公告、持仓披露、费率、回撤、个人风险承受能力和合规信息来源。
  • 第三方数据接口可能受网络、频率限制或接口变更影响。
  • 如果 Supabase 表结构未配置完整,部分登录和资产同步功能可能无法工作。

部署

项目可以部署到 Vercel 或其他支持 Next.js 的平台。

部署前请确认:

  • 已配置 Supabase 环境变量。
  • 如需 AI 点评,已配置 DeepSeek API Key。
  • 服务端运行环境可以访问东方财富基金数据接口。
  • 生产环境中已正确配置 Supabase Auth 回调地址。

Roadmap

后续可以继续完善:

  • 更完整的 Supabase 建表脚本。
  • 更准确的基金历史数据与实时估值来源。
  • 更细粒度的行业、风格和相关性分析。
  • 用户自定义风险偏好和投资目标管理。
  • 组合调仓建议和再平衡提醒。
  • 报告导出为 PDF。
  • 更完善的移动端体验。

免责声明

小理基仅用于基金组合分析学习、产品原型展示和个人研究,不构成投资建议、收益承诺或任何形式的金融服务。

基金投资存在风险,历史收益不代表未来表现。使用本项目产生的任何分析结果、推荐方案或 AI 点评,都应由用户自行判断并承担相应风险。

About

AI 驱动的基金组合分析与模拟理财工具,支持基金筛选、组合体检、历史回测、风险问卷、AI 点评和个性化配置建议。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors