6.3 KiB
6.3 KiB
市场情绪分析模块更新日志
版本:v1.0 - 市场情绪数据集成
更新日期: 2025年10月7日
🎯 主要更新内容
1. 新增市场情绪数据模块 (market_sentiment_data.py)
创建了专门的市场情绪数据获取和分析模块,支持以下功能:
ARBR情绪指标
-
AR指标(人气指标):反映市场买卖人气
- 计算公式:AR = (N日内(H-O)之和 / N日内(O-L)之和) × 100
- 默认计算周期:26日
- 提供超买超卖判断(>150超买,<70超卖)
- 历史统计数据分析
-
BR指标(意愿指标):反映市场买卖意愿强度
- 计算公式:BR = (N日内(H-CY)之和 / N日内(CY-L)之和) × 100
- 提供超买超卖判断(>300超买,<50超卖)
- 自动生成交易信号
其他市场情绪指标
- 换手率数据:反映股票交易活跃程度
- 大盘情绪指数:基于涨跌家数统计的市场情绪
- 涨跌停统计:反映市场极端情绪
- 融资融券数据:反映投资者看多看空情绪
- 市场恐慌贪婪指数:综合多个指标的情绪评分
2. 增强AI分析师功能 (ai_agents.py)
市场情绪分析师增强
- 现在接收实际的市场情绪数据作为输入
- 基于ARBR等真实指标进行专业分析
- 更新分析维度,包括:
- ARBR情绪指标深度解读
- 个股活跃度分析
- 整体市场情绪评估
- 资金情绪判断
- 情绪对股价影响分析
3. 主应用流程优化 (app.py)
分析流程更新
旧流程:
1. 数据获取 → 2. 技术分析 → 3. 基本面分析
→ 4. 资金分析 → 5. AI分析 → 6. 团队讨论 → 7. 最终决策
新流程:
1. 数据获取 → 2. 技术分析 → 3. 基本面分析
→ 4. 资金分析 → 5. 市场情绪数据获取(新增)
→ 6. AI分析 → 7. 团队讨论 → 8. 最终决策
UI提示优化
- 显示市场情绪数据获取状态
- 区分A股和美股的功能支持
- 提供详细的数据获取反馈
4. 新增使用文档
- 市场情绪分析使用说明.md:详细的功能说明和使用指南
- 本文档:更新日志和技术说明
📊 技术实现细节
数据获取
- 使用
akshare库获取实时市场数据 - 自动处理数据获取失败的情况
- 支持多数据源备用方案
编码处理
- 解决Windows终端GBK编码问题
- 支持emoji和中文显示
- 跨平台兼容性
错误处理
- 完善的异常捕获机制
- 数据获取失败时的优雅降级
- 详细的错误日志输出
🔧 API使用示例
基础使用
from market_sentiment_data import MarketSentimentDataFetcher
# 创建获取器
fetcher = MarketSentimentDataFetcher()
# 获取市场情绪数据
sentiment_data = fetcher.get_market_sentiment_data("000001")
# 检查是否成功
if sentiment_data.get("data_success"):
# 查看ARBR数据
arbr = sentiment_data["arbr_data"]
print(f"AR: {arbr['latest_ar']:.2f}")
print(f"BR: {arbr['latest_br']:.2f}")
print(f"信号: {arbr['signals']['overall_signal']}")
集成到分析流程
from ai_agents import StockAnalysisAgents
from market_sentiment_data import MarketSentimentDataFetcher
# 获取市场情绪数据
sentiment_fetcher = MarketSentimentDataFetcher()
sentiment_data = sentiment_fetcher.get_market_sentiment_data(symbol)
# 传递给AI分析师
agents = StockAnalysisAgents()
agents_results = agents.run_multi_agent_analysis(
stock_info,
stock_data,
indicators,
financial_data,
fund_flow_data,
sentiment_data # 新增参数
)
✅ 测试验证
测试结果
- ✅ ARBR指标计算正常
- ✅ 换手率数据获取成功
- ✅ 大盘情绪指数正常
- ✅ 涨跌停统计正常
- ⚠️ 融资融券部分API有限制(已提供备用方案)
- ✅ 市场恐慌贪婪指数计算正常
测试示例输出
【ARBR市场情绪指标】
- AR值:59.62(人气指标)
- BR值:49.28(意愿指标)
- 信号:强烈买入信号
- 解读:
* AR超卖(<70),市场情绪低迷,可关注反弹机会
* BR超卖(<50),投机情绪低迷,关注企稳信号
【换手率数据】
- 当前换手率:0.43%
- 解读:换手率很低(<2%),交易清淡
【涨跌停统计】
- 涨停股数量:52只
- 跌停股数量:1只
- 解读:涨停股远多于跌停股,市场情绪火热
🎨 UI改进
进度条更新
- 新增"市场情绪数据获取"步骤
- 更清晰的进度指示
状态提示
- ✅ 成功获取市场情绪数据提示
- ⚠️ 数据获取失败的友好提示
- ℹ️ 美股功能限制说明
帮助信息
- 更新侧边栏的AI分析流程说明
- 包含市场情绪数据步骤
📝 已知问题和限制
功能限制
- 仅支持A股:市场情绪数据(ARBR等)目前仅支持中国A股
- 数据延迟:部分数据(如融资融券)可能有T+1延迟
- API限制:某些akshare接口可能有频率限制
待优化项
- 融资融券API需要更好的fallback方案
- 可以添加更多情绪指标(如VIX)
- 历史情绪数据的可视化
🚀 未来计划
短期计划
- 优化融资融券数据获取
- 添加情绪指标可视化图表
- 支持自定义ARBR计算周期
长期计划
- 支持更多情绪指标(VIX、PCR等)
- 历史情绪数据回测功能
- 美股市场情绪数据支持
- 情绪指标的机器学习预测
📚 相关文档
市场情绪分析使用说明.md- 详细使用指南market_sentiment_data.py- 源代码和注释ai_agents.py- AI分析师实现app.py- 主应用程序
💡 使用建议
- ARBR指标:最好结合其他技术指标使用,不应单独作为买卖依据
- 市场情绪:极端情绪往往是反转信号,需要逆向思考
- 数据时效性:情绪数据具有时效性,建议及时分析
- 风险控制:市场情绪仅供参考,投资需谨慎
🔍 技术栈
- 数据源:akshare
- 数据处理:pandas, numpy
- AI分析:DeepSeek API
- UI框架:Streamlit
- 语言:Python 3.x
📧 反馈与支持
如有问题或建议,请:
- 查看使用文档
- 检查错误日志
- 提交issue或反馈
版本: v1.0
作者: AI股票分析系统团队
更新日期: 2025年10月7日