在全球金融市場中,獲取準確的股票歷史行情數據至關重要。無論是港股、美股、A 股、日股、德國還是新加坡等市場的投資者和開發者,都需要可靠的股票分時 K 線數據來支持分析和決策。本文將介紹一個高效的股票 API,支持批量歷史 K 線數據 API 查詢,幫助您輕鬆獲取從分鐘級到月線的 OHLCV 數據,包括開盤價、最高價、最低價、收盤價和成交量等關鍵指標。
API 概述
這個 API 來自 itick.org,提供全球股票市場的歷史 K 線數據,覆蓋數千只股票。支持的市場包括 HK(港股)、US(美股)、SZ/SH(A 股)、JP(日股)、DE(德國)、SG(新加坡)等。數據包括標準 OHLC 字段(開盤、最高、最低、收盤),並支持多種時間週期,如 1 分鐘、5 分鐘、日 K、周 K 和月 K 等。通過簡單的 GET 請求,您可以獲取單個股票或批量股票的歷史行情數據,確保數據準確性和實時性。
該 API 特別適合用於 TradingView 圖表集成、行情軟件開發或量化分析。註冊既可獲取免費 token,查詢限額合理。
單個股票歷史 K 線查詢
接口地址
GET /stock/kline?region={region}&code={code}&kType={kType}&limit={limit}&et={et}
請求參數
- region: 市場代碼(如 HK、US、SZ 等),必填。
- code: 股票代碼(如 700),必填。
- kType: K 線類型(1: 分鐘 K,2: 5 分鐘 K,...,10: 月 K),必填。
- limit: K 線數量,必填。
- et: 截止時間戳(可選,默認當前時間)。
響應參數
- t: 時間戳
- o: 開盤價
- h: 最高價
- l: 最低價
- c: 收盤價
- v: 成交數量
- tu: 成交額
Python 示例代碼
以下是使用 Python 請求單個股票 K 線數據的示例:
import requests
url = "https://api.itick.org/stock/kline?region=HK&code=700&kType=2&limit=10"
headers = {
"accept": "application/json",
"token": "your_token"
}
response = requests.get(url, headers=headers)
print(response.text)
Java 示例代碼
以下是使用 Java(OkHttp 庫)請求單個股票 K 線數據的示例:
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.itick.org/stock/kline?region=HK&code=700&kType=2&limit=10")
.get()
.addHeader("accept", "application/json")
.addHeader("token", "your_token")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
Go 示例代碼
以下是使用 Go 請求單個股票 K 線數據的示例:
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.itick.org/stock/kline?region=HK&code=700&kType=2&limit=10"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("accept", "application/json")
req.Header.Add("token", "your_token")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
示例響應
{
"code": 0,
"msg": null,
"data": [
{
"tu": 56119888070.5,
"c": 534.5,
"t": 1741239000000,
"v": 104799385,
"h": 536,
"l": 534.5,
"o": 535
}
]
}
批量歷史 K 線查詢
對於需要同時獲取多隻股票數據的場景,批量接口更高效。
接口地址
GET /stock/klines?region={region}&codes={codes}&kType={kType}&limit={limit}&et={et}
請求參數
- region: 市場代碼,必填。
- codes: 股票代碼,多個用逗號隔開(如 700,9988),必填。
- kType: K 線類型,必填。
- limit: K 線數量,必填。
- et: 截止時間戳(可選)。
響應參數
響應為一個對象,鍵為股票代碼,值為 K 線數據數組(同單個查詢)。
Python 示例代碼
以下是批量查詢的 Python 示例:
import requests
url = "https://api.itick.org/stock/klines?region=HK&codes=700,9988&kType=2&limit=5"
headers = {
"accept": "application/json",
"token": "your_token"
}
response = requests.get(url, headers=headers)
print(response.text)
Java 示例代碼
以下是使用 Java(OkHttp 庫)批量查詢的示例:
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("https://api.itick.org/stock/klines?region=HK&codes=700,9988&kType=2&limit=5")
.get()
.addHeader("accept", "application/json")
.addHeader("token", "your_token")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
Go 示例代碼
以下是使用 Go 批量查詢的示例:
package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.itick.org/stock/klines?region=HK&codes=700,9988&kType=2&limit=5"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("accept", "application/json")
req.Header.Add("token", "your_token")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
示例響應
{
"code": 0,
"msg": null,
"data": {
"700": [
{
"tu": 56119888070.5,
"c": 534.5,
"t": 1741239000000,
"v": 104799385,
"h": 536,
"l": 534.5,
"o": 535
}
],
"9988": [
{
"tu": 75404622753.1,
"c": 140.1,
"t": 1741239000000,
"v": 538602171,
"h": 140.3,
"l": 139.8,
"o": 139.9
}
]
}
}
使用注意事項
- 替換 headers 中的"your_token"為您註冊的實際 token。
- API 支持高併發,但免費版有查詢限額,建議根據需求升級。
- 數據時間戳為 Unix 時間戳,便於處理。
- Java 示例需引入 OkHttp 庫,Go 示例使用標準庫。
結語
通過本文的介紹,我們瞭解到這個 API 提供的免費股票歷史數據 API 是一個功能強大且易於使用的工具,能夠滿足不同市場、不同週期的 K 線數據需求。無論您是個人投資者、金融分析師還是量化交易開發者,這個 API 都能為您提供準確、及時的全球股票行情數據支持。
對於希望構建自己的金融分析系統、開發交易策略或者進行市場研究的用户來説,這個 API 無疑是一個理想的選擇。免費額度足以支撐中小規模的項目開發和測試,而付費方案則能為專業用户提供更高頻、更穩定的數據服務。
温馨提示:本文僅供參考,不構成任何投資建議。市場有風險,投資需謹慎
參考文檔:https://docs.itick.org/
GitHub:https://github.com/itick-org/