调用价格
5 匠币/次
快速接入
保持统一返回结构,直接通过服务端发起请求即可接入。
https://openapi.toolkk.com/v1/finance-a-shares-klinecURL 示例
curl --request POST \
--url 'https://openapi.toolkk.com/v1/finance-a-shares-kline' \
--header 'Content-Type: application/json' \
--header 'X-API-Key: YOUR_API_KEY' \
--data '{\n "symbol": "品种代码,如:sh688193",\n "type": "k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400...",\n "limit": "返回条数,默认10",\n "ma": "\t返回ma均线,可选值为:5,10,15,20,25,30,可不传"\n}'Python 示例
import os
import requests
url = "https://openapi.toolkk.com/v1/finance-a-shares-kline"
payload = {
"symbol": "品种代码,如:sh688193",
"type": "k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400...",
"limit": "返回条数,默认10",
"ma": "\t返回ma均线,可选值为:5,10,15,20,25,30,可不传"
}
headers = {
"Content-Type": "application/json",
"X-API-Key": os.getenv("TOOLKK_API_KEY", "YOUR_API_KEY"),
}
response = requests.request("POST", url, headers=headers, json=payload, timeout=30)
response.raise_for_status()
print(response.json())Go 示例
package main
import (
"bytes"
"fmt"
"io"
"net/http"
)
func main() {
endpoint := "https://openapi.toolkk.com/v1/finance-a-shares-kline"
payload := []byte("{\n \"symbol\": \"品种代码,如:sh688193\",\n \"type\": \"k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400...\",\n \"limit\": \"返回条数,默认10\",\n \"ma\": \"\\t返回ma均线,可选值为:5,10,15,20,25,30,可不传\"\n}")
req, err := http.NewRequest("POST", endpoint, bytes.NewBuffer(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
}Java 示例
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class ToolkkExample {
public static void main(String[] args) throws Exception {
String payload = "{\n \"symbol\": \"品种代码,如:sh688193\",\n \"type\": \"k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400...\",\n \"limit\": \"返回条数,默认10\",\n \"ma\": \"\\t返回ma均线,可选值为:5,10,15,20,25,30,可不传\"\n}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://openapi.toolkk.com/v1/finance-a-shares-kline"))
.method("POST", HttpRequest.BodyPublishers.ofString(payload))
.header("Content-Type", "application/json")
.header("X-API-Key", "YOUR_API_KEY")
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}
}PHP 示例
<?php
$endpoint = 'https://openapi.toolkk.com/v1/finance-a-shares-kline';
$payload = "{\n \"symbol\": \"品种代码,如:sh688193\",\n \"type\": \"k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400...\",\n \"limit\": \"返回条数,默认10\",\n \"ma\": \"\\t返回ma均线,可选值为:5,10,15,20,25,30,可不传\"\n}";
$ch = curl_init($endpoint);
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'X-API-Key: YOUR_API_KEY',
],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($ch);
if ($response === false) {
throw new RuntimeException(curl_error($ch));
}
curl_close($ch);
echo $response;响应示例
{
"msg": "成功",
"code": 200,
"taskNo": "202960247220113090298671",
"data": {
"list": [
{
"amount": "171325.1414",
"ma_volume5": 6110,
"ma_price5": 27.38,
"volume": "6185",
"high": "27.880",
"low": "27.600",
"day": "2024-04-22 10:05:00",
"close": "27.790",
"open": "27.600"
}
]
}
}示例用于理解返回结构,实际结果以接口返回为准。
- 鉴权方式
- 请求头传入 X-API-Key
- 默认限流
- 60 次/分钟
- 超时时间
- 5000 ms
服务端调用时,将 API Key 放在 X-API-Key 请求头中。
建议按 response code 与业务字段双重判断调用结果。
高频调用场景请结合速率限制与重试策略使用。
请求字段
从服务端发起请求,并在 X-API-Key 请求头中传入密钥。
请求字段
字段来自接口结构定义。未提供的说明和示例会标为未标注。
| 字段路径 | 类型 | 必填 | 说明 | 示例值 |
|---|---|---|---|---|
| symbol | string | 是 | 品种代码,如:sh688193 | 未标注 |
| type | string | 是 | k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400:年K | 未标注 |
| limit | string | 否 | 返回条数,默认10 | 未标注 |
| ma | string | 否 | 返回ma均线,可选值为:5,10,15,20,25,30,可不传 | 未标注 |
请求示例
{
"symbol": "品种代码,如:sh688193",
"type": "k线类型, 1:1分钟,5:五分钟;15:15分钟;30:30分钟,60:60分钟,120:120分钟,240:日K,1200:周K,7200:月K,86400...",
"limit": "返回条数,默认10",
"ma": "\t返回ma均线,可选值为:5,10,15,20,25,30,可不传"
}- 鉴权方式
- 请求头传入 X-API-Key
- 默认限流
- 60 次/分钟
- 超时时间
- 5000 ms
响应字段
示例用于理解返回结构,实际结果以接口返回为准。
响应字段
字段来自接口结构定义。未提供的说明和示例会标为未标注。
| 字段路径 | 类型 | 必填 | 说明 | 示例值 |
|---|---|---|---|---|
| msg | string | 否 | 接口返回码对应的描述信息 | 成功 |
| code | number | 否 | 接口返回码【注意:不等于HTTP响应状态码】 | 200 |
| taskNo | string | 否 | 任务订单号【可反馈服务商复核对应订单】 | 202960247220113090298671 |
| data | object | 否 | 未标注 | 未标注 |
| data.list | array | 否 | 未标注 | [{"amount":"171325.1414","ma_volume5":6110,"ma_price5":27.38,"volume":"6185","high":"27.880","low":"27.600","day":"2024-04-22 10:05:00","close":"27.790","open":"27.600"}] |
| data.list[] | object | 未标注 | 未标注 | 未标注 |
响应示例
{
"msg": "成功",
"code": 200,
"taskNo": "202960247220113090298671",
"data": {
"list": [
{
"amount": "171325.1414",
"ma_volume5": 6110,
"ma_price5": 27.38,
"volume": "6185",
"high": "27.880",
"low": "27.600",
"day": "2024-04-22 10:05:00",
"close": "27.790",
"open": "27.600"
}
]
}
}接口简介
接口能力、应用场景、使用限制与常见问题。
接口能力
按单个A股品种代码和周期查询K线记录,公开结果含数据时间、开盘、最高、最低、收盘和成交数。可选分钟、日、周、月、年周期,返回条数默认10,并可请求公开支持窗口的均线。示例还给出五条均价和均成交量。接口用于取得已有序列,没有日期区间、复权选择或多代码数组参数,也不提供指标预测、回测结论或交易执行。
应用场景
行情页面可将同一代码的开高低收绘成蜡烛图,切换周期观察不同粒度;研究任务可保存原始记录,核对时间和价格口径后计算自己的统计;数据巡检可检查重复、缺失或异常数值,再把问题交给人工处理。均线可与同一周期的记录对齐展示,筛选和提醒由调用方实现,不能把价格走势或均线关系直接当作收益保证。
从输入到结果
核实代码并选择周期,例如240表示日K、1200表示周K,与部分其他接口的240分钟含义不同。按需设置条数和均线窗口,检查业务状态后遍历 data.list。用 day 核对时间,价格与成交字段为字符串,运算前检查空值并按十进制解析,保留原值。公开的 ma_price5 与 ma_volume5 分别表示五条均价与均成交量;五条指当前周期的五根K线,不一律等于五天。
范围与限制
当前未说明完整证券覆盖、复权口径、时间时区、排序、历史深度、刷新频率或最后一根是否完结。成交数与amount的单位未展开,不直接标成股、手或人民币;缺失均线也不能补成零。其他均线窗口的具体结果字段应按实际公开定义核对,不从五条字段名自行推导。样例代码不能证明所有市场前缀都支持,空记录也不能直接判断为停牌或没有交易。
常见问题
240表示240分钟吗?
本接口240表示日K;分钟周期为1、5、15、30、60、120。周、月、年使用各自编码,输入以本接口定义为准。
五条均线就是五日均线吗?
取决于所选K线周期。五条均价和均成交量对应五根该周期记录,只有日K语境才应按日周期理解。
均线窗口可以一次传多个吗?
公开说明给出了可选窗口,没有明确多个值的提交格式。不要把逗号分隔的选项列表直接当作批量参数约定。