返回 Skill 列表
extension
分类: 数据与分析无需 API Key

多策略量化研究

覆盖A股/港股/美股的多源数据量化研究引擎,内置23种真实可审计策略(量价形态/MACD底背离/金叉择时/高股息/低估值/放量突破/趋势/布林带/筹码/现金流/ROE/费雪成长/海龟/动量/资金流/多周期共振/相对强度/均线趋势风控等),数据来自东方财富/腾讯/新浪公开接口,确定性计算,零外部依赖。支持自然语言意图解析、并集/交集/加权组合、自进化权重、ATR止损止盈、历史回测(事件驱动+交易成本)、47因子库(IC检验+多因子合成)、组合优化、动态仓位、风格中性化、市场环境研判、候选池定向筛选(价格/市值区间)、单股持有/离场诊断、交易代码静态审计(安全扫描/多线程/asyncio并发),输出文本/JSON/HTML/CSV四格式报告,可选本地SQLite档案库追踪策略表现。当用户需要按策略选股(如“帮我选低估值/高股息/成长股/MACD金叉/资金流入/多周期共振/多年高ROE”)、按价格/市值区间定向筛选、多策略组合筛选、策略回测、因子分析、单股诊断、交易代码审计或多市场全面筛选时使用。明确排除:纯行情/资金流查询(此类需求走宿主常规能力)。

person作者: user_0fcf0d65hubcommunity

多策略量化研究 Skill(multi-strategy-quant-research-pro)v1.1.2

上架信息

  • 展示名称:多策略量化研究
  • Slug:multi-strategy-quant-research-pro
  • 版本:1.1.2
  • 短描述(≤200字):覆盖A股/港股/美股的量化研究引擎,内置23种真实可审计策略(量价/MACD/估值/财务/趋势/动量/均线风控等),数据来自东方财富/腾讯/新浪公开接口,确定性计算、零外部依赖。支持自然语言意图、多策略组合、自进化权重、历史回测、47因子库(IC+合成)、组合优化、动态仓位、市场环境研判、定向筛选、单股诊断与代码审计,输出文本/JSON/HTML/CSV,可选SQLite档案库。不构成投资建议。

定位

覆盖 A股/港股/美股 的多源数据量化研究引擎。数据层以东方财富公开行情为主通道,K线多通道自动容灾(push2his 多节点 → 腾讯公开K线 → 新浪美股全历史),实时行情主/延迟节点自动切换,单通道不可达不影响结果产出;另含估值、资金流、板块与缓存并发层。

内置 23 种真实可审计策略:量价形态(红肥绿瘦/上涨波段/回调缩量/横盘调整)、MACD底背离、高股息、低估值、放量突破、趋势分析、布林带下轨反弹、筹码集中、现金流质量、ROE杜邦筛选、费雪成长股、长期低位蓄力、海龟交易(唐奇安通道突破)、动量策略、多年度ROE严格校验(S18)、MACD金叉择时(S19)、资金流策略(S20)多周期共振(S21)相对强度策略(S22)均线趋势风控(S23)。新增 ATR 止损止盈位(2倍ATR止损/3倍ATR止盈)与组合风险指标(行业分散度/建议持仓数),以及策略历史回测(真实K线信号回放,输出胜率与平均收益)。全部为确定性计算,同数据必同结果,无模型猜测、无编造补全。

  • 组合筛选:并集/交集/加权三种模式,权重可自定义;支持多周期验证(周线趋势确认,加权模式收紧通过判定)。
  • 自进化权重--auto-weights,如实定位):基于策略表现档案库的真实历史表现(1月胜率70% + 1月均收益30%)自动生成加权模式权重。真实边界(不夸大):仅样本充足(≥5次入选)且指标齐全的策略参与调整,样本不足的策略保持默认权重;权重带保底因子不极端化;表现相同的策略权重趋近(表现优先于默认权重,如实反映);输出明确标注"历史统计,不代表未来收益"。自进化仅指基于历史表现数据的参数调整,绝不改变数据真实性、不做涨跌预测
  • 数据质量如实标注:报告【数据质量】段显式量化偏差——候选池覆盖率(候选数/全市场总数)、财务报告期滞后天数(财报滞后1-4个月为正常)、估值口径(PE 为东财统一口径字段,与 TTM 字段 f162 数值一致),不隐藏不夸大。
  • 自然语言选股意图解析scripts/intent.py,人性化入口):用户说"帮我选低估值高股息""港股高股息都要满足"等自然语言,可解析为策略组合+市场+组合模式建议(低估值→S07、高股息→S06、成长→S14、MACD底背离→S05、MACD金叉→S19、资金流→S20、多周期共振→S21、相对强度→S22、均线趋势风控→S23、放量突破→S08 等)。如实定位:确定性规则映射(关键词→策略能力表),非自由文本语义理解;未匹配项由 Agent 按用户明确需求补默认参数。
  • 结果可解释(多因子画像 + 技术位):每只入选标的输出策略画像(各策略维度得分概览,如"S06=1.0 S07=1.0",可解释"为什么入选")与支撑/压力位(近60日真实K线高低点,如实标注非预测承诺),随文本/JSON/HTML 报告展示。画像口径(如实):分数为策略自身信号强度(0-1 范围),S01 满分 1.0、S02-S05 最强信号满分 0.85-0.9(各策略满分定义略有差异),画像用于横向比较入选标的的策略偏好,非绝对优劣。
  • 大盘环境:由三市场真实指数(MA/量能/市场宽度信号)判定多空,叠加环境系数动态调整评分,并输出"若…则…"条件式趋势研判。
  • 市场能力边界:三市场能力差异以「核心筛选流水线 → 阶段二」的市场能力表为唯一权威(A股/港股/美股 × K线/周线/财务摘要/资金流)。策略特有边界:估值策略(S06 高股息 / S07 低估值)三市场真实可用(候选池 clist f9/f23/f133 真实返回);S18 多年度 ROE 三市场真实可用(多期报表按自然年提取年度 ROE,仅已完结自然年参与逐年严格校验,当年中报/三季报不计为年度值);S15(长期低位蓄力)为技术面核心(长期低位+横盘蓄力),资金流仅辅助加分——美股无对应公开口径时该辅助条件如实不可用,技术面核心条件仍按实际数据判定、可独立通过。
  • 历史回测:K线逐日信号回放(无前视偏差),输出每策略历史胜率与平均收益,样本不足时明确标注;可选本地档案库追踪筛选后表现。
  • 四格式报告:纯文本、JSON、自包含交互式 HTML(大盘仪表盘、策略统计、K线迷你图、行业热力图)、CSV 表格(UTF-8 with BOM,Excel/WPS 直接打开)。
  • 数据健康度报告:运行末尾输出本次真实数据通道汇总(实时行情通道/K线通道/市场宽度/候选池覆盖率/财务报告期滞后),便于判断结果可信度;K线全缓存命中时如实显示"本地缓存",不误报异常。
  • 运行时阈值覆盖--override):不改动默认配置即可临时调整策略阈值(如 --override S06_DIVIDEND_YIELD_MIN=3.5,S09_ADX_MIN=30),仅本次运行生效。

以上结果均基于历史数据与公开接口实时数据,不代表未来表现,不构成投资建议。股市有风险,投资需谨慎。公开数据延迟约 3-5 分钟。

合规声明(强制执行)

  1. 本 Skill 仅基于公开历史行情数据进行技术形态与基本面筛选匹配,不构成投资建议。
  2. 所有输出必须标注数据来源(东方财富/腾讯/新浪公开接口)、数据时点与刷新频率。
  3. 禁止使用「必涨」「稳赚」「买入」「推荐」等承诺性或诱导性用语。
  4. 每份报告末尾必须附风险声明:「以上为技术形态与基本面筛选结果,不构成投资建议。股市有风险,投资需谨慎。请结合自身风险承受能力独立决策。」
  5. 所有数值均为真实接口返回,严禁编造、补全、美化或篡改。

架构总览

