# Cross Market Indicators

> 跨市场股票技术指标服务。支持 A股/港股/美股 27种技术指标，包括 MA/EMA/RSI/MACD/KDJ/布林带/ADX/ATR/CCI/VWAP等。 当用户询问"RSI""MACD""布林带""技术指标""KDJ""OBV"等时触发。 ⚠️ 加密货币技术指标请使用 crypto-indicators skill。

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

---


# Cross Market Indicators — 跨市场技术指标

> 所有接口均为 V2 版本（`/api/v2/...`）。

## Curl Setup

```bash
BASE="http://43.167.234.49:3101"
AUTH=(-H "X-API-Key: 123456" -H "Content-Type: application/json")
```

---

## 代码格式规则

| 规则 | 值 |
|------|-----|
| `market` | **必填**：`cn`(A股), `hk`(港股), `us`(美股) |
| `symbol` | 按市场对应格式 |
| 日期格式 | `YYYY-MM-DD`（⚠️ 注意：与其他端点的 `YYYYMMDD` 不同） |

| 市场 | `market` | `symbol` 格式 | 示例 |
|------|----------|--------------|------|
| A股 | `cn` | 带后缀 | `600519.SH` |
| 港股 | `hk` | 带 .HK | `00700.HK` |
| 美股 | `us` | Ticker | `AAPL` |

---

## 支持的指标（27种）

| # | Indicator | Type | Key Parameters | Default |
|---|-----------|------|----------------|---------|
| 1 | SMA | Trend | `period` | 20 |
| 2 | EMA | Trend | `period` | 20 |
| 3 | RSI | Oscillator | `period` | 14 |
| 4 | MACD | Trend | `fast_period`, `slow_period`, `signal_period` | 12, 26, 9 |
| 5 | BOLL | Volatility | `period`, `nbdev` | 20, 2.0 |
| 6 | KDJ | Oscillator | `fastk_period`, `slowk_period`, `slowd_period` | 9, 3, 3 |
| 7 | ADX | Trend | `period` | 14 |
| 8 | ATR | Volatility | `period` | 14 |
| 9 | CCI | Oscillator | `period` | 14 |
| 10 | VWAP | Volume | `period` | 20 |
| 11 | OBV | Volume | 无 | — |
| 12 | NATR | Volatility | `period` | 14 |
| 13 | MFI | Volume | `period` | 14 |
| 14 | WILLR | Oscillator | `period` | 14 |
| 15 | STDDEV | Volatility | `period` | 20 |
| 16 | Aroon | Trend | `period` | 14 |
| 17 | TRIX | Trend | `period` | 9 |
| 18 | MOM | Momentum | `period` | 10 |
| 19 | ROC | Momentum | `period` | 12 |
| 20 | CMO | Momentum | `period` | 14 |
| 21 | AD | Volume | 无 | — |
| 22 | HT Trendline | Trend | 无 | — |
| 23 | PPO | Trend | `fast_period`, `slow_period` | 12, 26 |
| 24 | SAR | Trend | `acceleration`, `maximum` | 0.02, 0.2 |
| 25 | Stoch | Oscillator | `k_period`, `d_period`, `smooth_period` | 14, 3, 3 |
| 26 | ULTOSC | Oscillator | `period1`, `period2`, `period3` | 7, 14, 28 |
| 27 | ADOSC | Volume | `fast_period`, `slow_period` | 3, 10 |

---

## 端点详情

### POST /api/v2/indicators/batch — 批量指标（推荐）

一次请求计算多个指标，**禁止逐个调用单指标端点**。

| Parameter | Type | Required | Default | Description |
|-----------|------|----------|---------|-------------|
| `market` | string | **Yes** | — | `cn`, `hk`, `us` |
| `symbol` | string | **Yes** | — | 股票代码 |
| `interval` | string | No | `1d` | `1m`, `5m`, `15m`, `1h`, `4h`, `1d`, `1w` |
| `limit` | int | No | `100` | 记录数上限 |
| `start` | string | No | — | 起始日期 **YYYY-MM-DD** |
| `end` | string | No | — | 结束日期 **YYYY-MM-DD** |
| `indicators` | array | **Yes** | — | 指标列表 |

