# Akshare Risk Trigger

> 用于基于AkShare数据的风险触发监控场景。适用于金融工作中的基础任务单元。

- Skill: `aifinlab/akshare-risk-trigger` (Agent Skill, multi-file: 10 files)
- Install (CLI): `npx skillmds@latest add aifinlab/akshare-risk-trigger`
- Raw SKILL.md: https://api.skillmd.com/api/skills/aifinlab/akshare-risk-trigger/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: aifinlab (https://skillmd.com/u/aifinlab)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/aifinlab/akshare-risk-trigger

---


# AKShare A股风险舆情触发 Skill

## 1. Skill 概述

这个 Skill 基于 **AKShare** 的 A 股行情、新闻、热度与风险专题数据，构建一个可执行的 **风险舆情触发机制**。它不是预测未来收益的黑盒模型，而是一个面向研究、预警和盘前/盘后巡检的规则型引擎：

- 识别 **价格风险**：大跌、波动放大、换手异常。
- 识别 **舆情风险**：个股相关新闻中的负面关键词聚集。
- 识别 **热度失衡**：热度冲高但排名恶化，或舆情过热。
- 识别 **结构性风险**：高股权质押、商誉减值预期。
- 输出 **触发等级**、**触发原因** 与 **综合风险分数**。

## 2. 数据来源

本 Skill 默认使用以下 AKShare 接口：

1. **A股历史行情**：`stock_zh_a_hist`
   - 用途：计算收益率、波动率、回撤、换手异常等。
   - 来源说明：东方财富沪深京 A 股日频历史行情。

2. **个股新闻**：`stock_news_em`
   - 用途：抓取指定股票或关键词的最近新闻，进行负面关键词计数。
   - 来源说明：东方财富指定个股新闻资讯。

3. **A股人气榜**：`stock_hot_rank_em`
   - 用途：获取当前人气排名，用作过热/拥挤度参考。

4. **个股热度历史趋势**：`stock_hot_rank_detail_em`
   - 用途：获取近期排名、新晋粉丝、铁杆粉丝等热度变化。

5. **上市公司质押比例**：`stock_gpzy_pledge_ratio_em`
   - 用途：识别高质押风险。

6. **商誉减值预期明细**：`stock_sy_yq_em`
   - 用途：识别商誉减值预期带来的财务/舆情共振风险。

7. **千股千评**：`stock_comment_em`
   - 用途：读取机构参与度、综合得分、关注指数等辅助特征。

> 建议安装 AKShare 最新版本后使用，因为 `stock_news_em`、`stock_hot_rank_detail_em` 等接口在近几个版本有过修复记录。AKShare 官方文档当前展示的版本为 **1.18.39**，官方安装建议为 `pip install akshare --upgrade`，GitHub 仓库采用 **MIT License**。

## 3. 功能

### 3.1 核心触发维度

Skill 会从 4 个维度构造风险触发项：

#### A. 行情风险触发
- **单日大跌触发**：最近一个交易日跌幅 <= 阈值（默认 -7%）
- **5日累计下跌触发**：最近 5 个交易日累计收益 <= 阈值（默认 -12%）
- **20日波动放大触发**：近 20 日波动率 / 近 60 日波动率 >= 阈值（默认 1.5）
- **换手异常触发**：最新换手率 / 过去 20 日平均换手率 >= 阈值（默认 2.0）
- **回撤触发**：最近收盘价相对 60 日最高收盘回撤 >= 阈值（默认 20%）

#### B. 舆情风险触发
- 统计最近新闻标题和摘要中的 **负面关键词**，如：
  - 立案
  - 处罚
  - 违规
  - 违约
  - 减值
  - 商誉
  - 质押
  - 暴跌
  - 亏损
  - ST
  - 问询函
  - 诉讼
  - 终止
  - 下修
- 若负面新闻占比超过阈值（默认 30%），触发 **舆情风险**。

#### C. 热度过热触发
- 当前处于人气榜前列，同时：
  - 近期排名恶化，或
  - 近几次热度波动异常，或
  - 新闻负面占比不低
- 用来识别 **“高关注 + 风险事件”** 的拥挤交易场景。

