Files
aiagents-stock/docs/低价擒牛实现总结.md
T
2025-12-12 19:46:38 +08:00

6.2 KiB
Raw Blame History

低价擒牛选股板块 - 实现总结

实现日期

2024-12-12

功能概述

在左侧菜单栏"选股板块"下新增"低价擒牛"选股策略,支持低价高成长股票筛选和量化交易模拟。

核心功能

1. 选股策略

  • 股价 < 10元
  • 净利润增长率 ≥ 100%
  • 非ST、非科创板、非创业板
  • 深圳A股
  • 按成交额由小至大排名
  • 筛选前5名(可配置3-10只)

2. 钉钉通知

  • 读取.env中的Webhook配置
  • 自动发送选股结果到钉钉群
  • 包含股票代码、价格、净利增长率等信息

3. 量化交易策略

  • 初始资金:100万元
  • 持股周期:5天
  • 仓位控制:满仓
  • 个股最大持仓:40%
  • 最大持股数:4只
  • 单日最大买入:2只
  • 买入时机:开盘买入
  • 卖出信号:MA5下穿MA20 或 持股满5天

4. 交易模拟

  • 支持策略模拟(无需配置)
  • 支持MiniQMT实盘对接(需配置)
  • 显示买入信号、持仓、账户状态

新增文件

Python模块

  1. low_price_bull_selector.py (158行)

    • 使用pywencai获取符合条件的股票
    • 数据清洗和格式化
    • 股票代码列表生成
  2. low_price_bull_strategy.py (278行)

    • 量化交易策略实现
    • 买卖信号判断
    • 仓位管理
    • 交易历史记录
  3. low_price_bull_ui.py (382行)

    • Streamlit界面展示
    • 用户交互逻辑
    • 钉钉通知集成
    • 策略模拟展示

文档

  1. docs/低价擒牛功能说明.md (241行)

    • 完整功能文档
    • 策略详解
    • 配置说明
    • 风险提示
  2. docs/低价擒牛快速开始.md (197行)

    • 快速上手指南
    • 典型使用场景
    • 常见问题解答

修改文件

app.py

修改位置:第293-380行(菜单导航区域)

修改内容

  1. 在"选股板块"下添加"🐂 低价擒牛"按钮
  2. 更新所有按钮的状态清除列表,增加show_low_price_bull
  3. 添加路由检查,显示低价擒牛界面

代码变更

# 添加导航按钮
if st.button("🐂 低价擒牛", width='stretch', key="nav_low_price_bull", help="低价高成长股票筛选策略"):
    st.session_state.show_low_price_bull = True
    # 清除其他页面标志

# 添加路由
if 'show_low_price_bull' in st.session_state and st.session_state.show_low_price_bull:
    from low_price_bull_ui import display_low_price_bull
    display_low_price_bull()
    return

技术实现

数据获取

  • 使用pywencai模块调用问财接口
  • 查询语句:"股价<10元,净利润增长率(净利润同比增长率)≥100%,非st,非科创板,非创业板,深圳A股,成交额由小至大排名"
  • 智能解析返回结果,兼容DataFrame/dict/list格式

通知集成

  • 复用notification_service模块
  • 支持钉钉/飞书Webhook
  • 自动包含关键词"aiagents通知"
  • Markdown格式消息展示

策略实现

  • 基于面向对象设计
  • 严格的仓位管理
  • 清晰的买卖信号
  • 完整的交易记录

UI展示

  • Streamlit expander组件展示详情
  • DataFrame展示完整数据
  • Metric组件展示关键指标
  • CSV下载功能

环境变量配置

Webhook通知(可选)

WEBHOOK_ENABLED=true
WEBHOOK_URL=your_dingtalk_webhook_url
WEBHOOK_TYPE=dingtalk
WEBHOOK_KEYWORD=aiagents通知

MiniQMT实盘(可选)

MINIQMT_ENABLED=true
MINIQMT_ACCOUNT_ID=your_account_id

使用流程

  1. 启动系统

    streamlit run app.py
    
  2. 进入功能

    • 左侧菜单 → 🎯 选股板块 → 🐂 低价擒牛
  3. 开始选股

    • 调整筛选数量
    • 点击"🚀 开始低价擒牛选股"
  4. 查看结果

    • 股票列表
    • 统计信息
    • 钉钉通知(如已配置)
  5. 策略模拟(可选)

    • 点击"🎮 开始策略模拟"
    • 查看买入信号和持仓
  6. 实盘交易(可选)

    • 配置MiniQMT
    • 点击"🔗 连接MiniQMT实盘"

特色亮点

1. 智能筛选

  • 多维度条件过滤
  • 成交额排序优先低热度股票
  • 自动排除风险股(ST、科创板)

2. 完整策略

  • 清晰的买卖规则
  • 严格的风险控制
  • 可复现的交易逻辑

3. 即时通知

  • 自动发送钉钉消息
  • 无需人工查看
  • 移动端即时接收

4. 灵活配置

  • 筛选数量可调
  • 策略参数可改
  • 支持模拟和实盘

注意事项

使用限制

  1. ⚠️ 问财接口有频率限制,建议每次间隔30秒以上
  2. ⚠️ 净利润增长率≥100%的股票可能较少
  3. ⚠️ 策略模拟不包含手续费和滑点

风险提示

  1. ⚠️ 本功能仅供学习研究使用
  2. ⚠️ 不构成任何投资建议
  3. ⚠️ 股市有风险,投资需谨慎
  4. ⚠️ 历史业绩不代表未来收益

技术限制

  1. ⚠️ 需要稳定的网络连接
  2. ⚠️ pywencai模块需要正确安装
  3. ⚠️ MiniQMT需要额外配置

后续优化方向

短期优化

  • 添加历史选股记录
  • 支持自定义筛选条件
  • 增加更多技术指标

中期优化

  • 回测功能
  • 策略参数优化
  • 多策略对比

长期优化

  • AI选股建议
  • 实时监控
  • 自动化交易

测试建议

功能测试

  1. 测试选股功能是否正常
  2. 验证数据格式是否正确
  3. 检查钉钉通知是否发送
  4. 确认策略模拟逻辑

边界测试

  1. 筛选不到股票时的处理
  2. 网络异常时的错误处理
  3. Webhook未配置时的提示

性能测试

  1. 数据获取速度
  2. UI渲染性能
  3. 并发访问支持

相关文档

总结

本次实现完整地添加了"低价擒牛"选股板块,包含:

  • 完整的选股策略
  • 钉钉通知集成
  • 量化交易策略
  • 策略模拟功能
  • 详细的文档说明

所有功能均已集成到现有系统中,与主力选股等其他板块保持一致的交互体验。


实现完成时间2024-12-12 版本v1.0 状态 已完成并可使用