multi-strategy-quant-research-pro/
├── SKILL.md                    # 入口文件(name/description frontmatter + 使用指引)
└── scripts/                    # 全部可执行代码(Python 标准库,零第三方依赖)
    ├── config.py               # 全策略参数配置 + 多市场参数 + 性能参数
    ├── run_screening.py        # 多市场主入口(--market A股/港股/美股/全部;共享 run_pipeline 流水线)
    ├── run_backtest.py         # 独立回测入口(单策略回测/多策略对比/参数优化)
    ├── run_diagnose.py         # 单股持有/离场诊断入口(--code 代码 --days 250,输出技术状态+全策略信号+S09回测)
    ├── run_audit.py            # 交易代码审计入口(--target 文件/目录 --mode security/concurrency/all)
    ├── intent.py               # 自然语言选股意图解析("低估值→S07"等确定性规则映射)
    ├── risk_management.py      # ATR止损止盈位计算 + 组合风险指标(行业分散度)
    ├── guide.py                # 新用户交互式引导向导(7步,真实数据驱动)
    ├── validate.py             # 一键自检(frontmatter/版本/引用/策略注册表/语法/表述)
    ├── core/                   # 核心能力层
    │   ├── __init__.py         # 统一导出(回复引擎/韧性容错/可观测性)
    │   ├── response_engine.py  # 多模式回复引擎(新手/专业/极简三模式自动切换)
    │   ├── resilience.py       # 错误自愈与降级(熔断/数据源切换/部分输出/超时降级)
    │   └── observability.py    # 可观测性与自诊断(请求计数/P95延迟/缓存命中/健康度评分)
    ├── data/                   # 数据层
    │   ├── __init__.py         # 统一导出所有数据模块函数
    │   ├── _http.py            # 共享HTTP客户端(多节点容灾/延迟节点切换/会话级故障收敛)
    │   ├── a_share.py          # A股候选池列表(含行业字段)/日周K线/批量并发
    │   ├── fundamental.py      # 财务摘要/估值/批量基本面(三市场同构)
    │   ├── money_flow.py       # 主力资金净流入/连续流入判断(多日历史+实时回退)
    │   ├── sector.py           # 东方财富板块(BK)行业/概念涨幅排行
    │   ├── hk_share.py         # 港股行情/列表/K线(主板+创业板)
    │   ├── us_share.py         # 美股行情/列表/K线(NYSE+NASDAQ)
    │   ├── extended.py         # 扩展数据源(分钟K线/财务三表/龙虎榜/融资融券等9类)
    │   └── quality.py          # 数据质量保障(前复权/异常检测/完整性校验/来源标注)
    ├── indicators/             # 技术指标库
    │   ├── __init__.py         # 导出 MA/EMA/MACD/RSI/BOLL/ADX/ATR/均线排列
    │   ├── technical.py        # 标准技术指标(MACD/RSI/BOLL/均线/ADX/ATR)
    │   ├── multi_timeframe.py  # 多时间框架共振(月线+周线+日线三级评分)
    │   └── signal_quality.py   # 信号质量过滤(假突破/量能/共振/趋势/波动/位置6维度)
    ├── strategies/             # 策略层(23种,全部真实代码可审计)
    │   ├── __init__.py         # STRATEGY_REGISTRY + 统一导入
    │   ├── base.py             # StrategyResult + make_result
    │   ├── s01_volume_price.py # S01-S04 量价形态
    │   ├── s02_macd_divergence.py   # S05 MACD底背离
    │   ├── s03_high_dividend.py     # S06 高股息策略
    │   ├── s04_low_valuation.py     # S07 低估值策略
    │   ├── s05_volume_breakout.py   # S08 放量突破
    │   ├── s06_trend_analysis.py    # S09 趋势分析
    │   ├── s07_bollinger.py         # S10 布林带下轨反弹
    │   ├── s08_chip_concentration.py # S11 筹码集中度
    │   ├── s09_cashflow_quality.py   # S12 现金流质量
    │   ├── s10_roe_screening.py      # S13 ROE杜邦筛选
    │   ├── s11_fisher_growth.py      # S14 费雪成长股
    │   ├── s12_long_consolidation.py # S15 长期低位蓄力
    │   ├── s13_turtle.py             # S16 海龟交易
    │   ├── s14_momentum.py           # S17 动量策略
    │   ├── s15_multi_year_roe.py     # S18 多年度ROE严格校验
    │   ├── s16_macd_golden_cross.py  # S19 MACD金叉择时
    │   ├── s17_money_flow.py         # S20 资金流策略
    │   ├── s18_multi_period_resonance.py # S21 多周期共振
    │   ├── s19_relative_strength.py  # S22 相对强度策略
    │   └── s20_trend_safeguard.py   # S23 均线趋势风控策略
    ├── factors/                # 因子库(47因子5大类+正交化+IC检验)
    │   ├── __init__.py         # 统一导出 + ALL_FACTORS注册表
    │   ├── technical.py        # 技术因子18个
    │   ├── value.py            # 价值因子9个
    │   ├── quality.py          # 质量因子9个
    │   ├── growth.py           # 成长因子6个
    │   ├── money_flow.py       # 资金因子5个
    │   ├── composite.py        # 多因子合成(等权/IC加权/自定义)
    │   ├── ic_test.py          # 因子有效性检验(IC/分层回测/单因子评估;IR 需多期截面数据,单期输入如实返回 None)
    │   └── orthogonal.py       # 因子正交化(Gram-Schmidt/中性化/IC前后对比)
    ├── portfolio/              # 组合优化层
    │   ├── __init__.py         # 统一导出
    │   ├── optimizer.py        # 组合优化(等权/最小方差/风险平价/最大夏普+约束)
    │   └── style_neutral.py    # 风格中性化(市值/行业/波动率/Beta四维暴露计算与中性)
    ├── position/               # 仓位管理层
    │   ├── __init__.py         # 统一导出
    │   └── sizing.py           # 动态仓位(凯利/ATR波动率/风险平价/信号强度四级模型)
    ├── backtest/               # 回测引擎层
    │   ├── __init__.py         # 统一导出
    │   ├── engine.py           # 事件驱动回测引擎(无前视偏差/交易成本/涨跌停处理)
    │   ├── metrics.py          # 绩效指标(10+指标:夏普/索提诺/卡玛/胜率/盈亏比等)
    │   ├── optimizer.py        # 参数网格优化
    │   └── precision.py        # 回测精度(分层回测/行业中性/因子衰减/过拟合检测)
    ├── market_regime/          # 市场环境层
    │   ├── __init__.py         # 统一导出 + MarketRegimeEngine统一入口
    │   ├── detector.py         # 市场环境检测(牛熊判断/置信度/仓位建议)
    │   ├── sector_rotation.py  # 行业轮动分析(强势/弱势行业/热点概念)
    │   ├── strategy_recommender.py # 市场环境适配的策略推荐
    │   └── breadth.py          # 市场宽度指标(涨跌比/新高新低/ADL/均线占比+仓位建议)
    ├── composers/              # 策略组合引擎
    │   ├── __init__.py         # 统一导出
    │   └── strategy_composer.py # union/intersection/weighted 三种模式+条件/权重/管道编排
    ├── reports/                # 报告生成层
    │   ├── __init__.py         # 统一导出
    │   ├── text_report.py      # 纯文本报告
    │   ├── json_report.py      # JSON 结构化数据
    │   ├── html_report.py      # 自包含交互式 HTML 可视化报告
    │   └── csv_report.py       # CSV 表格报告(UTF-8 BOM)
    ├── self_evolution/         # 自进化引擎
    │   ├── __init__.py         # 统一导出
    │   ├── knowledge_base.py   # 知识库(JSON存储/自动过期清理)
    │   ├── param_adapter.py    # 参数自适应(基于历史表现调整/学习率防过拟合)
    │   ├── factor_weight.py    # 因子权重动态调整(IC/IR加权/最低权重保障)
    │   └── strategy_selector.py # 策略优胜劣汰(综合评分/TopN推荐/黑名单)
    ├── cache/                  # 缓存层
    │   └── __init__.py         # KlineCacheManager(内存+文件双层缓存/盘中即时失效)
    ├── archive/                # 策略表现档案库(可选模块)
    │   ├── __init__.py         # 导出 tracker / analytics / reporter
    │   ├── schema.py           # SQLite 建表
    │   ├── tracker.py          # 筛选快照存档 + 收益回填
    │   ├── analytics.py        # 策略统计聚合 + 排名
    │   └── reporter.py         # text / json 档案报告生成
    ├── audit/                  # 代码审计层(静态扫描,不执行被测代码)
    │   ├── __init__.py         # 统一导出
    │   ├── security.py         # 静态安全扫描(API密钥/危险函数/SQL注入等 12 类规则)
    │   └── concurrency.py      # 并发安全审计(多线程止损失效/竞态/锁 + asyncio 阻塞/取消/一致性)
    └── utils/                  # 工具层
        ├── __init__.py         # 统一导出
        └── performance.py      # 性能优化(智能缓存TTL+LRU/预计算/向量化/性能监控)

真实策略清单(23种,全部代码可审计)

基础策略 (S01-S12)

| 编号 | 策略 | 策略文件 | 判定函数 | 依赖数据 | |------|------|---------|---------|---------| | S01 | 红肥绿瘦 | strategies/s01_volume_price.py | check_s01_red_fat_green_thin | 日K线 | | S02 | 上涨波段 | strategies/s01_volume_price.py | check_s02_rising_wave | 日K线 | | S03 | 回调缩量 | strategies/s01_volume_price.py | check_s03_pullback_shrink | 日K线 | | S04 | 横盘调整 | strategies/s01_volume_price.py | check_s04_sideways_consolidation | 日K线 | | S05 | MACD底背离 | strategies/s02_macd_divergence.py | check_s05_macd_divergence | 日K线 | | S06 | 高股息策略 | strategies/s03_high_dividend.py | check_s06_high_dividend | 日K线 + 估值数据 | | S07 | 低估值策略 | strategies/s04_low_valuation.py | check_s07_low_valuation | 日K线 + 估值数据 | | S08 | 放量突破 | strategies/s05_volume_breakout.py | check_s08_volume_breakout | 日K线 | | S09 | 趋势分析 | strategies/s06_trend_analysis.py | check_s09_trend_analysis | 日K线 | | S10 | 布林带下轨反弹 | strategies/s07_bollinger.py | check_s10_bollinger | 日K线 | | S11 | 筹码集中度(技术面代理) | strategies/s08_chip_concentration.py | check_s11_chip_concentration | 日K线 | | S12 | 现金流质量 | strategies/s09_cashflow_quality.py | check_s12_cashflow_quality | 日K线 + 财务数据 |

