Back to skills
SKILL.md
2480 Design Eb8a3615
ASecurity系统已具备三个指数相关数据插件: - `tushare_index_basic`:指数基础信息(代码、名称、市场、类别、加权方式等) - `tushare_index_weight`:指数成分股及权重 - `tushare_idx_factor_pro`:指数技术因子(80+技术指标)
- 9 stars
- 0 votes
- 0 copies
- 0 views
- Added October 11, 2026
Works with
Security analysis
100/100npx -y skills add tools-only/X-Skills --skill 2480-design_eb8a3615 --agent claude-codeAre you the author of 2480 Design Eb8a3615?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/tools-only-2480-design-eb8a3615)# Design: 指数选股界面
## Context
系统已具备三个指数相关数据插件:
- `tushare_index_basic`:指数基础信息(代码、名称、市场、类别、加权方式等)
- `tushare_index_weight`:指数成分股及权重
- `tushare_idx_factor_pro`:指数技术因子(80+技术指标)
需要构建前端界面和后端API,将这些数据整合展示,并提供符合指数量化分析特点的AI分析功能。
## 数据源分析
### dim_index_basic(指数基础信息)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| ts_code | 指数代码 | 唯一标识 |
| name/fullname | 简称/全称 | 展示 |
| market | 市场(SSE/SZSE/CSI等) | 筛选分类 |
| publisher | 发布方 | 筛选分类 |
| index_type | 指数风格 | 筛选分类 |
| category | 指数类别 | 筛选分类 |
| base_date/base_point | 基期/基点 | 历史参考 |
| weight_rule | 加权方式 | 理解指数编制 |
| desc | 描述 | 展示 |
### ods_index_weight(成分股权重)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| index_code | 指数代码 | 关联 |
| con_code | 成分股代码 | 成分分析 |
| trade_date | 交易日期 | 时间维度 |
| weight | 权重(%) | 集中度分析、加权计算 |
### ods_idx_factor_pro(技术因子 - 完整指标清单)
#### 1. 基础行情
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| open/high/low/close | OHLC价格 | 价格走势 |
| pre_close | 昨收价 | 涨跌计算 |
| change/pct_change | 涨跌额/幅 | 短期表现 |
| vol/amount | 成交量/额 | 量能分析 |
#### 2. 均线系统(趋势判断核心)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| ma_bfq_5/10/20/30/60/90/250 | 简单移动平均线 | 趋势、支撑压力 |
| ema_bfq_5/10/20/30/60/90/250 | 指数移动平均线 | 趋势跟踪 |
| expma_12_bfq/expma_50_bfq | EMA指数平均数 | 中短期趋势 |
| bbi_bfq | BBI多空指标 | 多空判断 |
**均线分析逻辑**:
- 多头排列:MA5 > MA10 > MA20 > MA60 → 上涨趋势
- 空头排列:MA5 < MA10 < MA20 < MA60 → 下跌趋势
- 价格站上MA250(年线)→ 长期趋势向好
#### 3. MACD指标(趋势动量核心)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| macd_dif_bfq | DIF快线 | 短期动量 |
| macd_dea_bfq | DEA慢线 | 中期动量 |
| macd_bfq | MACD柱状图 | 动量强度 |
**MACD分析逻辑**:
- 金叉:DIF上穿DEA → 买入信号
- 死叉:DIF下穿DEA → 卖出信号
- 零轴上方金叉 → 强势买入
- 零轴下方死叉 → 强势卖出
- MACD柱由负转正 → 动量转强
- 背离:价格新高但MACD未新高 → 顶背离警告
#### 4. KDJ指标(超买超卖核心)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| kdj_k_bfq | K值(快线) | 短期超买超卖 |
| kdj_d_bfq | D值(慢线) | 中期超买超卖 |
| kdj_bfq | J值 | 敏感度最高 |
**KDJ分析逻辑**:
- K/D > 80 → 超买区域,注意回调风险
- K/D < 20 → 超卖区域,关注反弹机会
- 低位金叉(K<20时K上穿D)→ 买入信号
- 高位死叉(K>80时K下穿D)→ 卖出信号
- J值极端(>100或<0)→ 短期反转概率大
#### 5. RSI指标(相对强弱)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| rsi_bfq_6 | RSI(6日) | 短期强弱 |
| rsi_bfq_12 | RSI(12日) | 中期强弱 |
| rsi_bfq_24 | RSI(24日) | 长期强弱 |
**RSI分析逻辑**:
- RSI > 70 → 超买,可能回调
- RSI < 30 → 超卖,可能反弹
- RSI在50附近 → 多空平衡
- RSI6上穿RSI12 → 短期转强
#### 6. 布林带(波动通道)
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| boll_upper_bfq | 上轨 | 压力位 |
| boll_mid_bfq | 中轨(MA20) | 趋势中枢 |
| boll_lower_bfq | 下轨 | 支撑位 |
**布林带分析逻辑**:
- 价格触及上轨 → 短期压力
- 价格触及下轨 → 短期支撑
- 带宽收窄 → 即将变盘
- 价格沿上轨运行 → 强势上涨
- 价格沿下轨运行 → 弱势下跌
#### 7. 波动率指标
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| atr_bfq | 真实波动N日均值 | 波动率、止损设置 |
| ktn_upper/mid/down_bfq | 肯特纳通道 | 波动通道 |
| taq_up/mid/down_bfq | 唐安奇通道 | 突破交易 |
**波动率分析逻辑**:
- ATR扩大 → 波动加剧,风险增加
- ATR缩小 → 波动收敛,可能变盘
- 突破唐安奇通道上轨 → 趋势突破买入
#### 8. 成交量指标
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| obv_bfq | 能量潮指标 | 量价配合 |
| vr_bfq | VR容量比率 | 量能分析 |
| mfi_bfq | MFI资金流量 | 资金流向 |
**量能分析逻辑**:
- OBV上升+价格上涨 → 量价配合,趋势健康
- OBV下降+价格上涨 → 量价背离,警惕回调
- VR > 450 → 成交过热
- VR < 70 → 成交低迷
- MFI > 80 → 资金超买
- MFI < 20 → 资金超卖
#### 9. 情绪/心理指标
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| psy_bfq | 心理线 | 市场情绪 |
| brar_ar_bfq | AR人气指标 | 买卖气势 |
| brar_br_bfq | BR意愿指标 | 买卖意愿 |
| cci_bfq | 顺势指标 | 超买超卖 |
| wr_bfq/wr1_bfq | 威廉指标 | 超买超卖 |
**情绪分析逻辑**:
- PSY > 75 → 市场过热
- PSY < 25 → 市场过冷
- AR > 180 → 人气过热
- BR > 400 → 意愿过强
- CCI > 100 → 超买
- CCI < -100 → 超卖
- WR < 20 → 超买(注意WR是反向指标)
- WR > 80 → 超卖
#### 10. 动量指标
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| mtm_bfq/mtmma_bfq | 动量指标 | 价格动量 |
| roc_bfq/maroc_bfq | 变动率指标 | 价格变化速度 |
| cr_bfq | CR价格动量 | 中期动量 |
**动量分析逻辑**:
- MTM > 0 且上升 → 上涨动量增强
- MTM < 0 且下降 → 下跌动量增强
- ROC极端值 → 可能反转
#### 11. 趋势强度指标
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| dmi_pdi_bfq | +DI上升动向 | 多头力量 |
| dmi_mdi_bfq | -DI下降动向 | 空头力量 |
| dmi_adx_bfq | ADX趋势强度 | 趋势是否明确 |
| dmi_adxr_bfq | ADXR | ADX平滑 |
**DMI分析逻辑**:
- +DI > -DI → 多头占优
- -DI > +DI → 空头占优
- ADX > 25 → 趋势明确
- ADX < 20 → 震荡市
- +DI上穿-DI且ADX上升 → 强势买入信号
#### 12. 其他辅助指标
| 字段 | 说明 | 分析用途 |
|------|------|---------|
| bias1/2/3_bfq | 乖离率(6/12/24日) | 偏离程度 |
| asi_bfq/asit_bfq | 振动升降指标 | 趋势确认 |
| trix_bfq/trma_bfq | 三重平滑平均 | 长期趋势 |
| emv_bfq/maemv_bfq | 简易波动指标 | 量价关系 |
| mass_bfq/ma_mass_bfq | 梅斯线 | 趋势反转 |
| dpo_bfq/madpo_bfq | 区间震荡线 | 周期分析 |
| dfma_dif_bfq/dfma_difma_bfq | 平行线差指标 | 趋势判断 |
| updays/downdays | 连涨/连跌天数 | 趋势持续性 |
| topdays/lowdays | 高低点周期位置 | 周期分析 |
## Goals / Non-Goals
### Goals
- 提供直观的指数浏览和筛选界面
- 展示指数成分股及权重分布
- **新增Index Agent**,基于上述技术指标提供专业量化分析
- 复用现有的插件service层
### Non-Goals
- 不新增数据采集插件
- 不实现指数交易功能
- 不实现实时行情推送
## Decisions
### 1. Index Agent架构设计
**决策**:创建独立的`IndexAgent`类,继承`LangGraphAgent`基类
**文件结构**:
```
src/stock_datasource/agents/
├── index_agent.py # Index Agent主类
├── index_tools.py # 指数专用工具函数
└── __init__.py # 注册get_index_agent()
```
### 2. Index Agent工具函数设计
**决策**:在`index_tools.py`中实现以下工具函数
| 工具函数 | 数据来源 | 功能描述 |
|---------|---------|---------|
| `get_index_info(ts_code)` | `dim_index_basic` | 获取指数基础信息 |
| `get_index_constituents(ts_code, trade_date)` | `ods_index_weight` | 获取成分股及权重 |
| `get_index_factors(ts_code, days)` | `ods_idx_factor_pro` | 获取最近N日技术因子 |
| `analyze_trend(ts_code)` | 均线+MACD+DMI | 分析趋势方向和强度 |
| `analyze_momentum(ts_code)` | KDJ+RSI+MTM+ROC | 分析动量和超买超卖 |
| `analyze_volatility(ts_code)` | ATR+BOLL+通道 | 分析波动率和支撑压力 |
| `analyze_volume(ts_code)` | OBV+VR+MFI | 分析量能和资金流向 |
| `analyze_sentiment(ts_code)` | PSY+BRAR+CCI+WR | 分析市场情绪 |
| `analyze_concentration(ts_code)` | 成分股权重 | 分析集中度风险 |
| `get_comprehensive_analysis(ts_code)` | 综合以上 | 生成完整分析报告 |
### 3. 指数量化分析框架
基于实际可用的技术指标,设计以下分析框架:
```
┌─────────────────────────────────────────────────────────────┐
│ 指数量化分析框架 │
├─────────────────────────────────────────────────────────────┤
│ 1. 指数概况 │
│ - 基础信息:名称、市场、发布方、加权方式 │
│ - 成分股数量、前10大成分股 │
├─────────────────────────────────────────────────────────────┤
│ 2. 趋势分析(权重30%) │
│ - 均线系统:MA5/10/20/60/250排列状态 │
│ - MACD状态:DIF/DEA位置、金叉死叉、零轴位置 │
│ - DMI趋势:+DI/-DI对比、ADX趋势强度 │
│ → 输出:趋势方向(上涨/下跌/震荡)+ 趋势强度(强/中/弱) │
├─────────────────────────────────────────────────────────────┤
│ 3. 动量分析(权重25%) │
│ - KDJ状态:K/D/J值、超买超卖区域、金叉死叉 │
│ - RSI水平:RSI6/12/24、超买超卖判断 │
│ - 动量指标:MTM/ROC方向和强度 │
│ → 输出:动量状态(增强/减弱)+ 超买超卖(超买/超卖/中性) │
├─────────────────────────────────────────────────────────────┤
│ 4. 波动分析(权重20%) │
│ - ATR波动率:当前波动水平 │
│ - 布林带位置:价格在通道中的位置 │
│ - 通道突破:唐安奇/肯特纳通道状态 │
│ → 输出:波动状态(放大/收敛)+ 支撑压力位 │
├─────────────────────────────────────────────────────────────┤
│ 5. 量能分析(权重15%) │
│ - OBV趋势:量价配合情况 │
│ - VR容量:成交活跃度 │
│ - MFI资金:资金流入流出 │
│ → 输出:量能状态(充沛/不足)+ 资金方向(流入/流出) │
├─────────────────────────────────────────────────────────────┤
│ 6. 情绪分析(权重10%) │
│ - PSY心理线:市场情绪 │
│ - BRAR指标:人气和意愿 │
│ - CCI/WR:辅助超买超卖 │
│ → 输出:情绪状态(乐观/悲观/中性) │
├─────────────────────────────────────────────────────────────┤
│ 7. 集中度分析 │
│ - CR10:前10大成分股权重占比 │
│ - HHI指数:赫芬达尔指数 │
│ → 输出:集中度风险(高/中/低) │
├─────────────────────────────────────────────────────────────┤
│ 8. 综合评分与建议 │
│ - 多空评分:基于以上分析加权计算(0-100) │
│ - 操作建议:积极/谨慎/观望/减仓 │
│ - 风险提示:主要风险点 │
│ - 免责声明:仅供参考,不构成投资建议 │
└─────────────────────────────────────────────────────────────┘
```
### 4. 技术信号解读逻辑
**趋势信号**:
| 指标组合 | 看多信号 | 看空信号 | 中性 |
|---------|---------|---------|------|
| 均线 | MA5>MA10>MA20>MA60(多头排列) | MA5<MA10<MA20<MA60(空头排列) | 交织 |
| MACD | DIF>DEA且MACD>0 | DIF<DEA且MACD<0 | 零轴附近 |
| DMI | +DI>-DI且ADX>25 | -DI>+DI且ADX>25 | ADX<20 |
**动量信号**:
| 指标 | 超买信号 | 超卖信号 | 中性区间 |
|------|---------|---------|---------|
| KDJ | K>80且J>100 | K<20且J<0 | 20-80 |
| RSI6 | >70 | <30 | 30-70 |
| RSI12 | >70 | <30 | 30-70 |
**波动信号**:
| 指标 | 高波动 | 低波动 | 分析意义 |
|------|--------|--------|---------|
| ATR | 显著高于MA20 | 显著低于MA20 | 风险/机会 |
| BOLL | 带宽扩大 | 带宽收窄 | 变盘预警 |
**量能信号**:
| 指标 | 积极信号 | 消极信号 |
|------|---------|---------|
| OBV | 上升+价涨 | 下降+价涨(背离) |
| VR | 70-150正常 | >450过热/<70低迷 |
| MFI | 20-80正常 | >80超买/<20超卖 |
**情绪信号**:
| 指标 | 过热 | 过冷 | 正常 |
|------|------|------|------|
| PSY | >75 | <25 | 25-75 |
| CCI | >100 | <-100 | -100~100 |
| WR | <20 | >80 | 20-80 |
### 5. 集中度风险分析
**指标定义**:
- **CR10**:前10大成分股权重占比
- **HHI指数**:赫芬达尔-赫希曼指数 = Σ(权重²) × 10000
**风险等级**:
| CR10 | HHI | 风险等级 | 说明 |
|------|-----|---------|------|
| < 30% | < 500 | 低 | 分散度好 |
| 30-50% | 500-1000 | 中 | 适度集中 |
| > 50% | > 1000 | 高 | 高度集中 |
### 6. Index Agent System Prompt设计
```python
SYSTEM_PROMPT = """你是一个专业的指数量化分析师,专注于A股指数的技术分析。
## 可用数据
你可以获取以下数据进行分析:
1. 指数基础信息:名称、市场、发布方、加权方式、成分股数量
2. 成分股权重:各成分股及其权重占比
3. 技术因子(80+指标):
- 均线系统:MA5/10/20/30/60/90/250、EMA系列
- MACD:DIF、DEA、MACD柱
- KDJ:K、D、J值
- RSI:RSI6、RSI12、RSI24
- 布林带:上轨、中轨、下轨
- 波动率:ATR、肯特纳通道、唐安奇通道
- 成交量:OBV、VR、MFI
- 情绪指标:PSY、BRAR、CCI、WR
- 动量指标:MTM、ROC、CR
- 趋势强度:DMI(+DI/-DI/ADX)
- 其他:BIAS乖离率、TRIX、EMV等
## 分析框架
请按以下框架进行分析:
### 1. 指数概况
- 基础信息和成分股概述
### 2. 趋势分析(核心)
- 均线排列状态(多头/空头/交织)
- MACD状态(金叉/死叉、零轴位置、背离)
- DMI趋势强度(ADX>25为趋势明确)
- 综合判断:上涨趋势/下跌趋势/震荡
### 3. 动量分析
- KDJ超买超卖(K>80超买,K<20超卖)
- RSI强弱(>70超买,<30超卖)
- 动量方向(MTM/ROC)
### 4. 波动分析
- ATR波动水平
- 布林带位置(上轨压力/下轨支撑)
- 带宽变化(收窄预示变盘)
### 5. 量能分析
- OBV量价配合
- VR成交活跃度
- MFI资金流向
### 6. 情绪分析
- PSY市场情绪
- BRAR人气意愿
- CCI/WR辅助判断
### 7. 集中度风险
- CR10前10大成分股占比
- 集中度风险等级
### 8. 综合建议
- 多空评分(0-100,50为中性)
- 操作建议
- 主要风险提示
- **免责声明:以上分析仅供参考,不构成投资建议。投资有风险,入市需谨慎。**
## 常用指数代码
- 沪深300: 000300.SH
- 中证500: 000905.SH
- 上证50: 000016.SH
- 创业板指: 399006.SZ
- 科创50: 000688.SH
- 中证1000: 000852.SH
## 分析原则
- 数据驱动:所有结论必须基于实际数据
- 多维验证:多个指标相互验证
- 风险优先:突出风险提示
- 客观中立:不做主观预测
"""
```
### 7. 前端架构
**决策**:参照现有`ScreenerView.vue`的设计模式,创建独立的指数选股页面
### 8. 后端模块设计
**决策**:创建独立的`index`模块,直接调用现有插件的service层
**结构**:
```
src/stock_datasource/modules/index/
├── __init__.py
├── router.py # FastAPI路由
├── service.py # 业务逻辑
└── schemas.py # Pydantic模型
```
## Risks / Trade-offs
### 风险1:数据完整性
- **风险**:指数数据可能未同步完整
- **缓解**:前端展示数据状态,提示用户同步
### 风险2:技术指标滞后性
- **风险**:技术指标本身具有滞后性
- **缓解**:多指标交叉验证,明确说明指标特性
### 风险3:分析准确性
- **风险**:AI分析可能存在偏差
- **缓解**:明确标注"仅供参考,不构成投资建议"
### Trade-off:实时性 vs 性能
- **选择**:使用最新已入库数据,非实时行情
- **理由**:系统定位为数据分析平台,非交易系统
## Migration Plan
无需数据迁移,新增功能模块。
## Open Questions
1. 是否需要支持指数对比功能?(建议后续迭代)
2. 是否需要指数历史走势图表?(建议后续迭代)
3. 是否需要将Index Agent集成到Orchestrator中?(建议是,便于通过Chat界面调用)
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.