问小达选板块 使用指南
技能概述
本技能提供市场板块智能筛选能力,帮助用户快速找到符合特定条件的板块。通过自然语言查询,支持多种筛选维度的组合。
核心功能
支持的筛选维度
| 维度 | 说明 | 示例 |
|---|---|---|
| 估值筛选 | 按 PE、PB、估值分位等指标筛选 | 市盈率低于20的板块、PB排名前10 |
| 资金流向 | 按主力资金净流入、北向资金等筛选 | 主力净流入的板块、北向资金持续流入 |
| 涨跌幅 | 按涨幅、跌幅排序筛选 | 涨幅前5的板块、跌幅榜 |
| 板块类型 | 区分行业板块、概念板块、地域板块 | 概念板块、行业板块 |
| 成交量 | 按成交额、换手率筛选 | 放量上涨、换手率超过5% |
| 多条件组合 | 多个条件组合筛选 | 涨幅前3且主力净流入的行业板块 |
数据来源
- 主要数据源: 通达信问小达 (tdx_screener)
- 辅助数据源: 通达信行情数据、资讯数据
使用流程
步骤 1: 接收用户查询
接收用户的自然语言选板块请求,分析用户意图和筛选条件。
用户输入示例:
- "涨幅前5的板块"
- "今天资金流入最多的概念板块"
- "市盈率低于20的行业"
步骤 2: Query 改写与标准化
将用户的口语化表达改写为标准的金融查询语句。
改写规则:
- 保留核心意图(涨幅、资金流入、估值等)
- 将口语转为标准术语("涨得好的" → "涨幅前五")
- 适当简化复杂条件
- 保持原意不变
- ⚠️ 关键:遵循NLP解析器词序敏感性规则,板块分类关键字必须前置
标准化示例:
| 用户输入 | 标准化 Query |
|---|---|
| 帮我选涨得好的概念板块 | 概念板块涨幅前五 |
| 今天流入最多的概念板块 | 概念板块主力净流入前五 |
| 昨日涨幅前5的概念 | 概念板块昨日涨幅前5 |
| 市盈率低且换手高的行业板块 | 行业板块市盈率较低且换手率较高 |
| 涨幅前5的板块(默认行业) | 行业板块涨幅前5 |
步骤 3: 调用数据接口
使用 tdx_screener 工具查询板块数据:
tdx_screener message="<标准化的Query>" rang="ZS"
参数说明:
message: 标准化后的查询语句rang: 市场范围,板块查询使用 "ZS"(指数)
⚠️ NLP解析器词序敏感性
重要提示:通达信NLP解析器对词序非常敏感!
板块分类关键词的优先级规则
- 分类关键字必须前置:查询概念板块、行业板块时,分类关键字应放在筛选条件之前
- 默认行为:如果"板块"出现在句尾,系统默认解析为"行业板块"
正确的查询句式
| 意图 | ❌ 错误句式 | ✅ 正确句式 |
|---|---|---|
| 概念板块 | 昨日涨幅前5的概念板块 |
概念板块昨日涨幅前5` |
| 概念板块 | 涨幅前5的概念 |
概念板块涨幅前5 |
| 行业板块 | 概念板块昨日涨幅前5 |
行业板块昨日涨幅前5 |
| 行业板块 | 昨日涨幅前5(默认为行业) |
行业板块昨日涨幅前5 |
解析失败时的错误信号
- 错误信息:
"获取nlpseId失败!" - 此时需要调整查询句式,将分类关键字前置
调用策略
查询概念板块时:
- 优先使用:
概念板块<筛选条件> - 示例:
概念板块昨日涨幅前5、概念板块主力净流入前10
查询行业板块时:
- 可以使用:
<筛选条件>的板块(默认为行业) - 或明确指定:
行业板块<筛选条件> - 示例:
昨日涨幅前5、行业板块涨幅前5
查询地域板块时:
- 必须前置:
地域板块<筛选条件> - 示例:
地域板块昨日涨幅前5
步骤 4: 数据扩展决策(可选)
根据数据完整性决定是否需要补充信息:
数据完整: 直接格式化返回结果
需要扩展背景信息:
- 调用
tdx_api_data(entry="tdxf10_gg_rdtc", fixedTag="sjcd")获取相关资讯 - 调用
tdx_quotes获取实时行情 - 调用
tdx_api_data(entry="tdxf10_gg_ybpj", fixedTag="yzyq")获取研报观点
步骤 5: 格式化输出
组织语言回答用户,确保结果清晰易懂。
输出格式要求:
- 使用表格展示板块列表(排名、名称、涨幅、现价等)
- 说明数据来源
- 如果改写了问句,需说明最终使用的查询条件
数据返回格式
基础表格字段
| 字段 | 说明 |
|---|---|
| 排名 | 板块按筛选条件的排序位置 |
| 板块名称 | 板块的名称(行业或概念) |
| 涨跌幅 | 当日涨跌百分比 |
| 现价 | 板块指数当前价格 |
| 振幅 | 当日振幅百分比 |
| 成交量 | 当日成交量(手) |
| 换手率 | 当日换手率百分比 |
输出示例
今日涨幅前5的板块(数据来源于通达信问小达):
| 排名 | 板块名称 | 涨幅 | 现价 |
|------|----------|------|-------|
| 1 | 环境监测 | 4.65% | 988.18 |
| 2 | 锂电池 | 3.40% | 1042.53 |
| 3 | 公路货运 | 3.18% | 773.03 |
| ...
注意事项
重要提示
数据来源标注: 所有引用通达信数据的地方,必须强调数据来源于通达信问小达
数据有效性: 板块数据基于实时行情,可能存在延迟
查询限制:
- 单次查询最多返回一定数量的结果
- 复杂条件可能需要分步骤查询
错误处理:
- 如果 API 调用失败,给出友好错误提示
- 如果无数据返回,引导用户访问通达信客户端查询
- 最多重试 2 次,逐步放宽条件
用户引导
当无法获取数据或查询失败时,提示用户:
数据来源: 通达信 客户端下载: https://www.tdx.com.cn/
错误处理
常见错误场景
| 错误类型 | 错误特征 | 处理方式 |
|---|---|---|
| API 调用失败 | code: -1 |
显示错误信息,提示稍后重试 |
| NLP解析失败 | error: "获取nlpseId失败!" |
调整查询句式,将分类关键字(概念板块/行业板块)前置 |
| 无数据返回 | total: 0 |
提示条件可能过于严格,建议放宽条件或访问通达信客户端 |
| 网络超时 | 请求超时 | 提示检查网络连接,建议重试 |
| 条件过于复杂 | 多个条件组合错误 | 拆分为多个简单条件分别查询 |
重试策略
NLP解析失败时的修复:
- 检查查询语句中是否包含"概念板块"、"行业板块"、"地域板块"
- 将分类关键字移到查询语句最前面
- 重新调用
tdx_screener
常规重试:
- 重试次数: 最多 2 次
- 放宽条件: 每次重试适当放宽筛选条件
- 降级方案: 引导用户使用通达信客户端查询
使用示例
示例 1: 查询涨幅前列板块
用户输入: "涨幅前5的板块"
处理流程:
- 接收查询
- Query 改写: "涨幅前5的板块"(无需改写)
- 调用接口:
tdx_screener message="涨幅前5的板块" rang="ZS" - 格式化输出
示例 2: 查询概念板块涨幅
用户输入: "昨日涨幅前5的概念板块"
处理流程:
- 接收查询
- Query 改写: "概念板块昨日涨幅前5"(⚠️ 必须将"概念板块"前置)
- 调用接口:
tdx_screener message="概念板块昨日涨幅前5" rang="ZS" - 格式化输出
错误示例:
- ❌
昨日涨幅前5的概念板块→ NLP解析失败:"获取nlpseId失败!" - ✅
概念板块昨日涨幅前5→ 成功返回结果
示例 3: 多条件筛选
用户输入: "涨幅前3且市盈率低于20的行业"
处理流程:
- 接收查询
- Query 改写: "涨幅前3且市盈率低于20的行业板块"
- 调用接口:
tdx_screener message="涨幅前3且市盈率低于20的行业板块" rang="ZS" - 格式化输出
- (可选)调用资讯工具补充背景信息
技能调用约束
必须使用本技能的场景
当用户询问以下类型问题时,必须使用此技能:
- 板块筛选相关("涨幅前几"、"跌幅榜")
- 板块排行相关("资金流入最多"、"换手率最高")
- 板块类型筛选("行业板块"、"概念板块")
- 板块组合条件筛选("涨幅且资金流入")
- 板块估值筛选("市盈率低"、"PB估值低")
不适用场景
- 个股筛选(应使用【问小达选A股】)
- 基金筛选(应使用【问小达选基金】)
- ETF 筛选(应使用【问小达选ETF】)
- 板块内个股分析(应使用其他板块分析技能)