# 市场情绪分析模块使用说明 ## 概述 本系统已集成市场情绪数据分析功能,使用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股股票时,系统会自动: 1. 获取市场情绪数据(包括ARBR等指标) 2. 将数据传递给市场情绪分析师 3. 分析师基于实际数据进行专业分析 ### 方法2:单独使用市场情绪数据模块 ```python 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指标 ```python 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数据 ### 数据限制 1. **仅支持A股**:当前仅支持中国A股(6位数字代码) 2. **网络依赖**:需要稳定的网络连接访问akshare数据源 3. **频率限制**:某些数据源有访问频率限制,建议合理使用 ### 数据可靠性 - ARBR指标:基于历史K线数据计算,准确可靠 - 换手率、涨跌停:来自交易所实时数据 - 融资融券:T+1数据,具有一定滞后性 - 大盘情绪:基于实时市场统计 ## 注意事项 1. **数据获取失败处理** - 系统会自动处理数据获取失败的情况 - 如果无法获取某项数据,分析师仍会基于其他可用信息进行分析 2. **指标解读** - ARBR指标应结合其他技术指标综合判断 - 市场情绪具有一定的滞后性和反转性 - 极端情绪往往是反转信号 3. **风险提示** - 市场情绪指标仅供参考,不构成投资建议 - 投资有风险,决策需谨慎 ## 集成到分析流程 系统已自动将市场情绪数据集成到分析流程中: ``` 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等) - 🔲 历史情绪数据回测 - 🔲 情绪指标可视化图表 - 🔲 美股市场情绪数据支持