进阶策略 (S13-S15)

| 编号 | 策略 | 策略文件 | 判定函数 | 依赖数据 | 创新点 | |------|------|---------|---------|---------|--------| | S13 | ROE杜邦筛选 | strategies/s10_roe_screening.py | check_s13_roe_screening | 日K线 + 财务数据 | ROE+盈利质量+杠杆健康 | | S14 | 费雪成长股 | strategies/s11_fisher_growth.py | check_s14_fisher_growth | 日K线 + 财务数据 | PEG+成长性确认 | | S15 | 长期低位蓄力 | strategies/s12_long_consolidation.py | check_s15_long_consolidation | 日K线(资金流辅助) | 深度回调+横盘蓄力+底部放量 |

高阶策略 (S16-S23)

| 编号 | 策略 | 策略文件 | 判定函数 | 依赖数据 | 算法核心 | |------|------|---------|---------|---------|---------| | S16 | 海龟交易 | strategies/s13_turtle.py | check_s16_turtle | 日K线 | 唐奇安通道突破(收盘突破近20日最高)为核心通过条件;ADX趋势过滤 / MA60顺势 / 2*ATR止损参考为辅助加分 | | S17 | 动量策略 | strategies/s14_momentum.py | check_s17_momentum | 日K线 | 近60日动量≥8%为核心通过条件;近20日动能延续 / MA60趋势背景 / RSI乖离过热过滤为辅助确认 | | S18 | 多年度ROE严格校验 | strategies/s15_multi_year_roe.py | check_s18_multi_year_roe | 日K线 + 多年财务数据 | 最近3个完整自然年年度ROE逐年≥15%为核心通过条件(任一年不达标或数据不足即不通过),最新报告期ROE≥15%计入通过判定;技术面均线上方为辅助加分 | | S19 | MACD金叉择时 | strategies/s16_macd_golden_cross.py | check_s19_macd_golden_cross | 日K线 | 近20个交易日内DIF上穿DEA(金叉)为核心通过条件,记录金叉触发日期;上升趋势确认(收盘>MA20且MA20上行且DIF>0)计入通过判定(可配置关闭);纯技术面三市场可用,零额外数据依赖 | | S20 | 资金流策略 | strategies/s17_money_flow.py | check_s20_money_flow | 日K线 + 逐日资金流 | 近10日主力净流入率≥3% 或 连续≥3日主力净流入为核心通过条件(满足其一);量价资金背离(股价下跌但主力净流入)为辅助加分;A股/港股可用,美股无公开资金流口径如实不通过 | | S21 | 多周期共振 | strategies/s18_multi_period_resonance.py | check_s21_multi_period_resonance | 日K线 + 周K线 | 日线趋势(收盘>MA20且MA20上行)与周线趋势(周收>周MA10且周MA10上行)同时满足为通过条件;周线定方向、日线定时机,双周期共振;A股/港股有周线数据,美股无公开周线接口如实不通过 | | S22 | 相对强度策略 | strategies/s19_relative_strength.py | check_s22_relative_strength | 日K线 | 近20日涨幅≥15%且收盘>MA20(中期强度)+ 近5日涨幅>0(短期加速)为核心通过条件;近20日均量>近60日均量×1.1为放量辅助加分;纯技术面三市场可用 | | S23 | 均线趋势风控 | strategies/s20_trend_safeguard.py | check_s23_trend_safeguard | 日K线 | 五条件全通过才入选:①MA20向上(当前>5日前)②连续≥3日收盘>MA20(站稳)③收盘>MA60且MA60走平/向上(依托60日线)④量能≥前5日均量×0.5(非无量反弹)⑤RSI<75且近5日无放量滞涨(无高位见顶);纯技术面三市场可用 |

策略判定函数签名:标准入参为 (klines, fundamental=None, money_flow=None);S21 多周期共振额外接收 weekly_klines=None(周K线)。返回 {"code", "name", "passed", "score", "signal_strength", "reasons", "details"} 字典,details 中含 conditions 子条件命中状态。


核心筛选流水线

阶段一:数据获取

  • A股data/a_share.py — 候选池列表(总市值降序,含行业字段)、日/周K线、批量并发获取;定向筛选fetch_screened_a_share_codes):按最新价升序分页拉取并过滤 ST/退市/新股,支持价格上限与市值区间参数(见 run_screening.py--price-below/--cap-min/--cap-max
  • 港股data/hk_share.py — 主板+创业板列表、日/周K线、批量获取
  • 美股data/us_share.py — NYSE+NASDAQ列表、日K线、批量获取
  • 基本面data/fundamental.py — 财务摘要(ROE/EPS/毛利率/净利率/资产负债率/营收与净利增速/每股经营现金流)、估值(PE/PB/PS/股息率/总市值)、批量获取;财务摘要三市场可用(A股走 RPT_F10_FINANCE_MAINFINADATA,港股/美股走 GMAININDICATOR 报表,字段语义同构)
  • 资金流data/money_flow.py — 个股主力资金净流入/连续流入判断(多日历史优先走 push2his 历史节点,回退 push2 实时/延迟;A股/港股真实可获取,美股无对应公开口径)
  • 板块data/sector.py — 东方财富板块分类(BK代码)行业/概念涨幅排行

候选池口径:full 模式下三市场统一按总市值降序取前N近似(A股默认 1000 / 港股美股默认 1000 / "全部"模式每市场 200),非指数成分精确匹配;已过滤 ST/退市/新股。A股候选池按市值排序而非当日涨跌幅排序,避免只覆盖当日大涨标的导致系统性漏筛。全市场全量模式(--full-market)--market 全部 --full-market(三市场)或 --market A股 --full-market(单市场)时候选池按接口真实 total 拉满(全量分页上限100页+空页重试,延迟通道下A股覆盖率可达90%+)(A股/港股/美股全量覆盖,不做市值抽样截断),仅候选池即数千~上万只、耗时显著增加,仅在用户显式要求"全市场/全面覆盖"时启用;当前数据通道为官方延迟节点时美股候选池可能仅覆盖部分标的,如实提示。按需取数:仅当启用了对应依赖策略时才拉取估值(S06/S07/S14 的 PEG)、财务摘要(S07 的 ROE 防线、S12/S13/S14/S18 多年ROE)、资金流(S15/S20)、周K线(S21);纯技术面策略组合(S01-S05/S08-S11/S16/S17/S19/S22/S23)只拉K线,显著减少网络请求与耗时。

定向筛选(价格/市值区间):A股支持 --price-below <元> --cap-min <亿元> --cap-max <亿元> 三参数组合,按最新价升序分页拉取真实候选池(价格超限自动终止),过滤 ST/退市/新股并按市值区间过滤(市值元→亿换算),适合"低价+市值适中+资金流入"等结构化选股需求;返回含最新价/总市值/行业/PE/PB/股息率字段。

数据源:东方财富公开 HTTP API(push2.eastmoney.com / push2his.eastmoney.com / datacenter-web.eastmoney.com 财务摘要)为主通道,腾讯公开K线(proxy.finance.qq.com)与新浪美股(stock.finance.sina.com.cn)为容灾备选,请求间隔自动控制防封。

网络健壮性(真实故障切换)

  • 实时接口(列表/行情/估值)经 data/_http.py 共享客户端请求,主节点不可达时自动切换官方备用延迟节点 push2delay.eastmoney.com(延迟约3分钟,字段一致)。
  • 历史K线接口(push2his)自动尝试多编号节点(79/92/91/无编号),首个返回有效数据的节点即用;全部节点不可达时自动切换备选公开通道:A股/港股走腾讯公开K线(proxy.finance.qq.com 优先,web.ifzq 触发风控时轮询备用入口),美股走新浪美股全历史日K(腾讯接口对美股仅返回首末两条,不可用)。备选通道输出与东财同构的K线字段(缺省字段置0,涨跌幅由收盘价序列真实计算),确保回测与技术面策略真实可用。注:腾讯/新浪K线通道不含成交额字段(如实置0),依赖成交额的大盘"量能"信号在兜底通道下如实缺省;策略层判定仅用开/收/高/低/量/涨跌幅,不受成交额缺省影响。
  • 报告头部标注本次实际使用的数据通道(实时通道 + K线通道);延迟节点下部分能力真实受限时(如美股候选池、资金流历史深度)会明确提示,不伪造数据、不静默。

阶段二:多策略并行判定

调用 strategies/__init__.py 中的 STRATEGY_REGISTRY 获取全部策略,通过 run_screening.py--strategies 参数可指定启用的策略子集。每只股票并发执行所有启用策略的判定函数,支持 --multi-period 多周期验证。

市场能力差异

| 市场 | K线 | 周线 | 基本面(财务摘要) | 资金流 | |------|-----|------|--------|--------| | A股 | 日K线 ✅ | ✅ | ✅(RPT_F10_FINANCE_MAINFINADATA) | ✅(push2 fflow 逐只获取) | | 港股 | 日K线 ✅ | ✅ | ✅(GMAININDICATOR 75 字段) | ✅(抽样,push2 fflow 116.xxx) | | 美股 | 日K线 ✅ | ❌ 无公开数据 | ✅(GMAININDICATOR 49 字段) | ❌ 无对应公开口径 |

三市场财务摘要策略(S07 的 ROE 防线、S12/S13/S14)均基于真实财务数据判定;S15(长期低位蓄力)在 A股/港股资金流辅助按实际数据判定(多日历史走 push2his 历史节点,不可达时可能仅最近1日、如实降级),美股因无对应公开口径该辅助条件如实不可用,技术面核心条件(长期低位+横盘蓄力)仍按实际数据判定、可独立通过。命令行会在执行前给出真实能力提示。

阶段三:组合引擎

调用 composers/strategy_composer.py 中的 compose() 函数,支持三种模式:

  • union(并集):任一策略通过即入选
  • intersection(交集):全部策略通过才入选
  • weighted(加权):Σ(策略得分 × 策略权重) / Σ权重 × 10,权重通过 --weights "S01=0.15,S05=0.25,..." 配置;入选需同时满足「综合得分 ≥ 3.0」且「至少一个策略真实通过核心条件」(防止仅靠辅助加分、核心条件全不满足的标的入选)

综合评分说明(composers/strategy_composer.py):加权模式综合得分按上述公式在 0-10 区间内计算;主流程在组合得分基础上叠加 大盘环境系数(多头 1.05 / 震荡 0.85 / 空头 0.65,取自 config.pyMARKET_*_COEFFICIENT)得到最终评分。本版本不包含行业景气加成项。

阶段四:报告生成

四种输出格式,通过 --format 参数切换,支持动态组合(逗号分隔,如 text,html)与仅控制台输出print):

  1. 纯文本报告reports/text_report.py):含大盘环境、策略通过率统计、筛选结果排序、行业分布、风险声明
  2. JSON 结构化数据reports/json_report.py):标准 Schema,便于程序化消费
  3. HTML 可视化报告reports/html_report.py):自包含单文件,含大盘仪表盘、策略统计、可排序表格、K线迷你图、行业热力图、风险声明,纯 CSS/JS 无外部依赖
  4. CSV 报告reports/csv_report.py):UTF-8 with BOM,Excel/WPS 直接打开

