快速开始¶
天勤行情软件提供一个基于 websocket/json 的扩展接口。你可以使用任何一种你熟悉的编程语言来开发扩展程序。绝大多数编程语言都提供了连接到websocket接口的系统库或方法。
在你正式开始开发前,可以先使用一些现成的websocket client来熟悉和测试接口。
为了讲解方便,我们下面的教程示例将基于 Chrome 浏览器中的 Simple Websocket Client 来进行。(并不要求必须使用此工具,任何标准websocket client都是可用的)
Prepare¶
- 首先请确保你的网络可以正常访问INTERNET(不是大中华局域网)。下面提到的很多资源都在国外,在不翻墙的情况下,有可能无法访问
- 安装最新版本的 Google Chrome 浏览器
- 在Chrome Extension中安装 Simple Websocket Client. https://chrome.google.com/webstore/detail/simple-websocket-client/pfdhoblngboilpfeibdedpjgfnlcodoo?hl=zh-CN
- 安装完毕后,在地址栏右侧将出现一个 "WS" 图标,点击后打开 Simple Websocket Client 的页面,如下:

连接到天勤扩展接口¶
- 运行天勤软件(选择实时行情或历史回盘均可)
- 在 Simple Websocket Client 中的 Server Location 中输入 ws://127.0.0.1:7777, 点OPEN按钮
- 可以看到status 变为 OPENED,表示连接成功. 同时在 Message Log 中应该可以看到一些信息,这是天勤主动推送过来的行情数据包

行情数据订阅与推送¶
行情数据订阅与推送的基本规则是:
- 扩展进程一旦连接上websocket端口,主进程会立即开始推送行情数据(rtn_data)。推送的范围为主进程中已经订阅过的数据。例如,主进程中当前打开的报价表上正在显示 cu1801和IF1801的行情,则扩展进程接入后会持续收到 cu1801和 IF1801的行情
- 当主进程中的行情信息变化时,主进程会主动发送 rtn_data 给扩展进程。这里所指的行情信息,包括实时报价,K线序列及tick序列。需要注意的是,每个 rtn_data 包只包含最新数据与上一次发送时数据截面的差异部分。
- 扩展进程可以发送 subscribe_quote 来请求订阅主进程中并未显示的行情数据
- 扩展进程可以发送 set_chart 来请求订阅主进程中并未显示的图表数据
示例: 把下面这段复制粘贴到 Request 输入框中,点 [SEND]
{
"aid": "subscribe_quote",
"ins_list": "SHFE.cu1801,DCE.a1801"
}
很快会在 message log 中看到推送过来的行情包