#### D. 结构性风险触发
- **高质押触发**：上市公司质押比例 >= 阈值（默认 20%）
- **商誉减值预期触发**：在对应报告期的商誉减值预期明细中出现
- **千股千评低分辅助触发**：综合得分过低，作为弱辅助信号

### 3.2 输出结果

输出字段示例：

- `symbol`：股票代码
- `as_of_date`：计算日期
- `risk_score`：0~100 的综合风险分数
- `risk_level`：`LOW` / `MEDIUM` / `HIGH` / `CRITICAL`
- `triggers`：触发项列表
- `headline_negative_ratio`：负面新闻占比
- `pledge_ratio`：质押比例（如可获取）
- `goodwill_warning`：是否存在商誉减值预期
- `latest_rank`：最新热度排名（如可获取）
- `comment_score`：千股千评综合得分（如可获取）

## 4. 目录结构

```text
akshare-a-share-risk-sentiment-trigger/
├─ skill.md
├─ LICENSE
├─ requirements.txt
└─ script/
   ├─ config.py
   ├─ utils.py
   ├─ data_loader.py
   ├─ risk_engine.py
   └─ run_skill.py
```

## 5. 使用示例

### 5.1 安装依赖

```bash
pip install -r requirements.txt
```

### 5.2 运行单只股票预警

```bash
python script/run_skill.py --symbol 603777
```

### 5.3 指定日期区间与报告期

```bash
python script/run_skill.py \
  --symbol 300750 \
  --start-date 20240101 \
  --end-date 20260313 \
  --report-date 20241231
```

### 5.4 输出为 JSON

```bash
python script/run_skill.py --symbol 002594 --output json
```

### 5.5 自定义负面关键词

```bash
python script/run_skill.py \
  --symbol 600519 \
  --negative-keywords 立案,处罚,问询函,暴雷,违约,减值
```

## 6. 触发逻辑说明

Skill 内置一个规则分值系统，默认做法如下：

- 单日大跌：+18 分
- 5日累计大跌：+16 分
- 波动放大：+12 分
- 换手异常：+10 分
- 60日大回撤：+12 分
- 负面新闻占比 >= 30%：+12 分
- 负面新闻占比 >= 50%：额外 +8 分
- 人气榜前 100 且排名恶化：+6 分
- 质押比例 >= 20%：+10 分
- 质押比例 >= 35%：额外 +8 分
- 商誉减值预期：+14 分
- 千股千评综合得分偏低：+4 分

风险等级映射：

- `0 ~ 19`：LOW
- `20 ~ 39`：MEDIUM
- `40 ~ 59`：HIGH
- `60+`：CRITICAL

你可以在 `script/config.py` 中调整阈值与打分权重。

## 7. 交易说明

1. **本 Skill 仅用于研究、监控、教学与策略辅助，不构成任何投资建议。**
2. 风险触发并不等于必然下跌，也可能对应利空兑现后的反弹阶段。
3. AKShare 的部分数据来自第三方站点，存在：
   - 接口临时失效
   - 字段变更
   - 数据延迟
   - 历史口径修正
4. 建议将本 Skill 用作 **预警系统**，而不是独立下单系统。
5. 在真实交易中，至少结合以下信息复核：
   - 公司公告
   - 交易所问询/处罚
   - 财报与预告
   - 板块环境
   - 市场整体风险偏好
6. 若用于量化回测，请先固定样本期、字段口径与接口版本，避免未来函数与幸存者偏差。
7. 热度与新闻类信号很容易放大短线噪声，建议与流动性、财务质量、事件验证机制配合使用。

## 8. 可扩展方向

- 新增公告文本解析
- 接入板块热度与资金流
- 多股票批量扫描
- 企业级消息推送（飞书 / 钉钉 / 企业微信）
- 回测模块：检验触发后 1/3/5/10 日收益分布
- LLM 摘要模块：自动生成风险说明

## 9. License

### 本 Skill 代码 License

本压缩包内除第三方依赖外的自编代码采用 **MIT License**，详见根目录 `LICENSE`。

### 第三方依赖说明

- **AKShare** 官方仓库采用 **MIT License**。
- 通过 AKShare 获取的数据，仍需遵守 AKShare 与其上游数据源的使用约束。
- 使用者应自行确认对第三方数据源的合规使用边界，尤其是在商业环境、再分发、缓存和高频采集场景下。