回复详细度--level,默认 full 全量,与历史行为一致;仅控制展示丰富度,不改变数据真实性):

  • brief 简洁:只展示核心筛选结果(排名/代码/名称/评分/共识度/命中策略)与简短风险提示
  • standard 标准:大盘环境/策略通过率/筛选结果/行业分布/数据质量/风险声明
  • full 全量:标准内容 + 每条标的完整判定理由/多因子画像/技术位明细

示例:

python run_screening.py --market A股 --format text,html   # 仅输出文本+HTML两种
python run_screening.py --market A股 --format print       # 仅控制台文字贴出,不写文件
python run_screening.py --market A股 --level brief --format text  # 简洁文本报告

使用方式

# 运行环境:Python 3.10+,仅使用标准库、零第三方依赖;联网调用东方财富/腾讯/新浪公开行情接口(无需认证)。
# 将本 skill 内容(SKILL.md 与 scripts/ 目录)放入宿主 skills 目录下以 skill 名命名的文件夹中,随后在 scripts/ 下执行。
cd scripts

# A股完整能力(含基本面/资金流策略),一条完整命令;参数含义见下注释
# --market 市场(A股/港股/美股/全部);--mode full 全市场候选;--strategies 指定策略(默认全部);
# --strategy-mode union/intersection/weighted;--multi-period 多周期验证;--output 输出目录;
# --format text/json/html/csv/all/组合(如 text,html)/print(仅控制台);--level brief/standard/full;
# --top 输出前N只;--cap 单市场候选池上限(默认1000);--all-cap 全部市场每市场上限(默认200);--full-market 全市场全量覆盖(单市场或全部市场均生效);
# --price-below 价格上限(元) / --cap-min --cap-max 市值区间(亿元):A股定向筛选(与 --strategies 组合使用);--backtest 策略历史回测(真实胜率);--no-cache 禁用缓存
python run_screening.py --market A股 --mode full --strategies S01,S05,S07 --strategy-mode weighted --weights "S01=0.15,S05=0.25,S07=0.20" --multi-period --output ./output --format all --level full --top 20

# 快速预览(候选池500只、输出前20、文本报告,大幅缩短耗时)
# 如实说明:候选池按市值降序抽样,可能漏掉中等市值高分股;要完整结果用 full 全量
python run_screening.py --quick --market A股 --top 20

# 自进化权重(基于档案库真实历史表现生成加权权重;样本不足的策略保持默认权重)
python run_screening.py --market A股 --strategy-mode weighted --auto-weights --top 20

# 自然语言选股意图解析(人性化入口):用户说人话 → 解析为策略/市场/组合建议
python intent.py "帮我选低估值高股息"
python intent.py "港股 高股息 都要满足"

# 港股/美股(三市场全功能:技术面/估值/财务策略真实可用)
python run_screening.py --market 港股 --strategies S01,S05,S08 --top 20
python run_screening.py --market 美股 --strategy-mode weighted --weights "S01=0.2,S05=0.3,S08=0.2" --top 20
python run_screening.py --market 全部 --format html --output ./reports --top 30

# 全市场全量覆盖 + 多年度ROE严格校验
# --full-market 三市场候选池按接口真实total拉满(不做市值抽样);S18 为最近3个完整自然年ROE逐年≥15%的严格校验
python run_screening.py --market 全部 --full-market --strategies S18 --strategy-mode weighted --top 20

# MACD金叉择时(S19):近20日金叉+上升趋势,单市场全量
python run_screening.py --market A股 --full-market --strategies S19 --strategy-mode intersection --format text,csv --top 50 --no-guide

# 定向筛选:A股低价股(<15元)+市值50-300亿 + 近3日主力净流入 + 超跌反弹(S10)
# --price-below 15 --cap-min 50 --cap-max 300 按最新价升序真实拉取并过滤 ST/退市/新股、市值区间
python run_screening.py --market A股 --no-guide --price-below 15 --cap-min 50 --cap-max 300 --strategies S10,S20 --top 20 --format text

# 单股持有/离场诊断(如长飞光纤 601869):技术状态 + 全部23策略信号 + S09趋势回测
python run_diagnose.py --code 601869 --days 250

# 交易代码静态审计(不执行被测代码)
python run_audit.py --target 交易系统.py                # 安全+并发全量审计
python run_audit.py --target ./src --mode security      # 仅安全扫描(密钥/危险函数/SQL注入等)
python run_audit.py --target ./src --mode concurrency   # 仅并发审计(止损失效/竞态/锁/阻塞/一致性)

未通过 --market 指定且处于交互终端时,每次运行会先弹出轻量市场询问: [1] A股 [2] 港股 [3] 美股 [4] 全部 [q] 退出(Enter 默认 A股); 非交互终端(如定时任务/管道)自动跳过询问,使用默认市场。

常用意图速查表(快速路径)

| 用户意图 | 推荐命令(默认 A股、输出前 20,可按需加 --market/--format) | |---------|------------------------------------------------------------| | 低估值 + 高股息(都要满足) | python run_screening.py --no-guide --strategies S06,S07 --strategy-mode intersection --top 20 | | 港股 高股息 都要满足 | python run_screening.py --no-guide --market 港股 --strategies S06 --strategy-mode intersection --top 20 | | 成长股 / 费雪成长 | python run_screening.py --no-guide --strategies S14 --top 20 | | 多年ROE 严格校验 | python run_screening.py --no-guide --strategies S18 --top 20 | | MACD金叉择时 | python run_screening.py --no-guide --strategies S19 --top 20 | | 资金流 / 主力净流入 | python run_screening.py --no-guide --strategies S20 --top 20 | | 多周期共振 | python run_screening.py --no-guide --strategies S21 --top 20 | | 强势股 / 相对强度 | python run_screening.py --no-guide --strategies S22 --top 20 | | 均线趋势风控(20日线上穿站稳+60日线托底) | python run_screening.py --no-guide --strategies S23 --top 20 | | 低价股 + 资金流入 + 市值区间 | python run_screening.py --no-guide --price-below 15 --cap-min 50 --cap-max 300 --strategies S10,S20 --top 20 | | 放量突破 | python run_screening.py --no-guide --strategies S08 --top 20 | | 趋势 / 海龟 / 动量 | python run_screening.py --no-guide --strategies S09,S16,S17 --top 20 | | 全部策略综合打分 | python run_screening.py --no-guide --strategy-mode weighted --top 20 | | 全部市场全面覆盖 | python run_screening.py --no-guide --market 全部 --full-market --top 20 |

其他自然语言表述可用 python intent.py "你的描述" 自动解析为策略/市场/组合建议(确定性规则映射)。完整命令参数见上方代码块。


