指数 WebSocket 文档
iTick.org Indices WebSocket API 提供全球指数最新数据的流式访问。 您可以通过以操作形式发送指令来指定要使用的频道。当您订阅的频道中发生事件时,我们的 WebSockets 会发出事件以通知您。
我们的 WebSocket API 基于授权,授权可控制您可以连接到哪些 WebSocket 集群以及您可以访问哪些类型的数据。 您可以登录查看包含您的 API 密钥并根据您的授权进行个性化的示例。
第 1 步:连接
使用高级计划,您将能够使用单个连接到集群。如果另一个连接同时尝试连接到集群,则当前连接将被断开。 如果您需要同时连接到此集群的更多连接,您可以联系支持人员。
连接到集群:
wscat -c wss://api.itick.org/iws
连接后您将收到以下消息:
{
"code":1,
"msg": "Connected Successfully"
}
第 2 步:验证
您必须先进行身份验证,然后才能提出任何其他请求。
{
"ac":"auth",
"params":"dVEIODs9rmbxOtFJAL_SRvwLXjmddLKg"
}
验证成功后,您将收到以下消息:
{
"code":1,
"resAc":"auth",
"msg": "authenticated"
}
验证失败,会断开连接,流程终止
{
"code":0,
"resAc":"auth",
"msg": "auth failed"
}
第 3 步:订阅
验证身份后,即可请求流。您可以在同一请求中请求多个流。
{
"ac":"subscribe",
"params":"US100",
"types":"quote"
}
params:标的Code,支持订阅多个
types: 订阅的类型,depth盘口、quote报价、tick成交
订阅成功返回内容。
{
"code":1,
"resAc":"subscribe",
"msg": "subscribe Successfully"
}
订阅失败返回内容。如下:分别是超出套餐计划最大数量,订阅参数错误。
{
"code":0,
"resAc":"subscribe",
"msg": "exceeding the maximum subscription limit"
}
{
"code":0,
"resAc":"subscribe",
"msg": "cannot be resolved action"
}
第 4 步:响应内容
iTick.org WebSocket 客户端必须能够每秒处理许多传入消息。由于 WebSocket 协议的性质,如果客户端从服务器获取消息的速度很慢,iTick.org 的服务器必须缓冲消息,并以客户端可以接收的速度发送消息。如果客户端长时间以太慢的速度消费消息, iTick.org的服务器端缓冲区可能会变得太大。如果发生这种情况,iTick.org 将终止 WebSocket 连接。如果您经常遇到这种情况,请考虑订阅较少的符号或频道。
订阅成功后数据按照如下内容发送。
成交响应内容
{
"code": 1,
"data": {
"s": "US100",
"ld": 225.215,
"v": 16742235,
"t": 1731689407000,
"type": "tick"
}
}
报价响应内容
{
"code": 1,
"data": {
"s": "US100",
"ld": 225.215,
"o": 226.27,
"h": 226.92,
"l": 224.44,
"t": 1731689407000,
"v": 16742235,
"tu": 3774688301.452,
"ts": 0,
"type": "quote"
}
}
盘口响应内容
{
"code": 1,
"data": {
"s": "US100",
"a": [
{
"po": 1,
"p": 3034.01,
"v": 10.6023,
"o": 10.6023
},
{
"po": 2,
"p": 3034.03,
"v": 0.0017,
"o": 0.0017
},
{
"po": 3,
"p": 3034.18,
"v": 0.0017,
"o": 0.0017
},
{
"po": 4,
"p": 3034.26,
"v": 0.0018,
"o": 0.0018
},
{
"po": 5,
"p": 3034.27,
"v": 0.21,
"o": 0.21
}
],
"b": [
{
"po": 1,
"p": 3034,
"v": 20.9758,
"o": 20.9758
},
{
"po": 2,
"p": 3033.99,
"v": 1.8408,
"o": 1.8408
},
{
"po": 3,
"p": 3033.98,
"v": 0.003,
"o": 0.003
},
{
"po": 4,
"p": 3033.97,
"v": 0.0065,
"o": 0.0065
},
{
"po": 5,
"p": 3033.94,
"v": 0.003,
"o": 0.003
}
],
"type": "depth"
}
}
K线响应内容
{
"code": 0,
"msg": null,
"data": {
"s":"US100",
"t":1,
"k":
{
"tu": 157513,
"c": 3059.39,
"t": 1731660060000,
"v": 28,
"h": 3061.41,
"l": 3055.24,
"o": 3055.36
}
}
}
t Kline 周期: 周期 1分钟、2五分钟、3十分钟、4三十分钟、5一小时、6两小时、7四小时、8一天、9一周、10一月
第 5 步:保持心跳
客户端向服务器发送
{
"ac":"ping",
"params":"1731688569840"
}
服务端向客户端发送
{
"resAc":"pong",
"data": {"params":"1731688569840"}
}
ping、pong的时间戳需要保持一致