**indicators 数组中每项**：

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `type` | string | **Yes** | 指标类型（小写） |
| `params` | array | No | 指标参数 |

### GET /api/v2/indicators/{type} — 单指标

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `market` | string | **Yes** | `cn`, `hk`, `us` |
| `symbol` | string | **Yes** | 股票代码 |
| `interval` | string | No | 默认 `1d` |
| `period` | int | No | 周期参数 |
| `limit` | int | No | 默认 100 |

### GET /api/v2/indicators/info — 指标信息查询

无参数。

---

## Batch Params 映射

| Indicator | params | 示例 |
|-----------|--------|------|
| sma, ema, rsi, atr, cci, vwap, natr, mfi, willr, stddev, aroon, trix | `[period]` | `[14]` |
| mom, roc, cmo | `[period]` | `[10]` |
| macd | `[fast, slow, signal]` | `[12, 26, 9]` |
| boll | `[period, nbdev]` | `[20, 2.0]` |
| kdj | `[fastk, slowk, slowd]` | `[9, 3, 3]` |
| ppo, adosc | `[fast, slow]` | `[12, 26]` |
| sar | `[acceleration, maximum]` | `[0.02, 0.2]` |
| stoch | `[k, d, smooth]` | `[14, 3, 3]` |
| ultosc | `[period1, period2, period3]` | `[7, 14, 28]` |
| obv, ad, ht_trendline | 无 params | 省略 |

---

## 调用示例

### 批量接口（推荐）

```bash
# A股：RSI + MACD + BOLL + KDJ
curl -sS "${AUTH[@]}" -X POST "$BASE/api/v2/indicators/batch" -d '{
  "market": "cn",
  "symbol": "000001.SZ",
  "interval": "1d",
  "limit": 100,
  "indicators": [
    {"type": "rsi", "params": [14]},
    {"type": "macd", "params": [12, 26, 9]},
    {"type": "boll", "params": [20, 2.0]},
    {"type": "kdj", "params": [9, 3, 3]}
  ]
}'

# 港股：MACD + SMA
curl -sS "${AUTH[@]}" -X POST "$BASE/api/v2/indicators/batch" -d '{
  "market": "hk",
  "symbol": "00700.HK",
  "interval": "1d",
  "limit": 100,
  "indicators": [
    {"type": "macd", "params": [12, 26, 9]},
    {"type": "sma", "params": [20]}
  ]
}'

# 美股：BOLL
curl -sS "${AUTH[@]}" -X POST "$BASE/api/v2/indicators/batch" -d '{
  "market": "us",
  "symbol": "AAPL",
  "interval": "1d",
  "limit": 100,
  "indicators": [
    {"type": "boll", "params": [20, 2.0]}
  ]
}'
```

### 单指标接口

```bash
# A股 RSI
curl -sS "${AUTH[@]}" "$BASE/api/v2/indicators/rsi?market=cn&symbol=000001.SZ&interval=1d&period=14&limit=100"

# 港股 MACD
curl -sS "${AUTH[@]}" "$BASE/api/v2/indicators/macd?market=hk&symbol=00700.HK&interval=1d&fast_period=12&slow_period=26&signal_period=9&limit=100"

# 美股 BOLL
curl -sS "${AUTH[@]}" "$BASE/api/v2/indicators/boll?market=us&symbol=AAPL&interval=1d&period=20&nbdev=2.0&limit=100"

# 无参数指标：OBV
curl -sS "${AUTH[@]}" "$BASE/api/v2/indicators/obv?market=cn&symbol=000001.SZ&interval=1d&limit=100"

# 指标信息
curl -sS "${AUTH[@]}" "$BASE/api/v2/indicators/info"
```

---

## 错误排查

| 错误 | 原因 | 修复 |
|------|------|------|
| 400 (缺 market) | `market` 必填 | 加上 `market`: `cn`/`hk`/`us` |
| 400 (日期格式) | 用了 `YYYYMMDD` | 指标端点用 `YYYY-MM-DD` |
| BOLL 结果错误 | V1 习惯 `nbdev_up`/`nbdev_dn` | V2 用单个 `nbdev`（默认 2.0） |
| 404 | 指标类型拼写错误 | 小写：`rsi`, `macd`, `boll` |

