# 资金流向功能说明 v2.0 ## 🎯 设计理念(重大改进) ### v2.0 的核心改变 **从"手动提取"到"AI智能分析"** - ❌ **旧方法**:代码硬编码提取特定字段(区间资金流向、主力资金流向等) - ✅ **新方法**:将问财返回的**所有原始数据**直接喂给AI,让AI自己识别、提取和分析 ### 为什么这样更好? 1. **更简单**:不需要手动匹配列名,代码更简洁 2. **更灵活**:问财字段变化时不需要修改代码 3. **更智能**:AI可以发现我们没想到的数据关联 4. **更全面**:不会遗漏任何有价值的数据 5. **更强大**:AI能理解数据的深层含义和相互关系 ## 📊 工作流程 ``` 问财查询 → 获取所有原始数据 → 格式化为易读文本 → 喂给AI分析师 → 生成专业报告 ``` ### 详细流程 1. **查询问财** - 问句:`{股票代码}近20个交易日区间资金流向、区间主力资金流向、区间涨跌幅` - 返回:DataFrame 或 字典 2. **数据处理**(`stock_data.py`) - 统一转换为 DataFrame - 提取所有字段和数值 - 大数字自动转换为亿元显示 - 保存为易读的字典格式 3. **数据传递**(`ai_agents.py`) - 将原始数据传递给资金面分析师 - 不做任何过滤或筛选 4. **AI分析**(`deepseek_client.py`) - AI收到所有问财数据 - AI自己识别关键字段 - AI自己提取数值 - AI自己计算比例关系 - AI基于实际数据生成分析报告 ## 🔧 代码改动说明 ### 1. stock_data.py - 简化数据获取 ```python def get_fund_flow_data(self, symbol): """获取问财数据 - 返回所有原始数据""" # 查询问财 result = pywencai.get(query=query, loop=True) # 转换为DataFrame df_result = pd.DataFrame([result]) if isinstance(result, dict) else result # 提取所有数据 raw_data_dict = {} for col in df_result.columns: value = data.get(col) # 大数字转换为亿元便于阅读 if abs(value) > 100000000: raw_data_dict[col] = f"{value} ({value/100000000:.2f}亿元)" else: raw_data_dict[col] = value # 返回所有原始数据 return { "query_success": True, "raw_data": raw_data_dict, "columns": df_result.columns.tolist() } ``` **关键点**: - ✅ 不手动提取特定字段 - ✅ 保留所有问财返回的数据 - ✅ 只做格式化,不做数据筛选 ### 2. deepseek_client.py - AI智能分析 ```python def fund_flow_analysis(self, stock_info, indicators, fund_flow_data): """资金面分析 - 让AI自己分析所有数据""" # 构建包含所有原始数据的提示词 raw_data = fund_flow_data.get('raw_data', {}) fund_flow_section = "\n【问财资金流向完整数据】\n" for key, value in raw_data.items(): fund_flow_section += f"- {key}: {value}\n" prompt = f""" 你是资金面分析师。 以下是问财返回的所有数据: {fund_flow_section} 请你: 1. 自己识别哪些是资金流向字段 2. 自己提取关键数值 3. 自己计算占比和关系 4. 基于实际数据进行分析 给出专业的资金面分析报告。 """ ``` **关键点**: - ✅ 将所有数据都给AI - ✅ 明确要求AI自己提取和分析 - ✅ 强调基于实际数据而非假设 ## 💡 使用示例 ### 问财返回的数据示例 ``` 【问财资金流向完整数据(近20个交易日)】 数据来源:同花顺问财 股票名称:歌尔股份 股票代码:002241 - 近20个交易日区间资金流向[20240101]: 12345678900 (123.46亿元) - 近20个交易日区间主力资金流向[20240101]: 9876543210 (98.77亿元) - 近20个交易日区间涨跌幅[20240101]: 15.23 - 近20个交易日区间大单净流入[20240101]: 5000000000 (50.00亿元) - 近20个交易日区间中单净流入[20240101]: 2000000000 (20.00亿元) - 近20个交易日区间小单净流入[20240101]: -3000000000 (-30.00亿元) - 近20个交易日区间换手率[20240101]: 45.6 ...(所有其他字段) 以上是问财返回的所有资金流向相关数据,请仔细分析这些数据的含义和相互关系。 ``` ### AI分析师的工作 AI会自动: 1. 识别出"区间资金流向"、"主力资金流向"等关键字段 2. 提取数值并注意单位(亿元) 3. 计算主力资金占比 = 98.77 / 123.46 = 80% 4. 分析大单、中单、小单的分布 5. 结合涨跌幅判断资金效率 6. 给出主力行为判断(吸筹/派发/洗盘等) ## ✅ 优势总结 ### 技术优势 1. **代码简洁** - 数据获取逻辑从 ~200行 减少到 ~100行 - 不需要维护字段映射表 - 不需要处理列名变化 2. **容错性强** - 问财字段名变化?没关系,AI会自己找 - 新增字段?自动包含在分析中 - 缺失字段?AI会注意到并说明 3. **扩展性好** - 要分析更多维度?直接改查询语句 - 要调整分析角度?修改AI提示词 - 要支持新数据源?只需统一格式 ### 分析优势 1. **更全面** - 不会遗漏任何字段 - AI能发现数据间的隐藏关联 - 可以分析我们没想到的角度 2. **更智能** - AI理解数据的业务含义 - 自动识别异常值 - 能做出逻辑推理 3. **更灵活** - 不同股票可能有不同字段,AI都能处理 - 可以根据实际数据调整分析重点 - 能适应各种数据格式 ## 🧪 测试方法 ### 运行测试脚本 ```bash python test_fund_flow.py ``` ### 预期输出 ``` 正在使用问财查询资金流向数据: 002241近20个交易日区间资金流向、区间主力资金流向、区间涨跌幅 问财返回的数据类型: 问财返回字典,转换为DataFrame 成功转换,形状: (1, 25) 问财返回的列名: ['股票代码', '股票简称', '近20个交易日区间资金流向[20240101]', ...] 成功获取 002241 的问财数据,共 23 个字段 ✅ 成功获取问财数据 【基本信息】 股票简称: 歌尔股份 股票代码: 002241 数据字段数量: 23 个 【问财返回的所有字段】 1. 股票代码 2. 股票简称 3. 近20个交易日区间资金流向[20240101] 4. 近20个交易日区间主力资金流向[20240101] 5. 近20个交易日区间涨跌幅[20240101] ... 【问财原始数据】 近20个交易日区间资金流向[20240101]: 12345678900 (123.46亿元) 近20个交易日区间主力资金流向[20240101]: 9876543210 (98.77亿元) 近20个交易日区间涨跌幅[20240101]: 15.23 ... ``` ## 🎯 最佳实践 ### 查询语句优化 可以根据需要调整问财查询语句,获取更多数据: ```python # 基础查询 query = f"{symbol}近20个交易日区间资金流向、区间主力资金流向、区间涨跌幅" # 扩展查询(获取更多维度) query = f"{symbol}近20个交易日区间资金流向、区间主力资金流向、区间大单净流入、区间中单净流入、区间小单净流入、区间换手率、区间涨跌幅" ``` AI会自动分析所有返回的字段! ### AI提示词优化 如果需要特别关注某些方面,可以在提示词中强调: ```python prompt = f""" {fund_flow_section} 请特别关注: 1. 主力资金的进出节奏 2. 大单与中小单的博弈 3. 资金流向与股价的背离情况 基于以上数据进行深度分析... """ ``` ## 🔄 版本对比 | 特性 | v1.0(手动提取) | v2.0(AI智能) | |------|----------------|----------------| | 代码行数 | ~200行 | ~100行 | | 字段匹配 | 硬编码 | AI自动识别 | | 列名变化 | 需修改代码 | 无需修改 | | 新增字段 | 需添加代码 | 自动包含 | | 分析深度 | 预定义 | AI自主判断 | | 容错能力 | 弱 | 强 | | 扩展性 | 差 | 好 | ## 📝 注意事项 1. **数据质量依赖问财** - 如果问财返回数据不完整,AI会指出缺失 - 如果问财数据异常,AI会识别并说明 2. **AI理解能力** - 使用 DeepSeek 等高质量模型效果更好 - 提示词要明确,避免AI假设数据 3. **数据格式** - 大数字自动转为亿元显示,便于AI理解 - 保留原始数值供AI精确计算 ## 🚀 未来优化方向 1. **多时间周期** - 同时获取5日、10日、20日数据 - AI分析资金流向的时间趋势 2. **数据对比** - 与同行业股票对比 - 与大盘资金流向对比 3. **可视化** - 生成资金流向图表 - AI基于图表进行分析 4. **实时监控** - 定期查询资金流向 - AI识别异常资金变化 ## 更新日期 2025年10月6日 - v2.0 ## 作者 AI股票分析系统开发团队 --- **结论**:v2.0 通过"让AI自己分析"的设计理念,实现了更简单、更智能、更强大的资金面分析功能!🎉