destinym/destiny_stock

destiny_stock

★ 0Forks 0JavaScriptGitHub ↗Compare

README

股票主力吸筹分析系统

一个用于抓取股票K线数据、分析主力吸筹指标,并支持数据可视化展示的系统。

技术栈

服务端

  • 框架: FastAPI
  • 异步支持: uvloop
  • 包管理: uv
  • 数据库: SQLite
  • 数据抓取: 模拟数据(可扩展为真实API)
  • 技术分析: TA-Lib

客户端

  • 框架: React
  • 图表库: ECharts
  • HTTP客户端: Axios
  • 样式: 原生CSS

项目结构

destinty_stock/
├── server/              # 服务端代码
│   ├── src/
│   │   ├── api/         # API接口实现
│   │   ├── crawler/     # 数据抓取模块
│   │   ├── analyzer/    # 分析算法模块
│   │   └── models/      # 数据库模型
│   ├── data/            # 数据库文件
│   ├── main.py          # 服务端入口
│   ├── pyproject.toml   # 项目配置
│   └── requirements.txt # 依赖列表
├── client/              # 客户端代码
│   ├── src/
│   │   ├── components/  # React组件
│   │   ├── services/    # API服务
│   │   ├── App.jsx      # 应用入口
│   │   └── main.jsx     # React渲染入口
│   └── package.json     # 客户端依赖
└── README.md            # 项目说明

功能特性

  1. 股票数据抓取: 支持单只股票和批量股票的数据抓取
  2. 主力吸筹分析: 基于量比、RSI、MACD等指标的综合分析
  3. K线图可视化: 使用ECharts绘制K线图
  4. 实时分析结果: 显示吸筹强度和各项技术指标
  5. 响应式设计: 适配不同屏幕尺寸

安装和启动

服务端

  1. 进入服务端目录

    cd server
  2. 使用uv安装依赖

    uv install
  3. 启动服务端

    python main.py

    服务将在 http://localhost:8000 启动

客户端

  1. 进入客户端目录

    cd client
  2. 安装依赖

    npm install
  3. 启动客户端开发服务器

    npm run dev

    客户端将在 http://localhost:5173 启动

API接口说明

股票数据接口

  • GET /stocks/list - 获取股票列表
  • GET /stocks/kline/{symbol} - 获取单只股票K线数据
  • POST /stocks/crawl/{symbol} - 抓取单只股票数据
  • POST /stocks/crawl/all - 抓取所有股票数据

分析接口

  • GET /stocks/analysis/{symbol} - 获取单只股票分析结果
  • GET /stocks/analysis/all - 获取所有股票分析结果
  • GET /stocks/analysis/accumulating - 获取正在吸筹的股票

主力吸筹分析算法

分析算法基于以下几个维度:

  1. 成交量变化: 成交量放大但价格波动不大(价平量增)
  2. RSI指标: RSI处于40-60之间的合理区间
  3. MACD指标: MACD出现金叉或在0轴附近
  4. 量比: 量比持续放大(大于1.5)
  5. 价格趋势: 价格呈现缓慢上升趋势

综合以上指标,计算吸筹强度,大于0.6则判定为正在主力吸筹。

使用说明

  1. 启动服务端和客户端
  2. 在客户端选择一只股票
  3. 查看K线图和主力吸筹分析结果
  4. 根据分析结果判断股票是否处于主力吸筹阶段

注意事项

  1. 当前系统使用模拟数据,实际使用时需要替换为真实的股票数据API
  2. 分析算法仅供参考,不构成投资建议
  3. 系统采用异步设计,支持高并发访问

扩展建议

  1. 添加更多技术指标分析
  2. 实现数据持久化和历史数据查询
  3. 添加用户认证和权限管理
  4. 支持更多时间周期的K线图
  5. 实现邮件或短信提醒功能
  6. 优化分析算法,提高准确率

Contributors

destinym

Issues