Agent / 自动化调用执行指引(强制执行)

本 Skill 由智能体(Agent)代为执行时,必须遵循以下规则,否则会触发交互式引导阻塞或全量无谓耗时:

  1. 始终追加 --no-guide:交互式引导向导依赖终端实时输入,Agent 场景下会阻塞等待数分钟。
    python run_screening.py --no-guide --market A股 --top 20 --format all
    
  2. 显式指定 --market:不要留空让 _quick_prompt 询问(Agent 环境无交互输入时按默认 A股 执行,与用户意图可能不符)。
  3. 默认走快路径(强制,防全量无谓耗时):未经用户明确要求"全市场/全面/覆盖更多"时,一律用快速档执行——--quick(候选池500/输出20/文本报告,约 10s 出结果)或 --cap ≤300;full 全量模式(候选池1000、冷启动约 15s 量级)仅在用户明确要求时才使用如实说明:cap/quick 候选池按市值降序抽样,可能漏掉中等市值高分股(200 只漏选率约 65%、500 只约 40%),需要完整结果时用 full 全量。若用户只要技术面结果,用 --strategies S01,S05,S08 等子集可跳过估值/财务/资金流请求。
  4. 明确输出格式:Agent 需要结构化结果时用 --format json(JSON 含 total_passed 真实通过总数与逐标的 strategy_results);面向用户展示用 --format texthtml
  5. 数据时效:K线缓存与结果级缓存(财务摘要/估值/资金流)写入后至次日 15:30 前有效(当日收盘后重复提问直接命中缓存,零网络往返,不再全量重拉);需要强制刷新时用 --no-cache(同时绕过 K线与结果级缓存)。
  6. 同一交易日多次提问:不要重复执行同参数全量命令——缓存已命中,重复命令仅浪费 Agent 轮次;财务/估值当日缓存对选股场景足够(财务本身滞后1-4个月),盘中需要最新估值快照时才用 --no-cache
  7. 回测与存档为可选--backtest(历史K线信号回放,抽样20只×500日)与 --track(本地SQLite存档)会增加耗时,仅在用户明确要求时启用。
  8. 准确引用结果:报告中的 total_passed 是未截断的真实通过数;展示名单可能按 --top 截断,向用户汇报时区分"通过 X 只,展示前 N 只"。

回答模式(人性化双模式,强制执行)

Agent 应根据用户的表达习惯与明确意愿,在以下两种回答模式间灵活切换,每个环节(触发判断、参数确认、执行方式、结果汇报)都提供两种回答,不强制固定格式:

模式一:简单回答(用户明确要简洁时)

用户说"简单点""简短说""只要结果""直接告诉我""快一点"等,或明显只想要一个结论时,采用本模式:

  1. 结果汇报:用 1-3 句话给出结论——筛选市场、通过只数、评分最高的前 1-3 只(代码+名称+评分)、一句话总体说明。不输出完整表格、不展开策略理由、不附加长篇报告。
  2. 执行方式:能直接回答的不跑命令;需要数据支撑时用快速档 --quick --no-guide --market <市场> --top 10(候选池 500 只、文本报告,耗时显著缩短),不再全量拉取。
  3. 参数确认:不追问细节参数,直接采用默认参数(默认市场 A股 / 默认全部策略 / 加权模式);用户对结果不满意时可再补充说明。
  4. 触发判断:不做多余铺垫,直接给答案。
  5. 合规底线:简单回答也必须保留一句话风险提示("以上为筛选结果,不构成投资建议")。

模式二:标准回答(默认,但先快后全)

用户未明确要求简洁,或需求较复杂(多市场、组合策略、多周期、回测、具体参数)时,采用本模式:

  1. 结果汇报先给 3 行以内摘要(市场、通过只数、评分最高前 1-3 只代码+名称+评分),再按需输出完整报告(--format all/text/html,含大盘环境、策略统计、筛选名单、理由、风险声明)或 JSON 结构化数据——首答快、细节按需展开,不一次性堆砌。
  2. 执行方式默认先走快路径--quick--cap ≤300,约 10s 出结果);用户明确要求"全市场/全面/覆盖更多"时才用 full 全量(候选池1000、冷启动约 15s 量级,随网络波动)。完整参数按用户意图配置(市场/策略/组合模式/权重/多周期/回测等)。
  3. 参数确认:关键参数(市场、策略范围、输出数量)在运行前用一句话确认,避免与用户意图不符。
  4. 触发判断:先给出 Skill 能力概述与本次执行方案(一句话),再执行。
  5. 合规底线:完整报告末尾必须附标准风险声明。

模式切换规则

  • 用户说"简化""太长了""只要排名""别废话" → 立即切换简单模式;
  • 用户说"详细点""要完整报告""分析一下" → 切换标准模式;
  • 无法判断时默认标准模式,但结果汇报先给 3 行以内的摘要,用户需要再展开(兼顾效率与完整)。

性能细节(默认快路径与缓存策略见「Agent / 自动化调用执行指引」)

  • 并发调优:批量获取并发 64(较 32 提速约 31%);K线/财务/资金流全部受益。
  • 通道故障快速收敛:push2his 历史节点持续不可达时,本会话自动跳过探测、直接走备选公开通道(腾讯/新浪K线、push2 实时/延迟资金流),避免每只股票重复探测不可达节点,冷启动显著提速(不可达环境下单只K线请求约八成耗时来自失败探测,现已消除)。
  • 缓存覆盖全链路:同一交易日重复提问直接命中 K线缓存 + 结果级缓存(财务/估值/资金流)+ 大盘环境缓存(指数K线/宽度统计,均当日有效);启动耗时参考——热启动约 5s、冷启动 quick 约 10s / full 约 14s(网络成本,随网络波动)。

新用户交互式引导向导

概述

Skill 内置交互式引导向导(scripts/guide.py),新用户首次运行 run_screening.py 时自动启动。引导流程通过东方财富公开API实时获取真实数据作为每一步的建议依据,绝不编造数值。

引导关闭方式:引导完成并执行筛选后写入标记文件(~/.multi_strategy_quant_research_pro_guide_done),下次运行自动跳过;亦可通过 --no-guide 跳过。引导中任一环节输入 q 退出 / n 取消则不写标记,下次仍会引导。

每次运行的合规引导:即使引导已关闭,每次运行仍会提供合规提示与轻量市场询问(明确区分 A股/港股/美股/全部),确保用户明确知晓所选市场与数据能力边界后再执行筛选。

引导流程(7步)

| 步骤 | 名称 | 说明 | 数据来源 | |------|------|------|---------| | 1 | 欢迎页 | 展示Skill功能、23种策略概览、风险提示 | 配置与策略注册表 | | 2 | 环境检测 | 真实调用6个东方财富API接口测试连通性 | push2.eastmoney.com / push2his.eastmoney.com | | 3 | 市场选择 | 查询A股/港股/美股当前可获取的真实股票数量 | 三大市场列表接口实时查询 | | 4 | 策略适配 | 按所选市场获取对应指数真实K线(A股:上证+深证 / 港股:恒生+国企 / 美股:道琼斯+纳指),MA均线判断多空并展示,提供激进/稳健/保守三套策略方案供选择(或自定义策略ID / 保持全部) | 对应市场指数近60日K线(config.INDEX_SECIDS) | | 5 | 参数配置 | 引导设置输出形式(含动态组合/仅控制台)、回复详细度(简洁/标准/全量)、TOP-N、策略模式、多周期等 | 配置项 | | 6 | 执行确认 | 预览完整配置并执行筛选 | 继承引导预设参数 | | 7 | 档案追踪 | 询问是否开启策略表现档案库(本地SQLite,可选) | 本地配置项 |

