allstock-data
by @hacksing
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...
clawhub install allstock-dataπ About This Skill
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 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:
# 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
Examples:
# 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
Examples:
# 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:
# 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:
{"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
Example:
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
pip install adata
Proxy Setup (if needed)
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
import adataGet 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"