# Stock Skill

> A股/数字货币量化分析助手。支持(1)A股选股：MACD金叉+量能放大+当日上涨+突破120日新高；(2)单股条件校验；(3)K线图表；(4)WorldQuant Alpha因子；(5)多智能体分析；(6)数字货币实盘(CCXT/Binance/OKX/Bybit)；(7)TradingView信号执行。当用户提到选股、A股、K线、数字货币、加密货币、币圈、CCXT、TradingView、Pine Script时使用。

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

---


# A股 / 数字货币 量化分析 Skill

## 核心能力（8大模块）

| 模块 | 命令 | 功能 | 市场 |
|------|------|------|------|
| 1️⃣ 技术选股 | `select` | MACD金叉+量能放大+突破120日新高 | A股 |
| 2️⃣ 单股校验 | `check` | 验证是否满足选股条件 | A股 |
| 3️⃣ K线图表 | `kline` | 生成日K线图(含MA/成交量/MACD) | A股 |
| 4️⃣ Alpha因子 | `alpha` | 计算 WorldQuant 101 Alpha 因子 | A股 |
| 5️⃣ 多智能体 | `analyze` | 技术/基本面/情绪/风控团队分析 | A股 |
| 6️⃣ 数字货币 | `crypto` | CCXT交易所行情/下单/数据分析 | 币圈 |
| 7️⃣ TradingView | `tv` | Pine Script信号/Webhook执行 | 全市场 |
| 8️⃣ 实盘数据 | `realtime` | Tardis Machine实时tick数据 | 全市场 |
| 9️⃣ 预测追踪 | `tracker` | 记录预测、追踪结果、统计准确率 | A股 |

---

## 一、A股技术选股 (select)

围绕一组"必要条件"做 A股选股。

### 必要条件（同时满足）

| 维度 | 公式 | 含义 |
|------|------|------|
| MACD | `DIF > DEA` (12,26,9) | 处于多头排列，金叉之上 |
| 量能 | `VOL.MA5 > VOL.MA10` | 近 5 日均量放大于近 10 日 |
| 涨跌 | `close > prev_close` | 当日上涨 |
| 新高 | `close >= max(close[-120:])` | 突破 120 日收盘新高 |

### 命令

```bash
python <skill_path>/stock.py select \
  [--pool all|sh|sz|bj|hs300|zz500|file:codes.txt] \
  [--top 100] \
  [--output result.csv] \
  [--workers 8]
```

---

## 二、单股校验 (check)

```bash
python <skill_path>/stock.py check --symbol 600519 [--date 2026-05-27]
```

---

## 三、K线图 (kline)

```bash
python <skill_path>/stock.py kline \
  --symbol 600519 \
  [--days 250] \
  [--output kline.png] \
  [--no-ma] [--no-vol] [--no-macd]
```

---

## 四、WorldQuant Alpha 因子计算 (alpha)

### 已实现因子

| 因子 | 公式 | 用途 |
|------|------|------|
| Alpha#3 | `(-1 * correlation(rank(open), rank(volume), 10))` | 开价与成交量的负相关性 |
| Alpha#13 | `(-1 * rank(covariance(rank(close), rank(volume), 5)))` | 收盘价与成交量的协方差 |
| Alpha#15 | `(-1 * sum(rank(correlation(rank(high), rank(volume), 3)), 3))` | 高价与成交量相关性之和 |
| Alpha#16 | `(-1 * rank(covariance(rank(high), rank(volume), 5)))` | 高价与成交量的协方差 |
| Alpha#44 | `(-1 * correlation(high, rank(volume), 5))` | 高价与成交量排名的相关性 |
| Alpha#50 | `(-1 * ts_max(rank(correlation(rank(volume), rank(vwap), 5)), 5))` | 成交量与VWAP排名相关性最大值 |
| Alpha#55 | `(-1 * correlation(rank((close - ts_min(low, 12)) / (ts_max(high, 12) - ts_min(low, 12))), rank(volume), 6))` | 标准化价格位置与成交量相关性 |

### Alpha 计算命令

```bash
# 安装
npm install finance-mcp-alpha

# Python 直接计算
python <skill_path>/alpha.py --symbol 600519 --factor alpha3,alpha13,alpha44
```

---

## 五、多智能体综合分析 (analyze)

### 智能体团队

| 分析师 | 职责 |
|--------|------|
| 🤖 李技术 | 技术指标、图表形态、K线分析 |
| 📊 王基本 | 财务数据、公司价值、估值分析 |
| 📈 张量化 | 数学模型、统计方法、Alpha因子 |
| 💬 陈情绪 | 舆情分析、市场情绪、资金流向 |
| 🛡️ 刘风控 | 风险评估、仓位管理、止损建议 |

### 分析命令

