Files
aiagents-stock/资金流向功能说明.md
T
2025-10-07 09:56:30 +08:00

6.6 KiB
Raw Blame History

资金流向功能集成说明

引入pywencai库,运行环境必须安装node.js>16.0,否则不能获取数据

概述

本次更新成功引入了 pywencai库,为资金面分析师提供真实的资金流向数据支撑,包括近20个交易日的区间资金流向、区间主力资金流向和区间涨跌幅数据。

功能特点

1. 数据来源

  • 数据源:同花顺(pywencai
  • 数据范围:近20个交易日
  • 支持市场:仅支持中国A股(美股暂不支持)

2. 获取的数据指标

资金流向数据包括:

  • 区间资金流向

    • 总资金流向(元)
    • 总资金流向(亿元)
  • 区间主力资金流向

    • 主力资金流向(元)
    • 主力资金流向(亿元)
    • 主力资金占比(%
  • 区间涨跌幅

    • 近20日涨跌幅(%
  • 额外资金数据(根据返回的数据动态提取)

    • 可能包含大单、中单、小单资金流向
    • 其他资金相关指标

代码改动说明

1. requirements.txt

添加了 pywencai>=0.7.0 依赖。

2. stock_data.py

新增方法:

  • get_fund_flow_data(symbol): 使用获取资金流向数据
  • _safe_convert(value): 安全地转换数值
  • _calculate_main_fund_ratio(main_fund, total_fund): 计算主力资金占比

3. deepseek_client.py

修改了 fund_flow_analysis 方法:

  • 新增 fund_flow_data 参数
  • 将数据整合到分析提示词中
  • 增强了资金面分析的维度和深度

分析维度包括:

  1. 资金流向趋势分析
  2. 主力资金行为分析
  3. 成交量变化分析
  4. 资金面与技术面结合
  5. 市场情绪和资金偏好
  6. 资金面风险与机会
  7. 投资建议

4. ai_agents.py

修改了 fund_flow_analyst_agent 方法:

  • 新增 fund_flow_data 参数
  • 在分析结果中保存资金流向数据
  • 添加数据来源提示信息

修改了 run_multi_agent_analysis 方法:

  • 新增 fund_flow_data 参数
  • 将资金流向数据传递给资金面分析师

5. app.py

run_stock_analysis 函数中:

  • 添加获取资金流向数据的步骤
  • 仅对A股股票获取数据
  • 显示数据获取状态提示
  • 将数据传递给AI分析系统

使用方法

安装依赖

pip install pywencai>=0.7.0

或者重新安装所有依赖:

pip install -r requirements.txt

运行系统

streamlit run app.py

分析A股股票

  1. 在输入框中输入A股代码(如 600519000001
  2. 点击"开始分析"按钮
  3. 系统会自动:
    • 获取股票基本信息
    • 获取技术指标数据
    • 获取财务数据
    • 获取资金流向数据(新增)
    • 调用AI分析师团队进行分析
  4. 在"资金面分析师"标签页查看基于真实资金流向数据的分析报告

分析美股

  • 美股暂不支持资金流向数据
  • 资金面分析师将基于技术指标进行分析
  • 系统会显示" 美股暂不支持资金流向数据"提示

数据解读

主力资金行为判断

资金面分析师会结合以下情况进行分析:

  1. 主力资金持续流入 + 股价上涨

    • 说明主力看好后市
    • 资金推动股价上涨
    • 是较强的买入信号
  2. 主力资金流出 + 股价上涨

    • 需警惕散户接盘风险
    • 可能是主力出货
    • 上涨动力不足
  3. 主力资金流入 + 股价下跌

    • 可能是主力在低位吸筹
    • 或是市场整体弱势
    • 需结合其他指标判断
  4. 主力资金流出 + 股价下跌

    • 主力看空
    • 卖出压力大
    • 应回避或止损

主力资金占比

  • 占比 > 70%: 主力高度控盘
  • 占比 50-70%: 主力参与度较高
  • 占比 30-50%: 主力参与适中
  • 占比 < 30%: 散户为主导

注意事项

  1. 网络要求

    • pywencai 需要访问同花顺网站
    • 确保网络连接正常
    • 可能受到访问频率限制
  2. 数据时效性

    • 资金流向数据为T-1数据(前一交易日)
    • 非实时数据
  3. 异常处理

    • 如果数据获取失败,系统会自动降级
    • 资金面分析师将基于技术指标进行分析
    • 不会影响其他分析师的正常工作
  4. 仅支持A股

    • 数据仅支持中国A股
    • 美股、港股暂不支持

故障排查

常见问题

1. 提示 "'dict' object has no attribute 'empty'"

原因pywencai.get() 返回了字典而不是DataFrame

解决方案:已在最新版本中修复,代码会自动检测返回类型并处理

2. 提示 "问财查询返回None"

原因

  • 网络连接问题
  • 问财服务暂时不可用
  • 查询语句不符合问财格式

解决方案

  • 检查网络连接
  • 稍后重试
  • 查看控制台输出的详细错误信息

3. 提示 "未能获取问财资金流向数据"

原因

  • 系统未安装node.js,需要node版本>16
  • 问财API访问限制
  • 股票代码不存在或停牌
  • 数据暂时不可用

解决方案

  • 系统会自动降级到技术指标分析
  • 不影响其他分析功能
  • 可以尝试其他股票代码

测试脚本

使用测试脚本快速验证功能:

python test_fund_flow.py

测试脚本会:

  1. 测试多只股票的资金流向数据获取
  2. 显示详细的调试信息
  3. 打印完整的返回数据

调试信息

运行时会输出以下调试信息:

正在使用问财查询资金流向数据: 002241近20个交易日区间资金流向、区间主力资金流向、区间涨跌幅
问财返回的数据类型: <class 'dict'> 或 <class 'pandas.DataFrame'>
问财返回DataFrame,形状: (1, 10)
问财返回的列名: ['股票代码', '股票简称', '区间资金流向', ...]
找到的列名 - 资金流向: 区间资金流向, 主力资金: 区间主力资金流向, 涨跌幅: 区间涨跌幅
成功获取 002241 的资金流向数据

版本兼容性

  • pywencai >= 0.7.0:支持最新的问财API
  • pandas >= 2.0.3:数据处理
  • Python >= 3.8:推荐使用Python 3.10+

技术支持

如遇到问题,可:

  1. 查看日志:运行时会在控制台输出详细的调试信息
  2. 运行测试脚本:使用 test_fund_flow.py 独立测试
  3. 检查依赖:确保 pywencai 版本正确
  4. 网络检查:确保可以访问同花顺问财
  5. 股票代码:确认是6位数字的A股代码

未来优化方向

  1. 支持更多时间周期的资金流向数据
  2. 增加资金流向的可视化图表
  3. 支持资金流向的历史趋势分析
  4. 尝试集成其他数据源(如东方财富)
  5. 探索美股资金流向数据来源

更新日期

2025年10月6日

作者

AI股票分析系统开发团队