7.1 KiB
7.1 KiB
市场情绪分析模块使用说明
概述
本系统已集成市场情绪数据分析功能,使用akshare获取包括ARBR在内的多项市场情绪指标,为市场情绪分析师提供实际数据支撑。
主要功能
1. ARBR指标(情绪人气指标)
AR指标(人气指标)
- 计算公式:AR = (N日内(H-O)之和 / N日内(O-L)之和) × 100
- 含义:反映市场买卖人气
- 标准:
- AR > 180:极度超买,市场过热
- AR > 150:超买,市场情绪过热
- 70 < AR < 150:正常区间
- AR < 70:超卖,市场情绪低迷
- AR < 40:极度超卖,市场过冷
BR指标(意愿指标)
- 计算公式:BR = (N日内(H-CY)之和 / N日内(CY-L)之和) × 100
- 含义:反映市场买卖意愿强度
- 标准:
- BR > 400:极度超买,投机情绪过热
- BR > 300:超买,投机情绪旺盛
- 50 < BR < 300:正常区间
- BR < 50:超卖,投机情绪低迷
- BR < 30:极度超卖,投机情绪冰点
2. 换手率数据
- 反映股票交易活跃程度
- 标准:
-
20%:极高,资金活跃度极高
-
10%:较高,交易活跃
- 5%-10%:正常,交易适中
- 2%-5%:偏低,交易清淡
- <2%:很低,交易清淡
-
3. 大盘情绪指数
- 上证指数涨跌情况
- 市场涨跌家数统计
- 市场情绪得分(基于涨跌家数比例)
4. 涨跌停统计
- 涨停股数量
- 跌停股数量
- 涨跌停比例
- 反映市场热度和情绪极端程度
5. 融资融券数据
- 融资余额:反映看多资金
- 融券余额:反映看空资金
- 融资买入额:反映当日看多力度
6. 市场恐慌贪婪指数
- 综合多个指标计算
- 0-100分制
- 等级划分:
- 75-100:极度贪婪
- 60-75:贪婪
- 40-60:中性
- 25-40:恐慌
- 0-25:极度恐慌
使用方法
方法1:在主应用中自动调用
当你在主应用(app.py)中分析A股股票时,系统会自动:
- 获取市场情绪数据(包括ARBR等指标)
- 将数据传递给市场情绪分析师
- 分析师基于实际数据进行专业分析
方法2:单独使用市场情绪数据模块
from market_sentiment_data import MarketSentimentDataFetcher
# 创建市场情绪数据获取器
fetcher = MarketSentimentDataFetcher()
# 获取某只股票的市场情绪数据
symbol = "000001" # 平安银行
sentiment_data = fetcher.get_market_sentiment_data(symbol)
# 检查是否成功获取数据
if sentiment_data.get("data_success"):
print("✅ 数据获取成功")
# 查看ARBR数据
if sentiment_data.get("arbr_data"):
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']}")
print("解读:")
for interpretation in arbr['interpretation']:
print(f" - {interpretation}")
# 格式化输出(适合AI阅读)
formatted_text = fetcher.format_sentiment_data_for_ai(sentiment_data)
print(formatted_text)
else:
print("❌ 数据获取失败")
方法3:计算单独的ARBR指标
from market_sentiment_data import MarketSentimentDataFetcher
import akshare as ak
from datetime import datetime, timedelta
# 创建获取器
fetcher = MarketSentimentDataFetcher()
# 获取股票历史数据
symbol = "000001"
end_date = datetime.now().strftime('%Y%m%d')
start_date = (datetime.now() - timedelta(days=120)).strftime('%Y%m%d')
stock_data = ak.stock_zh_a_hist(
symbol=symbol,
period="daily",
start_date=start_date,
end_date=end_date,
adjust="qfq"
)
# 计算ARBR
arbr_data = fetcher._calculate_arbr(symbol, stock_data)
if arbr_data:
print(f"最新AR: {arbr_data['latest_ar']:.2f}")
print(f"最新BR: {arbr_data['latest_br']:.2f}")
print(f"整体信号: {arbr_data['signals']['overall_signal']}")
数据说明
数据来源
- akshare:提供A股实时行情、历史数据、市场统计等
- 实时性:大部分数据为实时或T+1数据
数据限制
- 仅支持A股:当前仅支持中国A股(6位数字代码)
- 网络依赖:需要稳定的网络连接访问akshare数据源
- 频率限制:某些数据源有访问频率限制,建议合理使用
数据可靠性
- ARBR指标:基于历史K线数据计算,准确可靠
- 换手率、涨跌停:来自交易所实时数据
- 融资融券:T+1数据,具有一定滞后性
- 大盘情绪:基于实时市场统计
注意事项
-
数据获取失败处理
- 系统会自动处理数据获取失败的情况
- 如果无法获取某项数据,分析师仍会基于其他可用信息进行分析
-
指标解读
- ARBR指标应结合其他技术指标综合判断
- 市场情绪具有一定的滞后性和反转性
- 极端情绪往往是反转信号
-
风险提示
- 市场情绪指标仅供参考,不构成投资建议
- 投资有风险,决策需谨慎
集成到分析流程
系统已自动将市场情绪数据集成到分析流程中:
1. 数据获取(股票基本信息、历史数据)
2. 技术面分析(技术指标、趋势)
3. 基本面分析(财务数据、估值)
4. 资金面分析(资金流向、主力行为)
5. 市场情绪数据获取(⭐ ARBR、换手率、涨跌停等)
6. 风险管理分析(风险识别、控制)
7. 市场情绪分析(⭐ 基于实际情绪数据的深度分析)
8. 团队讨论(综合各方观点)
9. 最终决策(投资建议)
输出示例
【ARBR市场情绪指标】
- 计算周期:26日
- AR值:98.45(人气指标)
- BR值:105.23(意愿指标)
- 信号:中性信号
- 解读:
* AR处于正常区间(98.45),市场情绪相对平稳
* BR处于正常区间(105.23),投机情绪适中
* 多头力量强劲(AR>100且BR>100),但需警惕过热风险
* 意愿指标强于人气指标(BR>AR),投机性较强,需注意资金稳定性
ARBR统计数据:
- AR历史均值:95.67
- BR历史均值:102.34
- 历史买入信号比例:15.2%
- 历史卖出信号比例:12.8%
【换手率数据】
- 当前换手率:3.45%
- 解读:换手率正常(5%-10%),交易适中
【大盘市场情绪】
- 指数:上证指数
- 涨跌幅:0.85%
- 市场情绪得分:15.32
- 涨家数:2856只
- 跌家数:1987只
- 平家数:234只
- 市场情绪:市场情绪偏多
技术支持
如有问题或建议,请查看:
market_sentiment_data.py:市场情绪数据模块源码ai_agents.py:AI分析师实现(包括市场情绪分析师)app.py:主应用程序
更新日志
v1.0 (当前版本)
- ✅ ARBR指标计算和解读
- ✅ 换手率数据获取
- ✅ 大盘情绪指数
- ✅ 涨跌停统计
- ✅ 融资融券数据
- ✅ 市场恐慌贪婪指数
- ✅ 集成到市场情绪分析师
- ✅ 自动格式化为AI可读文本
未来计划
- 🔲 支持更多情绪指标(VIX等)
- 🔲 历史情绪数据回测
- 🔲 情绪指标可视化图表
- 🔲 美股市场情绪数据支持