main
🚀 灵境万象股票分析系统 - 智能实时分析平台
AI驱动 | 实时WebSocket | 专业技术分析 | 策略驱动训练 | 缓存优化的高性能股票分析平台
🎯 核心功能特性
📊 专业技术分析引擎
- 30+技术指标: MA、MACD、RSI、KDJ、布林带、ATR、ADX等专业指标
- 智能信号生成: 多指标综合判断,生成买入/卖出/持有信号
- 价格形态识别: 十字星、锤子线、吞噬形态等K线模式识别
- 支撑阻力位: 自动计算并显示关键价位
- 强弱度评分: 0-100分综合强弱度量化评估
🤖 AI智能分析师
- 自然语言理解: 支持中文股票问答,智能解析用户意图
- 专业分析报告: 基于技术指标生成专业级分析报告
- 市场趋势分析: 行业对比、市场概览、投资建议
- 多股票对比: 同时分析对比多只股票优劣势
- 风险评估: 投资风险提示和建议
🔌 WebSocket实时推送系统
- 实时行情推送: WebSocket推送最新价格、涨跌幅、成交量
- 技术指标实时更新: MA、RSI、MACD等指标实时计算推送
- 实时图表渲染: ECharts实时更新K线走势和技术指标
- 智能缓存机制: 热门股票预加载,提升响应速度
- 连接状态监控: 自动重连,保证数据连续性
📈 实时交易信号监控
- 订阅式监控: 一键订阅/取消股票实时数据
- 多股票并发: 同时监控多只股票实时信号
- 图表信号标注: 在K线图上直观显示买卖点
- 强弱度实时显示: 动态更新股票强弱度指标
- 10秒更新频率: 超高频数据推送
💻 专业级前端界面
- 响应式设计: 支持PC/平板/手机多端适配
- 实时数据面板: 股价、涨跌幅、成交量实时更新
- 技术指标图表: ECharts专业K线图和技术指标展示
- AI问答界面: 智能对话式股票分析助手
- 订阅管理: 可视化股票订阅和监控管理
🗂️ 全维度数据管理系统 ⭐NEW⭐
- 基本面信息: 股票基本信息、行业分类、指数成分、股本结构、公司高管
- 财务类信息: 资产负债表、利润表、现金流量表、财务指标、业绩预告/快报
- 资金流向: 个股资金流、龙虎榜数据、主力资金监控
- 股东及股权: 十大股东、流通股东、股东户数、限售解禁
- 公告类信息: 分红送股、股票回购、重要公告
- 行情扩展: 停复牌、涨跌停、概念板块分类
- 宏观经济: 沪深港通、融资融券、CPI/PPI/GDP等宏观指标
🏛️ TuShare Pro 数据源管理系统 ⭐LATEST⭐
- 可视化管理界面: 专业的admin dashboard数据源管理界面
- 实时数据监控: 数据表记录数、数据大小、数据范围实时监控
- 手动同步功能: 一键手动同步任意数据表,支持全量/增量模式
- 智能状态显示: 表存在状态、最后更新时间、同步状态展示
- 多类别数据源: 基础数据、财务数据、资金流向、市场扩展等分类管理
- API接口支持: RESTful API支持程序化数据源管理操作
⏰ 智能调度系统 ⭐NEW⭐
- 定时任务: 基本信息周更新、财务季更新、资金流日更新
- 错误重试: 失败任务自动重试,指数退避策略
- 健康监控: 数据库连接、API状态、磁盘空间监控
- 手动执行: 支持单个任务手动触发和全量/增量模式
🏗️ 系统架构
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ WebSocket服务 │ │ 技术分析引擎 │ │ AI分析引擎 │
│ 实时数据推送 │◀──▶│ 30+指标计算 │◀──▶│ LLM智能分析 │
│ 订阅管理 │ │ 信号生成 │ │ 自然语言理解 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 数据库层 │ │ Flask API层 │ │ 前端展示层 │
│ ljwx_stock DB │◀──▶│ RESTful API │◀──▶│ 专业Web界面 │
│ MySQL + Redis │ │ CORS支持 │ │ 实时图表 │
└─────────────────┘ └─────────────────┘ └─────────────────┘
🚀 快速开始
📦 系统要求
- Python 3.8+
- MySQL 8.0+
- Redis 7.0+
- Ollama (AI服务)
- TuShare Pro 账户
1. 环境准备
# 1. 克隆仓库
git clone https://github.com/your-repo/tushare.git
cd tushare
# 2. 创建原生虚拟环境 (Apple M2优化)
python3 -m venv tushare_venv
source tushare_venv/bin/activate
# 3. 安装依赖
pip install -r requirements.txt
pip install -r requirements_ai.txt # AI功能
pip install -r requirements_ollama.txt # 本地LLM
2. 配置设置
# 1. 复制环境变量配置
cp env.example .env
# 2. 编辑配置文件
nano .env
# 必须配置项:
TS_TOKEN=your_tushare_pro_token
DB_PASSWORD=your_mysql_password
OLLAMA_MODEL=lingjingwanxiang:70b
3. 数据库初始化
# 1. 初始化数据库结构
python3 start_realtime_system.py init
# 2. 获取股票基本信息
python3 scripts/fetch_stock_basic.py
# 3. 获取5年历史数据 (后台运行)
python3 comprehensive_data_fetcher_5year.py &
4. 启动服务
⚡ 轻量级启动 (推荐)
# 一键启动轻量级系统
./start_lite_system.sh start
# 系统状态检查
./start_lite_system.sh status
# 访问地址:
# - 📊 Web界面: http://localhost:5005
# - 🛠️ 数据源管理: http://localhost:5005/admin/datasource
# - 📡 API接口: http://localhost:5005/api/health
# - 🔌 WebSocket测试: http://localhost:5005/api/websocket/test
# - 🤖 AI服务: ws://localhost:8765
🐳 Docker部署 (生产环境)
# Docker Compose启动
docker compose up -d
# 检查容器状态
docker compose ps
# 服务访问:
# - ljwx_stock_app: http://localhost:5000
# - ljwx_mysql: localhost:3306
# - ljwx_redis: localhost:6379
🔧 高级启动选项
# 完整实时系统
python3 start_realtime_system.py
# 策略训练系统
python3 start_continuous_learning_system.py
# 个别服务启动
python3 api/app.py # 仅API服务器
python3 api/websocket_server.py # 仅WebSocket服务器
🌟 新功能特性
实时股票监控界面
- 订阅管理: 输入股票代码一键订阅实时数据
- 实时价格面板: 显示股价、涨跌幅、成交量等核心指标
- 技术指标展示: MA5/MA20、RSI、MACD等关键指标实时更新
- 交易信号: 智能显示买入🟢/卖出🔴/持有🟡信号
- 行业板块: 显示股票所属行业和板块信息
WebSocket实时推送
- 10秒更新: 超高频实时数据推送
- 智能缓存: 30秒缓存机制,减少重复请求
- 断线重连: 自动检测连接状态并重连
- 批量订阅: 支持同时监控多只股票
AI智能问答系统
// 支持的问题类型:
"分析一下000001的走势"
"推荐几只好股票"
"银行股怎么样"
"000001和000002哪个更好"
"当前市场趋势如何"
技术指标图表
- ECharts集成: 专业级股票图表库
- 多指标展示: K线+均线+成交量+技术指标
- 实时更新: 图表数据10秒自动刷新
- 交互功能: 支持缩放、数据点查看
📋 使用指南
基础操作
- 启动系统:
python3 start_realtime_system.py - 访问界面: 浏览器打开
http://localhost:5005/frontend/realtime_dashboard.html - 订阅股票: 输入股票代码(如: 000001.SZ)点击订阅
- 查看数据: 实时监控面板显示股价和技术指标
- AI咨询: 在AI助手界面提问股票相关问题
高级功能
- 批量订阅: 输入多个股票代码(逗号分隔)
- 图表分析: 选择股票查看详细技术指标图表
- 信号监控: 关注买入/卖出信号变化
- 行业分析: 查看同行业股票对比
全维度数据获取 ⭐NEW⭐
# 初始化全维度数据库表结构
python3 run.py init-schema
# 获取所有维度数据(首次全量获取)
python3 run.py fetch-comprehensive --mode full
# 增量更新特定类别数据
python3 run.py fetch-comprehensive --category financial --mode incremental
python3 run.py fetch-comprehensive --category money_flow --mode incremental
# 可用数据类别:
# basic - 基本面信息 | financial - 财务数据 | money_flow - 资金流向
# shareholder - 股东数据 | announcement - 公告数据 | market_ext - 行情扩展
# macro - 宏观数据 | all - 全部数据
数据清洗和错误处理 ⭐NEW⭐
系统内置智能数据清洗机制,自动处理常见数据质量问题:
- 空值过滤: 自动过滤
ann_date等关键字段为空的记录 - 日期转换: 智能转换各种日期格式,处理异常日期
- 重试机制: API调用失败时自动重试,使用指数退避策略
- 备用接口: 行业分类等接口失败时自动切换备用接口
配置项在config.py中的DATA_CLEAN_RULES和ERROR_HANDLING中管理。
TuShare Pro 数据源管理 ⭐LATEST⭐
# 访问管理界面
# - 🛠️ 数据源管理: http://localhost:5005/admin/datasource
# - 📊 系统状态检查: http://localhost:5005/api/health
# API接口操作
# 获取数据源列表
curl http://localhost:5005/api/admin/datasource/tables/list
# 手动同步数据表
curl -X POST http://localhost:5005/api/admin/datasource/sync/manual \
-H "Content-Type: application/json" \
-d '{"table_key": "stock_basic", "category": "basic", "sync_mode": "full"}'
# 查看同步状态
curl http://localhost:5005/api/admin/datasource/sync/status
# 支持的数据表类别:
# basic - 基础数据 | financial - 财务数据 | money_flow - 资金流向
# market - 市场数据 | company - 公司数据 | calendar - 交易日历
智能调度管理 ⭐NEW⭐
# 启动定时调度器(后台运行)
python3 run.py scheduler --scheduler-cmd start
# 查看调度状态
python3 run.py scheduler --scheduler-cmd status
# 手动执行特定任务
python3 run.py scheduler --scheduler-cmd run --task money_flow --mode incremental
# 系统健康检查
python3 run.py health-check
# 可用任务:
# stock_basic - 基本信息 | financial_data - 财务数据 | money_flow - 资金流向
# shareholder_data - 股东数据 | announcement_data - 公告数据
# market_extension - 行情扩展 | macro_data - 宏观数据
🛠️ API接口文档
WebSocket消息格式
订阅股票
{
"type": "subscribe",
"stock_codes": ["000001.SZ", "000002.SZ"]
}
获取实时数据
{
"type": "get_realtime",
"ts_code": "000001.SZ"
}
AI查询
{
"type": "ai_query",
"query": "分析一下000001的走势",
"ts_code": "000001.SZ"
}
REST API接口
技术分析
GET /api/technical/indicators/000001.SZ?days=60
实时信号
POST /api/signals/realtime
Content-Type: application/json
{
"stock_codes": ["000001.SZ", "000002.SZ"]
}
AI分析
POST /api/llm/intelligent
Content-Type: application/json
{
"question": "分析一下银行股的投资机会"
}
📁 项目结构
tushare/
├── 🚀 start_realtime_system.py # 一键启动脚本
├── 📊 utils/ # 核心工具模块
│ ├── technical_indicators.py # 技术指标计算
│ ├── llm_analyzer.py # LLM智能分析
│ └── db_helper.py # 数据库操作
├── 🌐 api/ # API服务
│ ├── app.py # Flask REST API
│ └── websocket_server.py # WebSocket实时服务
├── 🎨 frontend/ # 前端界面
│ └── realtime_dashboard.html # 实时分析界面
├── 🔧 scripts/ # 数据脚本
│ ├── fetch_stock_basic.py # 获取基本信息
│ └── fetch_stock_daily.py # 获取历史数据
├── ⚙️ config.py # 统一配置
├── 📄 requirements.txt # 依赖包
└── 📖 README.md # 项目文档
📅 更新日志
2025-08-23 - TuShare Pro 数据源管理系统 ⭐LATEST⭐
- 🏛️ 数据源管理界面: 新增专业级admin dashboard数据源管理功能
- ✅ 可视化数据表状态监控 (记录数、数据大小、数据范围)
- ✅ 一键手动同步功能,支持全量/增量同步模式
- ✅ 多类别数据源分类管理 (基础、财务、资金流向等)
- ✅ 实时同步状态跟踪和错误处理
- 🔧 数据源管理API: 完善的RESTful API接口支持
GET /api/admin/datasource/tables/list- 获取所有数据表状态POST /api/admin/datasource/sync/manual- 手动同步指定数据表GET /api/admin/datasource/sync/status- 查看同步进度状态
- 📊 数据表修复优化:
- 修复stock_basic表数据范围显示问题 (正确显示1990-2025年范围)
- 修复stock_company上市公司基本信息表同步
- 修复trade_cal交易日历表同步 (支持6大交易所)
- 优化财务数据表同步逻辑 (利润表、资产负债表、现金流量表、财务指标)
- ⚡ 系统集成优化:
- 数据源管理API集成到主Flask应用
- 优化数据库helper类,新增fetch_one/fetch_all方法
- 完善SQL事务处理和错误处理机制
2025-08-23 - 系统状态检测与优化
- 🚀 系统运行状态: 所有核心服务已启动并正常运行
- ✅ API服务器运行中 (PID: 97735, 端口: 5005)
- ✅ WebSocket服务器运行中 (PID: 97988, 端口: 8765)
- ✅ Ollama AI服务可用 (1个模型)
- ✅ 股票数据已加载 (5只股票)
- 🐳 Docker容器优化:
- 轻量级启动脚本
./start_lite_system.sh替代复杂的Docker Compose - 已有MySQL/Redis容器复用,无需重复部署
- 系统健康检查和状态监控完善
- 轻量级启动脚本
- 📊 服务访问地址更新:
- Web界面: http://localhost:5005 (已验证可访问)
- API健康检查: http://localhost:5005/api/health
- WebSocket测试: http://localhost:5005/api/websocket/test
- 🔧 启动方式优化:
- 推荐使用
./start_lite_system.sh start一键启动 - 支持
status、health、logs等管理命令 - 自动检测服务状态,避免重复启动
- 推荐使用
2025-08-12 - 策略驱动训练与验证系统 ⭐NEW⭐
- 🎯 策略训练系统: 新增完整的策略驱动AI训练框架 (
strategy_training/)dataset_generator.py: 从投资策略生成高质量训练数据集unified_trainer.py: 统一模型训练,支持多策略融合recommendation_scheduler.py: 异步推荐生成调度系统
- ✅ 策略验证系统: 新增高级策略回测验证 (
strategy_validation/)advanced_validator.py: 专业级策略性能验证与报告生成- 支持夏普比率、最大回撤、年化收益等专业指标
- 🔌 新增API端点:
api/strategy_training_api.py: 策略训练管理API (端口5005)api/strategy_validation_api.py: 策略验证API (端口5006)
- 📊 增强推荐系统:
- 集成策略训练生成的推荐到实时系统
- WebSocket推送策略驱动的AI推荐
- 个性化推荐面板实时更新
- 🎨 前端界面优化:
templates/strategy_validation.html: 策略验证专业界面templates/user_dashboard.html: 优化推荐展示体验
- 📚 完善文档:
docs/strategy-validation-guide.md详细使用指南
主要技术特性:
# 策略训练API使用示例
curl -X POST http://localhost:5005/api/strategy-training/dataset/generate-all \
-H "Content-Type: application/json" \
-d '{"num_stocks": 30, "time_range": 180}'
# 策略验证API使用示例
curl -X POST http://localhost:5006/api/validate-strategy \
-H "Content-Type: application/json" \
-d '{"strategy_type": "rsi_mean_reversion", "symbol": "000001.SZ"}'
🔧 配置说明
数据库配置
DB_HOST = '127.0.0.1' # MySQL地址
DB_PORT = 3306 # MySQL端口
DB_USER = 'root' # 数据库用户
DB_PASSWORD = 'your_password' # 数据库密码
DB_NAME = 'ljwx_stock' # 数据库名(固定)
WebSocket配置
WS_HOST = '0.0.0.0' # WebSocket绑定地址
WS_PORT = 8765 # WebSocket端口
REALTIME_UPDATE_INTERVAL = 10 # 实时更新间隔(秒)
MAX_CONNECTIONS = 100 # 最大连接数
AI配置
OPENAI_API_KEY = 'sk-xxx' # OpenAI API密钥
OPENAI_BASE_URL = 'http://localhost:11434/v1' # 本地Ollama地址
LLM_MODEL = 'lingjingwanxiang:70b' # 使用的模型
Languages
Python
60.6%
HTML
28%
Shell
10.3%
JavaScript
0.5%
CSS
0.3%
Other
0.2%