Stock market data query skill for China A-shares, Hong Kong, and US markets. Uses Tencent Finance HTTP API by default (lightweight, no install needed), with optional adata SDK for more comprehensive data. Supports real-time quotes, K-line history, order book analysis, and more.
Scanned 9/7/2026
Install to Claude Code
npx -y skills add modbender/skill-library-mcp --skill allstock-data --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Allstock Data?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/modbender-allstock-data)More formats (shields.io, HTML) on the badges page.
---
name: allstock-data
description: Stock market data query skill for China A-shares, Hong Kong, and US markets. Uses Tencent Finance HTTP API by default (lightweight, no install needed), with optional adata SDK for more comprehensive data. Supports real-time quotes, K-line history, order book analysis, and more.
---
# Stock Data Query
Two data sources are supported. **Tencent Finance HTTP API is used by default:**
1. **Tencent Finance HTTP API (Default)** — Lightweight, no installation, no proxy required
2. **adata SDK (Optional)** — More comprehensive data, requires installation and possibly a proxy
---
## 1. Tencent Finance HTTP API (Default)
### 1.1 China A-Share Real-Time Quotes
**Endpoint:**
```
http://qt.gtimg.cn/q=<stock_code>
```
**Stock Code Format:**
| Market | Code Prefix | Example |
|--------|-------------|---------|
| Shanghai Main Board | sh600xxx | sh600519 (Moutai) |
| STAR Market | sh688xxx | sh688111 |
| Shenzhen Main Board | sz000xxx | sz000001 (Ping An Bank) |
| ChiNext (GEM) | sz300xxx | sz300033 |
| ETF | sz159xxx | sz159919 |
**Index Codes:**
| Index | Code |
|-------|------|
| SSE Composite (Shanghai) | sh000001 |
| SZSE Component (Shenzhen) | sz399001 |
| ChiNext Index | sz399006 |
| STAR 50 | sz399987 |
| CSI 300 | sh000300 |
**Examples:**
```bash
# Single stock
curl -s "http://qt.gtimg.cn/q=sh600519"
# Multiple stocks
curl -s "http://qt.gtimg.cn/q=sh600519,sh000001,sz399001"
```
**Response Fields:**
```
v_sh600519="1~贵州茅台~600519~1460.00~1466.21~1466.99~14146~6374~7772~..."
~ Name ~ Code ~ Open ~ High ~ Low ~ Volume
```
| Index | Field |
|-------|-------|
| 0 | Market code |
| 1 | Stock name |
| 2 | Stock code |
| 3 | Current price |
| 4 | Open price |
| 5 | Low price |
| 6 | High price |
| 30 | Price change |
| 31 | Change % |
---
### 1.2 Hong Kong Stock Real-Time Quotes
**Endpoint:**
```
http://qt.gtimg.cn/q=hk<stock_code>
```
**Examples:**
```bash
# Tencent Holdings
curl -s "http://qt.gtimg.cn/q=hk00700"
# Alibaba
curl -s "http://qt.gtimg.cn/q=hk09988"
```
---
### 1.3 US Stock Real-Time Quotes
**Endpoint:**
```
http://qt.gtimg.cn/q=us<ticker>
```
**Examples:**
```bash
# Apple
curl -s "http://qt.gtimg.cn/q=usAAPL"
# Tesla
curl -s "http://qt.gtimg.cn/q=usTSLA"
# NVIDIA
curl -s "http://qt.gtimg.cn/q=usNVDA"
```
---
### 1.4 K-Line Historical Data
**Endpoint:**
```
https://web.ifzq.gtimg.cn/appstock/app/fqkline/get
```
**Parameters:**
| Parameter | Description |
|-----------|-------------|
| `_var` | Variable name, e.g. `kline_dayqfq` |
| `param` | stock_code, kline_type, start_date, end_date, count, adjust_type |
**K-Line Types:** `day` / `week` / `month`
**Adjustment Types:** `qfqa` (forward-adjusted) / `qfq` (backward-adjusted) / empty (unadjusted)
**Examples:**
```bash
# Moutai daily K-line (last 10 days, forward-adjusted)
curl -s "https://web.ifzq.gtimg.cn/appstock/app/fqkline/get?_var=kline_dayqfq¶m=sh600519,day,,,10,qfqa"
# Ping An Bank weekly K-line (last 5 weeks)
curl -s "https://web.ifzq.gtimg.cn/appstock/app/fqkline/get?_var=kline_weekqfq¶m=sz000001,week,,,5,qfqa"
# ChiNext Index monthly K-line (last 3 months)
curl -s "https://web.ifzq.gtimg.cn/appstock/app/fqkline/get?_var=kline_monthqfq¶m=sz399006,month,,,3,qfqa"
```
**Response Format:**
```json
{"day": [["2026-02-27", "1466.99", "1461.19", "1476.21", "1456.01", "13534"], ...]}
Date Open Close High Low Volume
```
---
### 1.5 Order Book Analysis
**Endpoint:**
```
http://qt.gtimg.cn/q=s_pk<stock_code>
```
**Example:**
```bash
curl -s "http://qt.gtimg.cn/q=s_pksh600519"
```
**Returns:** Buy/sell volume ratios (internal vs external trades)
---
## 2. adata SDK (Optional)
adata is an open-source A-share quantitative data library providing more comprehensive data. Requires installation and possibly a proxy.
### Installation
```bash
pip install adata
```
### Proxy Setup (if needed)
```python
import adata
adata.proxy(is_proxy=True, ip='your-proxy-ip:port')
```
### Feature List
| Feature | Description |
|---------|-------------|
| Stock Basic Info | All A-share codes, share capital, SW industry classification |
| K-Line Data | Daily/Weekly/Monthly, forward/backward adjustment |
| Real-Time Quotes | Batch real-time pricing |
| Level-2 Order Book | Bid/ask depth data |
| Capital Flow | Individual stock capital flow analysis |
| Concept Sectors | Thematic sector data |
| Index Data | Major index quotes |
| ETF | ETF quotes |
### Usage Examples
```python
import adata
# Get all A-share stock codes
df = adata.stock.info.all_code()
# Get K-line data
df = adata.stock.market.get_market(
stock_code='000001',
k_type=1, # 1=daily, 2=weekly, 3=monthly
start_date='2024-01-01',
adjust_type=1 # 0=unadjusted, 1=forward, 2=backward
)
# Real-time quotes
df = adata.stock.market.list_market_current(
code_list=['000001', '600519']
)
```
---
## 3. Use Case Guide
| Scenario | Recommended Source |
|----------|--------------------|
| Quick single stock price check | Tencent Finance API |
| K-line historical data | Tencent Finance API |
| Batch quote queries | Tencent Finance API |
| Capital flow data | adata SDK |
| Full financial statements | adata SDK |
| Concept/sector analysis | adata SDK |
| Level-2 order book | Tencent Finance API or adata SDK |
---
## 4. Important Notes
1. **Encoding**: Tencent Finance API returns GBK-encoded text — decode accordingly
2. **Change %**: Use the API's built-in field (index 31) — do not calculate manually
3. **Data Delay**: Real-time data may have up to 15-minute delay
4. **Request Rate**: Avoid high-frequency requests — use batch queries when possible
5. **Error Handling**: Invalid stock codes return `v_pv_none_match="1"`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!