```bash
# Web 界面模式
python <skill_path>/multiangent.py --mode web --stock 000001

# 命令行模式
python <skill_path>/multiangent.py --mode cli --stock 000001

# 完整分析报告
python <skill_path>/multiangent.py --mode report --stock 600519
```

---

## 六、数字货币实盘 (crypto)

> 使用 [CCXT](https://docs.ccxt.com) 统一API，支持100+交易所

### 支持交易所

```
Binance, OKX, Bybit, Coinbase, Huobi, Kraken,
Bitfinex, Bitmex, Deribit, KuCoin, Gemini, ...
```

### 基本行情查询

```bash
python <skill_path>/crypto.py ticker --exchange binance --symbol BTC/USDT
```

### 完整命令

```bash
# 行情查询
python <skill_path>/crypto.py ticker --exchange binance --symbol BTC/USDT
python <skill_path>/crypto.py tickers --exchange binance --symbol BTC/USDT,ETH/USDT

# K线数据
python <skill_path>/crypto.py kline --exchange binance --symbol BTC/USDT --period 1h --limit 100

# 订单簿
python <skill_path>/crypto.py orderbook --exchange binance --symbol BTC/USDT --limit 20

# 下单（需配置API Key）
python <skill_path>/crypto.py order --exchange binance --symbol BTC/USDT --side buy --order-type market --amount 0.001

# 账户信息
python <skill_path>/crypto.py account --exchange binance

# 持仓信息
python <skill_path>/crypto.py positions --exchange binance
```

### Python 脚本示例

```python
import ccxt

# 初始化交易所
binance = ccxt.binance({
    'apiKey': 'your-api-key',
    'secret': 'your-secret',
    'enableRateLimit': True,
})

# 获取实时价格
ticker = binance.fetch_ticker('BTC/USDT')
print(f"BTC价格: {ticker['last']}")
print(f"24h涨跌: {ticker['percentage']}%")
print(f"24h成交量: {ticker['quoteVolume']}")

# 获取K线数据
klines = binance.fetch_ohlcv('BTC/USDT', '1h', limit=100)
print(f"K线数量: {len(klines)}")

# 下单示例
order = binance.create_market_buy_order('BTC/USDT', 0.001)
print(f"订单ID: {order['id']}")
```

---

## 七、TradingView 信号执行 (tv)

> 使用 [pine-bot-client](https://github.com/kzh-dev/pine-bot-client) 接收TradingView信号

### 工作流程

```
TradingView Pine Script → Alert Webhook → pine-bot-client → CCXT → 交易所
```

### Pine Script 示例

```pine
//@version=5
strategy("My Strategy", overlay=true)

// 策略条件
longCondition = ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))
if (shortCondition)
    strategy.entry("Short", strategy.short)

// Alert
alertcondition(longCondition, "Buy Signal", "BUY: {{ticker}} @ {{close}}")
alertcondition(shortCondition, "Sell Signal", "SELL: {{ticker}} @ {{close}}")
```

### TradingView Alert 格式

```json
{
  "action": "buy",
  "symbol": "BTCUSDT",
  "quantity": 0.01,
  "price": 50000
}
```

### 启动 Webhook 服务器

```bash
# 安装
pip install pine-bot-client

# 启动服务器
python <skill_path>/tv_webhook.py --port 8080 --exchange binance

# 配置 TradingView Alert
# {{strategy.order.alert_message}}
```

### TradingView Alert → IBKR（股票）

```bash
# 安装桥接
git clone https://github.com/NadirAliOfficial/ibkr-tradingview-bridge-bot.git
cd ibkr-tradingview-bridge-bot
pip install -r requirements.txt

# 运行
python main.py
```

---

## 八、实时Tick数据 (realtime)

> 使用 [Tardis Machine](https://github.com/tardis-dev/tardis-machine) 获取专业级数据

### Docker 快速启动

```bash
docker run -d -p 8080:8080 tardis/tardis-machine
```

### 数据端点

```bash
# 实时 WebSocket
ws://localhost:8080/ws

# HTTP API
GET http://localhost:8080/v1/exchanges/{exchange}/markets/{market}/trades
GET http://localhost:8080/v1/exchanges/{exchange}/markets/{market}/orderbook
```

### 命令行使用

```bash
# 查看可用交易所
python <skill_path>/realtime.py exchanges

# 订阅实时数据
python <skill_path>/realtime.py subscribe --exchange binance --market BTC/USDT --type trades
python <skill_path>/realtime.py subscribe --exchange binance --market BTC/USDT --type orderbook

# 回放历史数据
python <skill_path>/realtime.py replay --exchange bitmex --market BTC/USD --from 2024-01-01 --to 2024-01-02
```

### Python 使用示例

```python
import asyncio
from tardis import TardisClient

async def main():
    client = TardisClient()

    # 回放历史数据
    async for trade in client.replay(
        exchange='bitmex',
        market='BTC/USD',
        from_date=datetime(2024, 1, 1),
        to_date=datetime(2024, 1, 2)
    ):
        print(trade)

    # 实时订阅
    async for book in client.subscribe(exchange='binance', market='BTC/USDT'):
        print(book)

asyncio.run(main())
```

---

## 九、相关 MCP / Skill 资源

### 专业金融数据平台

| 平台 | 说明 | 入口 |
|------|------|------|
| **万得 Wind Alice** | 金融AI聊天智能体，PhD级深度研究 | alice.wind.com.cn |
| **WindClaw** | AI Agent技能平台，3000+ Skills | claw.wind.com.cn |

> 💡 **Wind Alice 核心优势**：
> - 基于可验证数据，事实核查功能
> - 合规优先，通过网信办算法注册
> - 支持投研分析、宏观研究、固定收益分析
> - 深度研究模式（PhD级别思考能力）
>
> 📖 详细文档：[doc/wind-alice-smart-agent.md](doc/wind-alice-smart-agent.md)

### 可选安装

| 资源 | 安装命令 | 用途 |
|------|----------|------|
| **yahoo-finance-server** | `pip install yahoo-finance-server` 或 `uvx yahoo-finance-server` | 全球股票/指数行情 |
| **StockMCP** | `npm install -g stock-mcp` | Yahoo Finance 实时数据 |
| **FinanceNews-MCP** | 参考 [GitHub](https://github.com/guangxiangdebizi/FinanceNews-MCP) | 金融新闻搜索 |
| **OctoBot-Script** | `pip install octobot-scripts` | Python写Pine策略，支持ML/DL |
| **crypto-trading-bot** | `docker-compose up` | 多交易所自动交易Bot |

### 外部完整框架

```bash
# A股多智能体
git clone https://github.com/guangxiangdebizi/A-Scope-Research.git
cd A-Scope-Research && pip install -r requirements.txt

# 数字货币自动交易（Docker）
git clone https://github.com/Haehnchen/crypto-trading-bot.git
cd crypto-trading-bot && docker-compose up

# 数字货币套利框架
git clone https://github.com/hzjken/crypto-arbitrage-framework.git
cd crypto-arbitrage-framework && pip install -r requirements.txt
```

---

## 十、数据源汇总

### A股数据

| 数据源 | 类型 | 说明 |
|--------|------|------|
| **akshare** | 免费 | 东方财富/新浪等公开接口 |
| **baostock** | 免费 | 免费A股数据 |
| **tushare** | 需注册 | Tushare Pro (需token) |

### 数字货币数据

| 数据源 | 类型 | 说明 |
|--------|------|------|
| **CCXT** | 免费 | 100+交易所统一API |
| **Tardis Machine** | 免费 | tick级历史+实时数据 |
| **交易所原生API** | 需注册 | Binance/OKX/Bybit |

### 全球市场

| 数据源 | 类型 | 说明 |
|--------|------|------|
| **yahoo finance** | 免费 | 美股、港股、指数 |
| **TradingView** | 免费/订阅 | 图表、信号、数据 |

---

## 典型对话

### A股

> "找一下今天 MACD 金叉、放量、突破120日新高的票"

```bash
python <skill_path>/stock.py select --pool hs300 --output today.csv
```

> "看下 600519 的K线"

```bash
python <skill_path>/stock.py kline --symbol 600519 --output 600519.png
```

> "计算茅台的 Alpha3 和 Alpha44 因子"

```bash
python <skill_path>/alpha.py --symbol 600519 --factor alpha3,alpha44
```

### 数字货币

> "BTC现在多少钱？"

```bash
python <skill_path>/crypto.py ticker --exchange binance --symbol BTC/USDT
```

> "查看ETH的K线"

```bash
python <skill_path>/crypto.py kline --exchange binance --symbol ETH/USDT --period 1d --limit 100
```

> "如何在TradingView上设置自动交易？"

```bash
python <skill_path>/tv_webhook.py --port 8080 --exchange binance
```

### 实时数据

> "获取实时订单簿"

```bash
python <skill_path>/realtime.py subscribe --exchange binance --market BTC/USDT --type orderbook
```

---

## 参数说明

### 通用

| 参数 | 说明 | 默认 |
|------|------|------|
| `--symbol` | 代码（A股6位，币圈如BTC/USDT） | - |
| `--date` | 截止日期 `YYYY-MM-DD` | 最新交易日 |
| `--days` | 回溯 K 线根数 | `250` |

### select 专属

| 参数 | 说明 | 默认 |
|------|------|------|
| `--pool` | 股票池 | `all` |
| `--top` | 最多输出条数 | `100` |
| `--workers` | 并发线程数 | `8` |
| `--output` | 结果 CSV 路径 | `select_result.csv` |

### crypto 专属

| 参数 | 说明 | 默认 |
|------|------|------|
| `--exchange` | 交易所名 | `binance` |
| `--period` | K线周期 | `1h` |
| `--limit` | 数据条数 | `100` |
| `--side` | buy/sell | 必填 |
| `--order-type` | market/limit | `market` |
| `--amount` | 数量 | 必填 |

### tv 专属

| 参数 | 说明 | 默认 |
|------|------|------|
| `--port` | Webhook端口 | `8080` |
| `--config` | 配置文件 | `config.json` |

### realtime 专属

| 参数 | 说明 | 默认 |
|------|------|------|
| `--type` | trades/orderbook | 必填 |
| `--from` | 开始时间 | 必填 |
| `--to` | 结束时间 | 必填 |

---

## 快速安装完整套件

```bash
# ===== A股依赖 =====
pip install akshare baostock pandas numpy matplotlib mplfinance

# ===== 数字货币依赖 =====
pip install ccxt

# ===== 实时数据 =====
docker run -d -p 8080:8080 tardis/tardis-machine

# ===== Alpha因子 =====
npm install finance-mcp-alpha

# ===== TradingView信号 =====
pip install pine-bot-client

# ===== 可选：完整框架 =====
git clone https://github.com/guangxiangdebizi/A-Scope-Research.git
git clone https://github.com/Haehnchen/crypto-trading-bot.git
```

---

## 注意事项

1. **API Key 安全**：不要将 API Key 提交到 GitHub！
2. **实盘风险**：先在测试网/模拟盘验证策略
3. **网络要求**：部分数据源需要访问外网
4. **手续费**：高频交易需考虑手续费影响
5. **法律合规**：数字货币交易在部分国家/地区有监管要求
6. **A股数据**：akshare 首次运行需联网拉取数据
7. 本 skill 仅做技术分析参考，**不构成投资建议**

---

*免责声明：以上资源来自开源社区，请自行评估安全性与稳定性再用于生产环境。实盘交易有风险，入市需谨慎！*

---

## 十一、预测追踪系统 (tracker)

> ⚠️ **重要：每次推荐股票后必须记录！**

### 核心功能

| 功能 | 说明 |
|:---|:---|
| 添加预测 | 记录股票代码、操作、买入价、目标价、止损价 |
| 追踪结果 | 自动计算盈亏，更新状态 |
| 准确率统计 | 统计胜率、平均收益、评分关系 |

### 命令

```bash
# 添加预测记录
python stock_tracker.py add \
  --symbol 601012 \
  --name 隆基绿能 \
  --action watch \
  --entry 13.89 \
  --target 15.50 \
  --stop 12.50 \
  --tags CPO,光伏 \
  --notes "主力流出，基本面差" \
  --score 4

# 列出预测记录
python stock_tracker.py list [--status pending|win|loss] [--limit 20]

# 查看统计
python stock_tracker.py stats

# 更新预测结果
python stock_tracker.py update --symbol 601012 --close 14.50 --status win

# 检查当前价格
python stock_tracker.py check --symbol 601012
```

### 预测记录字段

| 字段 | 说明 |
|:---|:---|
| `id` | 记录编号 |
| `date` | 预测日期 |
| `symbol` | 股票代码 |
| `name` | 股票名称 |
| `action` | 操作类型 (buy/sell/watch) |
| `entry_price` | 买入/关注价格 |
| `target_price` | 目标价格 |
| `stop_loss` | 止损价格 |
| `score` | 预测评分 (1-10) |
| `status` | 状态 (pending/win/loss/cancel) |
| `result` | 最终收益 % |

### 追踪记录文件

`D:\ClawGeek\skills\stock-skill\prediction_history.json`

### 统计指标

| 指标 | 说明 |
|:---|:---|
| 胜率 | 盈利次数 / 总交易次数 |
| 平均收益 | 所有交易的平均收益率 |
| 评分关系 | 不同评分的预测准确率对比 |

### ⚠️ 操作规范

> **每次推荐股票后必须调用 `add` 命令记录！**
>
> **每次卖出/止损后必须调用 `update` 命令更新结果！**

```python
# 推荐示例
>>> 推荐 601012 隆基绿能
>>> 预测评分: 4分
>>> 操作: watch (观望)
>>> 买入价: 13.89
>>> 目标价: 15.50
>>> 止损价: 12.50

# 必须在推荐后执行
python stock_tracker.py add --symbol 601012 --name 隆基绿能 --action watch --entry 13.89 --target 15.50 --stop 12.50 --score 4
```

---

*免责声明：以上资源来自开源社区，请自行评估安全性与稳定性再用于生产环境。实盘交易有风险，入市需谨慎！*