设计原则

  • 不强制起点:用户可从任意环节切入(--step market_select
  • 自由导航:每步可跳过 (s)、返回 (b)、退出 (q)
  • 真实数据驱动:环境检测、市场数量、策略适配全部基于API实时返回
  • 非强制--no-guide 跳过、标记文件记忆"下次不再显示"

CLI 控制

# 跳过引导直接执行
python run_screening.py --no-guide

# 强制启动引导
python run_screening.py --guide

# 从指定步骤启动引导
python guide.py --step strategy_recommend

配置项

# config.py
GUIDE_ENABLED = True            # 全局引导开关
GUIDE_SKIP_ON_FLAGFILE = True   # 引导完成后写标记文件,下次跳过
GUIDE_FLAGFILE = ".multi_strategy_quant_research_pro_guide_done"  # 标记文件名(位于 HOME 目录)

环境检测接口清单

引导步骤2会依次测试以下6个东方财富公开API:

| 接口 | URL | 验证方式 | |------|-----|---------| | A股列表 | push2.eastmoney.com/api/qt/clist/get?fs=m:0+t:6,... | 检查返回 total 字段 | | 实时行情 | push2.eastmoney.com/api/qt/ulist.np | 检查贵州茅台+平安银行实时行情 | | 日K线 | 79.push2his.eastmoney.com/api/qt/stock/kline/get | 检查贵州茅台日K线 | | 港股列表 | push2.eastmoney.com/api/qt/clist/get?fs=m:128+t:3,... | 检查返回 total 字段 | | 美股列表 | push2.eastmoney.com/api/qt/clist/get?fs=m:105+t:3,... | 检查返回 total 字段 | | 估值数据 | push2.eastmoney.com/api/qt/stock/get | 检查贵州茅台估值字段 |

策略适配逻辑

引导步骤4按当前所选市场(A股:上证000001+深证399001 / 港股:恒生HSI+国企HSCEI / 美股:道琼斯DJI+纳斯达克IXIC;"全部"模式以A股大盘为参考)取对应指数真实近60日K线,计算 MA5/MA20/MA60 判断大盘多空并如实展示。

大盘环境仅供用户参考,策略推荐改为三套方案(基于各策略真实算法逻辑分类,覆盖全部23种策略,无重复无遗漏,不构成收益承诺与投资建议):

  • [1] 激进·进取型:进攻性较强、波动相对较大,适合风险承受能力较高者(S01/S02/S08/S09/S14/S16/S17/S19/S20/S21/S22/S23)
  • [2] 稳健·均衡型:技术面与基本面兼顾,攻守相对均衡(S03/S05/S11/S12/S13/S15/S18)
  • [3] 保守·防御型:以防御为主、波动相对较小,追求安全边际(S04/S06/S07/S10)

用户可输入 1/2/3 选择方案,或输入策略ID逗号分隔自定义,或 Enter 保持全部启用。所有策略判定仍基于真实数据,方案仅改变启用的策略子集。

所有适配均基于真实指数数据计算,不做主观判断。


数据源声明

| 接口 | URL | 用途 | |------|-----|------| | 行情列表 | push2.eastmoney.com/api/qt/clist/get | A股/港股/美股全市场列表 | | 实时快照 | push2.eastmoney.com/api/qt/ulist.np | 股票实时行情 | | 日K线 | 79.push2his.eastmoney.com/api/qt/stock/kline/get | 日/周K线(主通道) | | K线备选 | proxy.finance.qq.com/ifzqgtimg/appstock/app/fqkline/get | A股/港股K线备选通道(push2his不可达时自动切换) | | K线备选 | stock.finance.sina.com.cn/usstock/api/jsonp.php/...US_MinKService.getDailyK | 美股全历史日K备选通道 | | 估值数据 | push2.eastmoney.com/api/qt/stock/get | PE/PB/PS/股息率/总市值 | | 财务摘要 | datacenter-web.eastmoney.com/api/data/v1/get(reportName=RPT_F10_FINANCE_MAINFINADATA / RPT_HKF10_FN_GMAININDICATOR / RPT_USF10_FN_GMAININDICATOR) | ROE/EPS/毛利率/净利率等(A股/港股/美股三市场真实可用,字段语义同构);多年度ROE序列(S18)取同报表多期按自然年提取年度ROE(A股 ROEJQ / 港股美股 ROE_AVG) | | 档案回测 | 79.push2his.eastmoney.com/api/qt/stock/kline/get | 获取最新收盘价用于收益率计算 |

行情/列表/估值接口均为东方财富公开行情 API(push2his 不可达时K线自动切换腾讯/新浪公开通道),无需认证,数据延迟 3-5 分钟(非 Level-2)。


策略表现档案库

概述

策略表现档案库是一个可选模块,用于追踪每次筛选结果的真实市场表现。数据全部存储在本地 SQLite 数据库中,绝不上传

功能

| 功能 | 说明 | |------|------| | 筛选快照 | 每次筛选执行时自动记录:市场环境、启用策略、候选数量、通过标的详情 | | 回测验证 | 7 个自然日后自动获取真实收盘价,计算 1 周 / 1 月收益率 | | 聚合统计 | 按策略维度聚合计算:胜率、平均收益、最佳标的、运行次数 | | 档案报告 | 生成 text/json 格式的策略表现报告,含排名、近期摘要、覆盖统计 |

使用方式

# 开启追踪(筛选完成后自动存档)
python run_screening.py --track

# 回填收益 + 刷新统计 + 执行筛选
python run_screening.py --analyze

# 回填 + 刷新 + 存档(组合使用)
python run_screening.py --track --analyze

# 仅生成档案报告(不执行筛选)
python run_screening.py --archive-report --format text
python run_screening.py --archive-report --format json

交互式引导:新用户引导第 7 步会询问是否开启档案追踪,选是后每次筛选自动存档。

数据安全

  • 纯本地存储:所有数据写入本地 SQLite 文件,不联网上传
  • 可随时重置:删除 archive/multi_strategy_quant_research.db 即清除所有档案数据,不影响核心功能
  • 默认关闭:默认不开启,需用户通过引导第 7 步或 --track 参数主动启用
  • 不修改策略权重:仅提供统计数据供参考,不自动调整策略参数

数据库表结构

| 表名 | 说明 | 关键字段 | |------|------|---------| | screening_log | 筛选执行记录 | run_id, market, strategy_ids, candidate_count, passed_count | | pick_performance | 入选标的跟踪 | stock_code, stock_name, strategy_id, snapshot_price, return_1w, return_1m | | strategy_stats | 策略聚合统计 | strategy_id, win_rate_1w, win_rate_1m, avg_score, best_pick_code |


已知限制

  1. 数据延迟:东方财富公开接口为免费数据,存在 3-5 分钟延迟,非 Level-2 实时数据
  2. 财报滞后:基本面数据基于最新已披露财报,滞后 1-4 个月
  3. 港股/美股覆盖限制:仅覆盖东方财富接口可访问的标的,部分小盘股/粉单市场不在覆盖范围
  4. 港股/美股数据能力边界:以「核心筛选流水线 → 阶段二」市场能力表为准(财务摘要字段与周线/资金流能力差异均以该表如实标注)。补充:财务摘要类策略(S07 的 ROE 防线、S12/S13/S14/S18 多年ROE)在港股/美股基于真实财务数据判定;S15 资金流辅助条件在美股无对应公开口径时如实不可用(技术面核心仍可独立通过);资金流多日历史优先走 push2his 历史节点,全部历史节点不可达时回退 push2 实时/延迟节点(延迟节点下可能仅最近1日,如实降级)
  5. 接口稳定性:东方财富公开接口非官方 API,存在接口变更风险;所有接口调用均标注 URL 和参数,变更时便于定位维护。K线接口已内置腾讯/新浪公开备选通道,单通道不可达时自动切换,不影响回测与技术面策略;并内置 K线新鲜度自检:以市场实时最新交易日为基准,自动识别并消除数据源偶发缓存滞后(陈旧K线自动重拉一次,重拉仍陈旧则如实提示),杜绝静默使用陈旧K线参与选股
  6. S12 现金流质量策略依赖财务数据API,部分字段可能因接口返回格式变化而取不到值,此时策略结果中会标注为实际数据不满足阈值而非假数据
  7. S18 多年度ROE严格校验依赖多期财务报表:上市不足 S18_YEARS 年(默认3年)、或无有效年度 ROE 数据的标的,因无法完成逐年严格校验而如实不通过;年度 ROE 仅统计已完结自然年(当年中报/三季报不计为年度值,避免半年报单期 ROE 误判)
  8. S19 MACD金叉择时为纯技术面策略:金叉窗口默认近20个交易日,上升趋势确认可通过 S19_REQUIRE_TREND 关闭;K线不足60根的标的如实不通过(数据不足),不伪造信号
  9. S20 资金流策略依赖逐日资金流向数据:A股/港股在 push2his 历史节点可达时返回多日数据;延迟节点通常仅最近1日,数据不足时如实不通过(不伪造连续天数);美股无公开资金流口径,如实不通过
  10. S21 多周期共振依赖周K线数据:A股/港股有公开周线接口;美股无公开周线接口,如实不通过;周线不足13根的标的如实不通过
  11. ATR 止损止盈位为基于历史波动率的风险参考(2倍ATR止损/3倍ATR止盈),不构成投资建议或收益承诺;实际止损止盈应结合个人风险承受能力与市场环境调整
  12. S23 均线趋势风控依赖日K线:K线不足60根的标的如实不通过(数据不足);风控五条件全通过才入选,任一条件不满足(如 RSI 超买、无量反弹、高位放量滞涨)如实不通过,不伪造信号
  13. 定向筛选(--price-below/--cap-min/--cap-max)仅适用于 A股,按最新价升序拉取并过滤 ST/退市/新股;资金流多日历史依赖 push2his 历史节点,全部历史节点不可达时回退实时/延迟节点(延迟节点下可能仅最近1日,S20 因数据不足如实不通过,不伪造连续天数)
  14. 单股诊断(run_diagnose.py)输出当前技术状态与全部策略信号、S09 趋势回测绩效与综合技术判断(偏多/偏空/观望),为技术形态参考,不构成投资建议或买卖指令
  15. 代码审计(run_audit.py)为确定性静态规则扫描(AST/正则),仅读取分析、不执行不修改被测代码;结果供人工复核,不保证穷尽所有安全问题

风险声明(强制执行)

以上为技术形态与基本面筛选结果,不构成投资建议。股市有风险,投资需谨慎。请结合基本面与自身风险承受能力独立决策。


审计与可复现性

  • 所有策略代码均位于 scripts/strategies/*.py,函数名以 check_ 开头,无外部依赖
  • 所有数据获取函数均标注数据源 URL 与参数说明,位于 scripts/data/*.py
  • 所有判定逻辑为纯数学运算,无随机性,同数据必同结果
  • 配置参数全部集中在 scripts/config.py,可自定义所有策略阈值
  • 缓存机制位于 scripts/cache/__init__.py,使用 --no-cache 强制刷新
  • 一键自检:python scripts/validate.py(frontmatter 合规 / 版本一致性 / 引用完整性 / 策略注册表一致性 / 语法 / 表述规范性 / 诊断·审计·定向筛选模块完整性)
  • 单股诊断:python scripts/run_diagnose.py --code <代码>(技术状态 + 全策略信号 + S09 回测)
  • 代码审计:python scripts/run_audit.py --target <文件或目录> --mode security/concurrency/all(静态扫描,不执行被测代码)

版本更新日志

| 版本 | 日期 | 主要变更 | |------|------|----------| | 1.1.2 | 2026-08-31 | 全量代码审计与缺陷修复、能力口径对齐:①因子层:删除与经营现金流质量数学恒等的重复因子,因子总数由48收敛为47(技术18/价值9/质量9/成长6/资金5),统一价值类因子为百分比口径、补齐成对缺失值过滤,修正年度序列倒序导致变化量因子符号反转的问题;②因子正交化重写:按标准化前残差方差计算真实解释度、投影显式中心化、固定设计矩阵列数,修复全空截面异常与协变量缺失越界;③多周期共振:按指标成熟度门槛(MACD需28根、RSI需15根)评分,子项不足时按可评满分归一并如实返回“未知”,不再输出确定性误判;④回测:平均持仓天数改为买卖日期真实配对计算,参数优化目标指标贯通过程与文案;⑤组合优化:单票上限不可行时自动放宽到可行值并回传生效上限,修复未封顶资产权重和小于1的投影缺陷;⑥市场环境:策略适配映射覆盖全部23个策略,修正海龟交易/长期蓄力/均线趋势风控归类,环境键统一为“震荡市”,重点推荐与次选列表互斥不重叠;⑦数据层:分钟K线解析对占位符容错不中断、异常波动阈值按A股与港美股口径区分、零成交全序列检测、去除完整性重复扣分与无效死条件;⑧结构与质量:补齐 core 包导出、收敛重复的均线与分层回测实现(并修复分层回测因子区间与多空差两处无法运行的缺陷)、清理死变量与冗余 f 前缀、全库字符串格式化统一为 f-string、HTML 报告动态文本统一转义、策略最小K线说明与代码对齐;⑨同步更新一键自检与本文档。所有改动经确定性数据回归与模块全量导入验证。结果基于历史数据,不构成投资建议。 | | 1.1.1 | 2026-08-31 | 正式更名与多轮能力升级、四轮全维度验证与缺陷修复:①正式更名:由「多策略量化筛选」更名为「多策略量化研究」,slug 优化为 multi-strategy-quant-research-pro,中文名与 slug 全库对齐、无旧名残留,description 与上架短描述按真实能力精简重写,版本统一迭代至 1.1.1(功能与代码逻辑不变);②内容优化:合并重复的提速说明(默认快路径与缓存策略以「Agent / 自动化调用执行指引」为唯一权威)、市场能力口径收敛为单一权威表并精简已知限制、精简 1.0.2-1.0.5 历史版本日志、新增常用意图速查表;③六轮能力升级:新增 A股候选池定向筛选(data/a_share.py + run_screening.py --price-below/--cap-min/--cap-max,过滤 ST/退市/新股、市值元→亿区间过滤,实测定向筛选 500 只真实返回);新增 S23 均线趋势风控策略(MA20 向上/连续站稳 MA20/依托 MA60/非无量反弹/无高位见顶五条件,真实筛选命中 8 只);新增单股持有/离场诊断(run_diagnose.py --code,长飞光纤 601869 实测输出"偏多(持有)");新增交易代码静态审计(run_audit.py + audit/,12 类安全规则+并发审计,AST 静态扫描不执行被测代码,三类样例全部检出真实问题);validate.py 自检扩展至 S01-S23 并新增诊断/审计/定向筛选模块检查,SKILL.md 全量同步(架构/策略清单/CLI/意图速查/已知限制);④全维度验证与缺陷修复(四轮):修复扩展数据层 9 个数据源接口响应解析错误并补统一网络异常降级(分红历史/财务三表/融资融券/股东人数/龙虎榜等实测真实返回);修复 2 处接口缺陷(fetch_northbound_holding 北向持股移除东财已删除的 MARKET_CODE 过滤字段、fetch_minute_kline 改共享 kline_get 多节点容灾+备选公开通道,实测真实返回);删除与主流程重复冲突的 core/intent_parser.py(意图解析统一由 scripts/intent.py 承担,validate 自检同步);清理死代码与孤立模块(value.py _safe_div、quality.py annotate_source、response_engine.py format_table、reports/html_charts.py);激活多因子合成与 IC 检验公共 API(等权/IC加权/自定义权重/因子筛选/排名标准化/单因子综合评估,真实可调用);修正因子 IC 检验中 IR 硬编码占位(单期截面如实返回 None,不伪造);增强代码审计 2 处规则(锁外共享状态修改检测、实盘成本参数子串匹配,回归样例全通过);独立能力层 19 项全量实证(core 可观测性/错误自愈/多模式回复、self_evolution、market_regime、portfolio、position、backtest、indicators、archive、reports——0 表面功能);板块排行单页上限按服务端实际截断适配;美股数据层说明与实际能力对齐;config 顶部描述改为正式口径。版本号维持 1.1.1 不变。 | | 1.1.0 | 2026-08-30 | 新增组合优化器(portfolio/ 模块):Markowitz均值方差、风险平价、最小方差、最大夏普四种优化模型,支持单票上限/行业上限/换手率约束,从选股升级到仓位配置。新增因子正交化(factors/orthogonal.py):因子相关性矩阵计算+Schmidt正交化+市值/行业/波动率中性化,正交后重新计算IC,消除因子共线性。回测精度升级:行业中性回测+5层分组回测+因子衰减曲线+过拟合检测(样本内外对比),回测结果更可靠。新增动态仓位管理(position/ 模块):凯利公式+ATR波动率+风险平价+信号强度四级仓位模型,每只股票仓位根据信号强度和波动率动态分配。新增风格中性化:市值/行业/波动率/Beta四维中性,选股结果自动调整避免集中度风险。新增多时间框架共振:月线定大趋势+周线定中期+日线定买点,三级共振评分过滤假信号。新增市场宽度指标:涨跌家数比+新高新低+ADL腾落指数+均线以上占比,市场宽度差时自动降仓。HTML报告可视化升级:自包含交互式 HTML 选股报告(大盘指数仪表盘、市场宽度、策略通过率统计条、可排序/筛选结果表、K线迷你图、行业分布热力图、历史回测表),纯CSS/JS实现无外部依赖。新增信号质量过滤:假突破识别+量能确认+多指标共振,信号质量0-100评分。新增数据质量保障层:复权处理+异常值检测+完整性校验+数据来源标注。性能优化:向量化计算+预计算+智能缓存,全市场扫描提速。自然语言意图深度解析:参数自动提取+模糊意图+多轮上下文+否定识别。多模式回复引擎:新手/专业/极简三模式自动切换。错误自愈与降级:数据源自动切换+部分结果输出+超时降级+熔断机制。可观测性与自诊断:请求次数+耗时+失败率+缓存命中率运行报告。版本号升级为1.1.0。所有数据均为公开接口真实返回,回测结果不代表未来收益,不构成投资建议。 | | 1.0.9 | 2026-08-30 | 新增真实回测引擎(backtest/ 独立模块):事件驱动框架,严格无前视偏差;模拟真实交易成本(佣金万2.5+印花税千1+滑点0.1%);涨跌停/停牌如实处理(涨停买不进、跌停卖不出、停牌跳过);支持三种退出模式(信号驱动/固定持有期/ATR止损止盈);输出10+绩效指标(总收益/年化/最大回撤/夏普/索提诺/卡玛/胜率/盈亏比/月度收益);支持参数网格遍历优化与多策略净值对比。新增 run_backtest.py 独立回测入口:支持单策略回测、多策略对比、参数优化三种模式,输出文本/JSON报告。数据层扩展(data/extended.py):新增分钟K线(1/5/15/30/60分钟)、财务三表(资产负债/利润/现金流)、龙虎榜、融资融券、北向资金持股、分红历史、股东人数变化,共9类扩展数据源,全部来自东方财富公开API。新增因子库(factors/ 独立模块,48个因子5大类):技术因子18个(MA排列/EMA趋势/MACD柱/RSI/布林位置/ADX/ATR/KDJ-J/CCI/威廉/OBV趋势/1M/3M/6M动量/5日反转/20日波动率/量比/20日乖离)、价值因子9个(EP/BP/SP/股息率/PE反向/PB反向/PCF反向/PEG反向/价值综合)、质量因子10个(ROE/毛利率/净利率/负债率反向/经营现金流质量/ROE稳定性/毛利率扩张/利润现金转化率/资产质量综合/盈利质量)、成长因子6个(营收增速/利润增速/成长加速/成长稳定性/ROE变化/成长综合)、资金因子5个(主力净流入率/连续流入天数/北向持股变化/融资余额变化/龙虎榜净买入);含因子IC/IR有效性检验(Spearman秩相关+分层回测)与多因子合成(等权/IC加权/自定义权重+z-score标准化)。新增自进化引擎(self_evolution/ 独立模块):知识库(JSON存储历史回测/参数优化/市场环境记录,自动过期清理)、参数自适应(基于历史表现向最优参数方向逐步调整,学习率0.3防过拟合,最小样本3次,参数边界约束)、因子权重动态调整(基于IC/IR自动加权,最低权重5%保障,新旧权重平滑过渡)、策略优胜劣汰(综合得分=胜率40%+收益30%-回撤30%,自动推荐Top N/黑名单弱表现策略,市场环境适配推荐)。新增市场环境引擎(market_regime/ 独立模块):市场环境检测(基于大盘指数MA20/MA60排列+20日动量+年化波动率+量比,判断牛市/熊市/震荡市+置信度+仓位建议)、行业轮动分析(强势/弱势行业+分化度+轮动方向+热点概念)、策略推荐(不同市场环境下的策略适配映射+组合模式+仓位建议)。版本号升级为1.0.9。回测结果为历史数据统计,不代表未来收益,不构成投资建议。 | | 1.0.8 | 2026-08-30 | 新增 S20 资金流策略:近10日主力净流入率≥3% 或 连续≥3日主力净流入为核心通过条件,量价资金背离为辅助加分;A股/港股可用,美股无公开口径如实不通过。新增 S21 多周期共振策略:日线趋势(收盘>MA20且MA20上行)与周线趋势(周收>周MA10且周MA10上行)同时满足,周线定方向日线定时机;修改组合引擎透传周线参数至策略函数。新增 S22 相对强度策略:近20日涨幅≥15%且收盘>MA20(中期强度)+ 近5日涨幅>0(短期加速),放量确认为辅助加分;纯技术面三市场可用。新增 ATR 止损止盈模块(risk_management.py):每只入选标的自动计算 2×ATR(14) 止损位、3×ATR(14) 止盈位、波动率与盈亏比,CSV 报告新增「止损位/止盈位/波动率/盈亏比」四列。新增组合风险指标:行业分散度、第一大行业集中度、建议持仓数量区间,随报告输出。策略历史回测(backtest.py,--backtest 开启,已有能力):真实K线逐日信号回放,无前视偏差,输出各策略5日/20日持有期胜率与平均收益(HTML报告展示,如实标注幸存者偏差)。策略总数扩展至 22 种(S01-S22);自然语言意图新增「资金流/主力净流入/多周期/周线共振/相对强度/强势股」关键词;引导三套方案加入新策略;validate 自检扩展至 S01-S22;修复 archive/guide/run_screening 模块版本注释残留(v1.0.5→v1.0.8);全维度结构验证与缺陷修复:S01-S05 补齐子条件命中字段(CSV 子条件列全覆盖 22 策略)、make_result 兜底确保 details 始终含 conditions 键、intent 新增 S04 横盘调整关键词映射(22 策略全覆盖)、清理 config 未引用死参数(REPLY_LEVEL_DESC/FULL_MARKET_CAP)、SKILL.md 策略签名/按需取数/已知限制/资金流口径/回测能力描述与代码逐行对齐、交付包按标准结构打包(根目录直接 SKILL.md + scripts/,解包即用)。 | | 1.0.7 | 2026-08-30 | 新增 S19 MACD金叉择时策略:近 S19_CROSS_DAYS(默认20)个交易日内 DIF 上穿 DEA(金叉)为核心通过条件,记录金叉触发日期与距今天数;上升趋势确认(收盘>MA20 且 MA20 上行 且 DIF>0)计入通过判定(S19_REQUIRE_TREND 可关闭);纯技术面三市场可用,零额外数据依赖,与 S05(MACD底背离抄底)形成"反转+顺势"互补。--full-market 扩展至单市场:此前仅「全部」市场支持全量,现 A股/港股/美股单市场亦可 --market A股 --full-market 按接口真实 total 拉满(不做市值抽样)。候选池全量覆盖增强:全量模式分页上限 60→100 页(延迟节点每页约100条,A股全量需55+页),新增空页重试(延迟节点偶发瞬时空响应),显著提升延迟通道下的全市场实际覆盖率。报告增强:CSV 新增「信号时间窗」列(各策略信号触发日期,如 S19 金叉日)与「子条件命中」列(各策略内部子条件 ✓/✗ 状态,交集模式可直接看到每只命中了哪些子条件),支持 Excel/WPS 直接排序筛选。联动更新:config 新增 S19 参数与权重;策略注册表扩展至 19 种(S01-S19);自然语言意图解析「金叉/macd金叉/金叉择时/日线金叉」→ S19(此前「金叉」误映射到 S05 底背离,已修正);引导激进·进取型方案加入 S19;validate.py 自检扩展至 S01-S19;修复 config.py 顶部版本注释残留(v1.0.5→v1.0.7)、intent.py「17种」残留、guide.py「18种」残留。三案例真实跑通验证:案例1(S18∩S06 高股息价值)8只、案例2(S19 MACD金叉择时)正式策略输出、案例3(S08∩S11 放量突破+筹码集中)1只。 | | 1.0.6 | 2026-08-30 | 新增 S18 多年度ROE严格校验策略:数据层新增多年度 ROE 序列获取(A股 RPT_F10_FINANCE_MAINFINADATA / 港股美股 GMAININDICATOR,取多期报表按自然年提取年度 ROE),S18 严格校验最近 3 个完整自然年年度 ROE 逐年 ≥15%(任一年不达标或数据不足即不通过),另要求最新报告期 ROE 达标(可配置关闭),技术面均线上方辅助加分;三市场真实可用,与 S13 单期 ROE 杜邦形成"单期+多年"互补。新增全市场全量覆盖模式(--full-market)--market 全部 --full-market 时三市场候选池按接口真实 total 拉满(A股/港股/美股全量覆盖,不做市值抽样截断),仅候选池即数千~上万只、耗时显著增加,仅在用户显式要求全市场时启用;数据层候选池函数支持 cap=None 全量分页自适应。联动更新:config 新增 S18 配置与 ROE_HISTORY_STRATEGIES;策略注册表扩展至 18 种(S01-S18);自然语言意图解析新增多年/连续/严格 ROE → S18 并覆盖泛化 S13;引导三套方案与全部市场能力提示同步;validate.py 自检扩展至 S01-S18 并保持版本一致性检查;SKILL.md 按标准 Skill 结构维护(顶层仅 SKILL.md 与 scripts/)。多年度 ROE 仅统计已完结自然年(当年中报/三季报不计为年度值),边界行为如实标注。 | | 1.0.5 | 2026-08-28 | 资金流多通道增强(S15:push2his 多节点容灾 + push2 实时/延迟回退,来源如实标注);性能强化(push2his 会话级故障快速收敛、候选池分页自适应凑满、市场宽度多页并发);K线新鲜度自检与估值口径交叉核验;新增 CSV 报告导出、数据健康度报告、--override 运行时阈值覆盖、缓存自动清理;策略边界数值清洗 408 组合实测零崩溃;回复人性化(--format 动态组合/print、--level 三级详细度、引导三套策略方案、偏好落盘);A股财务摘要批量接口提速;结构标准化(frontmatter 精简、交付仅 SKILL.md+scripts/) | | 1.0.4 | 2026-08-26 | 三市场全功能化:港股/美股接入东财数据中心财务摘要(GMAININDICATOR,港股75/美股49字段),财务类策略基于真实财务数据判定;港股接入个股资金流(push2 fflow 116.xxx)。人性化与功能:市场名/别名输入、--quick 快速模式、--auto-weights 自进化权重、结果级缓存(--no-cache 强制刷新)、自然语言选股意图解析(intent.py,确定性规则映射)、多因子画像与支撑/压力位、报告【数据质量】段。修复:intent 否定词误匹配、盘中缓存时效、候选池抽样扩容、排序确定性。性能:批量并发 32→64。合规:风险声明全覆盖 | | 1.0.3 | 2026-08-24 | 结构标准化;修复档案库收益回填缺陷;清理代码残留与风格告警;新增一键自检脚本;金融合规核验(风险提示/免责声明全覆盖) | | 1.0.2 | 2026-08-24 | 首发:A股/港股/美股三市场量化选股引擎,17 种真实可审计策略(S01-S17),并集/交集/加权组合模式,交互式引导向导,文本/JSON/HTML 三格式报告,本地 SQLite 策略表现档案库;数据层采用东方财富公开行情主通道 + 腾讯/新浪公开K线容灾,零外部依赖 |

(版本记录以当前交付内容为准;历史版本条目为简要说明)

(说明内容以实际代码与市场数据为准,仅供参考)